STM32F4中USB与PC双向通信】的更多相关文章

STM32F4系列处理器内部集成了USB-OTG控制器,在不要外部USB IC下就可以实现USB通信,最近两天看了下如何利用STM32的USB实现通信,记录下关键步骤: 1. 从http://www.stmcu.org/document/list/index/category-524下载所需要的USB_OTG主机和设备库: 2. 新建STM32工程,并把STM32_USB-Host-Device_Lib下的Libraries中的3个USB库放到工程文件中: 3.在Keil中建立USB相关文件夹,…
在一级bootloader执行进入USB启动方式之后,设备进行枚举.枚举过程中会通过PC端发送命令对连接的USB设备进行枚举.当枚举成功之后,在PC端可以看到设备的盘符. 当设备能够被PC正确识别之后.接下来就能够通过烧写工具完毕设备的扫描假设成功找到设备,则能够通过USB数据传输到SRAM中,这时候的数据主要包含2k infor文件.一级bootloader在成功的解析2kinfor 之后.PC端会将DFU文件传输到初始化好的DRAM中.而且PC指针跳转到DFU地址处运行,运行过程中会跳转到U…
文本旨在简单介绍一下Linux中USB协议栈的代码框架: 下图是USB协议栈相关数据结构的关系图: 下面结合上图看一下系统初始化的流程: 1.USB子系统初始化:\drivers\usb\core\usb.c subsys_initcall(usb_init); static int __init usb_init(void)中调用了很多初始化函数,目前关注下面两个: retval = bus_register(&usb_bus_type);// 注册usb 总线 retval = usb_hu…
同一个局域网中用Windows自己的远程桌面远程局域网中的其他PC... ===================== 建立Windows远程访问的前提: 1.访问PC和被访问的PC在同一个局域网中 2.Windows之间的远程-必须要给PC系统的账户设置一个密码 ==================== 开始测试远程访问: 打开远程桌面,输入要远程访问的PC的IP地址: ================== 开启远程桌面访问的权限,右键计算机-----属性: 点开:远程设置---然后勾选:允许远…
Win7装好后,原来在XP中工作正常的USB小音箱却不工作了,重装了声卡驱动还是一样,后来通过下面尝试最终好用了. 1.右键右下角喇叭button. 2.点击"播放设备". 3.设定USB Audio Device为默认设备. 4.双击USB Audio Device. 5.在弹出的扬声器属性页面点击"增强功能". 6.选择"禁用全部增强功能". 7.点击"确认".…
项目中有用到右键菜单,故用了@contextmenu,由于本人是用的PC电脑,所以一切正常, 但是有同事用mac测试了一下,问题随之而来,MAC上右键按下就触发了, PC上面是鼠标抬起才会触发,所以这样就导致了问题的出现,因为我在方法里面再给document上注册了一个鼠标抬起隐藏右键菜单. 所以在PC上一切正常,但是MAC上面右键菜单只要抬起鼠标就隐藏了. 问题找到了 那么怎么解决呢? 目前也没有很好的思路 就先判断是否是MAC电脑,如果是,就把mouseup事件换成click,click的体…
来源:Linux中国  原文:https://linux.cn/article-2448-1.html 通用串行总线(USB)被设计成为连接计算机外设的标准,如键盘.鼠标.打印机.数码相机.便携式媒体播放器.磁盘和网络适配器等等 - 来源:Wikipedia 它已经成为了一个工业标准,现在很难看到一个没有USB口的计算机了.USB闪存的使用使得它更加流行.在Linux上,我们可以使用lsusb来列出USB设备和它的属性. 什么是lsusb 在它的手册上,lsusb定义成: 显示系统中以及连接到系…
1.打开手机USB调试功能 显示“开发者选项”(开发者选项默认隐藏,一般需要进入到“设置”-->“关于手机”连续点击七次,可将“开发者选项显示出来”) 将“开发者选项”设置为“开启”状态 打开USB调试 2.将设备通过USB与电脑连接,使用"lsusb"命令查看该设备的vendor id和product id 3.切换到root用户并创建如下文件: /etc/udev/rules.d/51-android.rules 并添加如下内容: SUBSYSTEM=="usb&q…
http://files.cnblogs.com/guobaPlayer/testUSB2Serial.apk USB转串口demo程序, 无需驱动,只要手机USB是OTG类型,插上我们的模块即可使用.当前波特率是9600bps 更多USB转GPIO,按键,PWM,红外,SPI,IIC,ADC,欢迎咨询,洽谈. 杭州蓝松科技,专注于android相关软硬件项目的方案开发工作,欢迎联系:qq1852600324" 公司网站:www.lansongtech.com…
// usb消息定义 public const int WM_DEVICE_CHANGE = 0x219; public const int DBT_DEVICEARRIVAL = 0x8000; public const int DBT_DEVICE_REMOVE_COMPLETE = 0x8004; public const UInt32 DBT_DEVTYP_PORT = 0x00000003; [StructLayout(LayoutKind.Sequential)] struct DE…
组装机主板 品牌笔记本 品牌台式机 主板品牌 启动按键 笔记本品牌 启动按键 台式机品牌 启动按键 华硕主板 F8 联想笔记本 F12 联想台式机 F12 技嘉主板 F12 宏基笔记本 F12 惠普台式机 F12 微星主板 F11 华硕笔记本 ESC 宏基台式机 F12 映泰主板 F9 惠普笔记本 F9 戴尔台式机 ESC 梅捷主板 ESC或F12 联想Thinkpad F12 神舟台式机 F12 七彩虹主板 ESC或F11 戴尔笔记本 F12 华硕台式机 F8 华擎主板 F11 神舟笔记本 F…
https://www.youtube.com/watch?v=L9DTW1ulsT0 https://www.youtube.com/watch?v=Dp3RMb0e1eA…
前台pc标签的使用:{pc:content 参数名="参数值" 参数名="参数值" 参数名="参数值"} 如: {pc:content action="lists" catid="9" cache="3600" num="20" page="$page"}{/pc} 执行流程如下:     ①模块名:content     ②模块类文件:modul…
i春秋作家:v4ever 近日,在研究一些开源native层hook方案的实现方式,并据此对ARM汇编层中容易出问题的一些地方做了整理,以便后来人能有从中有所收获并应用于现实问题中.当然,文中许多介绍参考了许多零散的文章,本文重点工作在于对相关概念的整理收集,并按相对合理顺序引出后文中对hook技术中的一些难点的解读. Android平台大多采用了ARM架构的CPU,而ARM属RISC,与X86架构的处理器有不同的特征,本文讲介绍ARM中不容易理解的PC寄存器各种问题,包括ARM流水线.PC寄存…
1 前言 本文将基于STM32F4 Discovery板,从零开始设计并实现一个USB Audio的例子. 2 设计构思 所谓的USB AUDIO就是制作一个盒子,这个盒子可以通过USB连接到PC,PC端将其识别为Audio设备,然后在PC端播放音乐的时候,声音可以通过盒子播放出来. 2.1 从原理框图开始 图1 如上图所示,我们大概构思一下,为了实现USB AUDIO功能,我们使用一个MCU的USB外设连接PC端,整个流程是这样: PC端播放音乐时,代表音乐的数据流从PC端通过USB传输到MC…
USB的协议其实是很复杂的,如果要深入学习估计要一两年才能熟悉透.本文主要是讲如何使用官方已经写好的库进行二次开发,以达到我们自己使用的目的.我们知道USB可以用来接U盘,声卡,读卡器,鼠标键盘等等,这里主要是讲USB接口用来当虚拟串口使用,这个VCP(虚拟串口)是通过USB的CDC(通信设备类)类来实现的,本文是基于CPU是STM32F4的USB来讲解的: 1.安装和使用STM32 CubeMx软件: 该软件是STM官方提供的图形化配置底层驱动的软件,可生成工程与代码,可去官方下载安装: 1)…
前言: USB设备使用方便,但也可能被用来携带恶意软件.病毒,感染计算机系统.通过禁用自动播放功能.杀毒软件查杀.不定期的对设备进行格式化等操作可以确保它是干净的.但它存在的安全问题要比我们想象的更深,问题不仅在于它携带了什么,还在于通过它的工作方式就能产生安全隐患. USB隐藏的危险: 安全研究员Karsten Nohl 和Jakob Lell 发现了从根本上颠覆USB安全性的方法.他们创建的恶意软件,暂且称为BadUSB,可以被安装到USB设备中完全控制PC,无形中修改内存中的文件,甚至重定…
什么是USB OHCI规范? OHCI(Open HCI)是目前使用比较广泛的三种USB主机控制器规范之一.USB体系结构是由四个主要部分组成:客户软件/USB驱动,主机控制器驱动(HCD),主机控制器(HC)和USB驱动.前两者由软件实现,后两者由硬件实现.而OHCI就是规范了主机控制器驱动和主机控制器之间的接口,以及它们的基本操作.在主机控制器驱动和主机控制器之间,有两个通信通道,第一个是应用位于HC的一套可操作寄存器,它们包括控制寄存器.状态寄存器和列表指针寄存器:另一个通道是应用称为主机…
[背景] 很久以前使用ATMEL的处理器开发了一款设备,通过处理器本身的功能,借助USB在PC端虚拟一个串口出来,实现和上位机软件的通信,和基本的参数设置和数据读取功能. 这个功能就是ATMEL官网上所说的USB CDC功能. 以前客户只在xp上用这套设备,现在要求能在win7 32bits上使用这套设备. 其他的都没有什么问题,主要是这个usb cdc的驱动,在win7的系统上无法安装(话说win10真的是好啊,能自动识别和安装这个硬件.) [解决方法] 经过多方的查找和测试,发现是以下的原因…
转载:http://blog.csdn.net/l_thread/article/details/6020036 开始看start.s中的代码,又一句.balignl 16,0xdeadbeef,不知什么意思,网上搜了一下了解到这条命令的作用如下: .balign[wl] abs-expr, abs-expr, abs-expr 增加位置计数器(在当前子段)使它指向规定的存储边界.第一个表达式参数(结果必须是纯粹的数字)是必需参数:边界基准,单位为字节.例如,‘.balign 8’向后移动位置计…