STM32 USB HID收发
stm32 usb hid的例子很多,大部分都是在老版本库的基础上应用的,很不方便。在坛里下了个"DZ561"大侠修改的hid收发的程序,很赞,很感谢大侠的共享
程序能够正常工作,但仍是基于低版本的库,用惯了3.5的库,很不舒服,于是
做了些升级成3.5的库,就是把hw_config,desc,endp,istr,prop等这几个需要修改的文件
改成3.5的库环境了。usb的库仍是2.2的,呵呵,我可没本事把usb的库升级
没啥创新,就为方便大家
版权归原作者,用的着就拿走,程序不工作也别找我,来源网络,回归网络:) 再付个hid上位机吧,网友做的,很好用,我只知道作者博客名:“蓝”,坛里应该也有,不过真的很好用撒 暫時用不到
不過幫頂~ 很好啊
MARK 收藏了,谢谢楼主{:smile:} 你好,谢谢你的工程。我测试了一下你的工程,还是不好用。我的修改如下:
1.使能USB_SOF_KEY宏,注释掉USB_HW_KEY。修改USBDP+上拉控制引脚为GPIOA.8
2.USB_GPIO_Configuration()里边添加上一句:RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); 否则,GPIOA.8控制失效
3.实际测量GPIOA.8控制正常,可以将DP+上拉到3V
4.运行工程,插入USB电缆到PC,电脑依然提示unknown device。同时MDK的USB_Istr()中断函数进不去,没有任何触发。
我也尝试了用USB_HW_KEY,但是此时插入USB,系统无任何反应,PC机无任何枚举过程。
不知你的工程是否实际测试过?在你的测试环境中,枚举过程是否可以正常触发USB_Istr()函数?多谢。
jetlib 发表于 2013-8-18 20:26 static/image/common/back.gif
你好,谢谢你的工程。我测试了一下你的工程,还是不好用。我的修改如下:
1.使能USB_SOF_KEY宏,注释掉USB_ ...
在我板子上通过了,不过我板子没硬件控制引脚,我只测试了软复位
明天我再看看 jetlib 发表于 2013-8-18 20:26 static/image/common/back.gif
你好,谢谢你的工程。我测试了一下你的工程,还是不好用。我的修改如下:
1.使能USB_SOF_KEY宏,注释掉USB_ ...
板子如果带硬件usb开关的话,肯定先打开usb的上拉
那个usb的上拉,你看看是不是真的上拉了?你改下
断开连接的顺序,可能是反了,这个我没测试,我的
板子用的排针选择,手工打开usb jiaohaitao 发表于 2013-8-18 21:42 static/image/common/back.gif
板子如果带硬件usb开关的话,肯定先打开usb的上拉
那个usb的上拉,你看看是不是真的上拉了?你改下
断开 ...
的确是真的上拉了。执行USB_Cable_Config(ENABLE);以后,DP+引脚由0电平变成了3V,并且PC的确开始发现有USB ATTACH了。如果不执行这个,PC就发现不了USB设备。所以这个应该是没问题的。
我奇怪的是,为啥usb_isr()始终进不去?PC开始枚举USB设备时,我应该能收到PC的各个USB命令的啊?但是我就是进不去中断。
另外硬件一定要用22欧姆的串联么?我没有22欧姆的,但是用56欧姆/3.3O欧姆都试了,都不好用。十分奇怪。硬件上这个串接的电阻只是起一个平衡电压的目的吧?才12Mbps,都不用考虑阻抗匹配啥的啊。 感觉很及时啊,正要用STM32的USB的hid
{:lol:} 楼主位的代码软件选通usb上拉开关有问题,因我刚开始调试直接用的手工按跳线帽,所以没测试
下面是我用野火的板子测试的通过
jetlib 发表于 2013-8-18 22:15 static/image/common/back.gif
的确是真的上拉了。执行USB_Cable_Config(ENABLE);以后,DP+引脚由0电平变成了3V,并且PC的确开始发现有U ...
我有调了个新的,你试试看行不?不行再说:) 顶!楼主 哇,这个很不错啊 jiaohaitao 发表于 2013-8-19 18:43 static/image/common/back.gif
楼主位的代码软件选通usb上拉开关有问题,因我刚开始调试直接用的手工按跳线帽,所以没测试
下面是我用野火 ...
我只是根据我的板子把USB_DISCONNECT的引脚定义改成了:
#define USB_DISCONNECT GPIOA //usbµÄ¿ª¹ØÒý½Å£¬1.5kÉÏÀµç×èµÄ¿ØÖÆÒý½Å
#define USB_DISCONNECT_PIN GPIO_Pin_8 //¶ÔÓÚûÓнӿØÖÆÒý½ÅµÄ£¬¿ÉÒÔ¶¨ÒåΪ¿Õ
#define USB_DISCONNECT_RCC RCC_APB2Periph_GPIOA
但是下载后问题依旧,仍然提示:unknow device。也许真的必须是22欧姆的串接电阻才行吧,等手头有了22的电阻再试一下。确实奇怪。
jiaohaitao 发表于 2013-8-19 18:45 static/image/common/back.gif
我有调了个新的,你试试看行不?不行再说:)
而且无论我怎么调试,USB_Istr()下了断点,始终断不到。所有开始的PC枚举过程,我没有收到任何PC端的REQ。所以也许是硬件问题?虽然可能性比较小。
没办法,等回头用22欧姆的串接电阻再试试看。
jiaohaitao 发表于 2013-8-19 18:45 static/image/common/back.gif
我有调了个新的,你试试看行不?不行再说:)
哦,另外再问一下,HID的设备不需要装ST的什么去东莞吧?只有virtual com才需要装驱动吧? jetlib 发表于 2013-8-19 20:04 static/image/common/back.gif
哦,另外再问一下,HID的设备不需要装ST的什么去东莞吧?只有virtual com才需要装驱动吧? ...
hid不需要,因为方便,所以用的多 今晚研究研究,谢谢楼主共享 本帖最后由 bailao99 于 2013-8-20 21:40 编辑
试了修正版的程序,在STM32F103C8T6上测试通过。楼主提供的上位机程序最多可向下位机发送22字节,下位机向上位机发送的字节数可修改下位机SendLength。
一个问题;SerialNumberString怎么显示为乱码?到底是usb_desc.c中哪个字符串?修改了CustomHID_StringSerial也没有效果 用得上,谢谢啦 不错 下载来研究 楼主,我识别成 USB输入设备 但是那个上位机没有用是什么情况? 很好啊
MARK
终于找到一个可以用的啦{:lol:} 上位机编译不了,我是VS2010, 有VS2010下编译成功的同学吗? 请问楼主有没有测试过HID 的速度呢?http://www.amobbs.com/forum.php?mod=viewthread&tid=5547233&highlight=hid 正是我需要的 谢谢 用HID做加密狗 {:smile:}{:smile:}{:smile:} 先MARK一下 恩···刚开始看 USB.想弄个 stm32f407 与 PC 通讯的 上位机。上位机获取 stm32 数据。采用HID类,上位机通讯不用编写驱动哈? f103 的 直接修改 stm32 那边的代码,库不用动就能用了吧?是吧?···· 收藏备用,谢谢 MARK一下 收藏 这两天我也在搞stm32f103的usb接口,网上这方面的资料虽然多,但是真正能用的却不多,我把我刚调通的程序发上来吧,有图为证。非我原创,来源网络,我只是验证测试了一下。感兴趣的人可以试下。
上传附件有点问题,可以到我的网盘里面下载
http://www.kuaipan.cn/file/id_86107561639666448.htm?source=1
http://www.kuaipan.cn/file/id_86107561639666447.htm?source=1 感谢lz的分享 这个正需要,谢谢。 书到用时方恨少 谢谢,有空研究一下USB HID 楼主的资料相当不错,谢谢;
看出来是个细心的人 这是极好的。。。。 mark 谢了楼主 正在学习USB谢谢楼主{:handshake:} 也谢谢楼上的回复 哈哈 很不错,下下来稍微修改下在我的板子上能工作,谢谢楼主!
另外请问楼主usb的库是哪里的?为什么我从ST官网下的3.5的lib里面没有呢?还有hw_config这个文件的名字是因为老版本库的原因吗?3.5的好像也没有,只有叫stm32f10x_conf这个的。 谢谢分享 MARK STM32 USB HID 学习关注~~ hustsolo 发表于 2014-3-22 16:15
这两天我也在搞stm32f103的usb接口,网上这方面的资料虽然多,但是真正能用的却不多,我把我刚调通的程序发 ...
非常感谢 非常感谢,我正准备使用高版本 {:smile:}{:smile:}{:smile:}{:smile:}{:smile:}{:smile:} 谢谢分享 终于找到一个可以用的啦!!很有用!!
感谢楼主!!!!!!!! 收藏了,感谢楼主分享。 那个HID上位机看着不错,回头试试! 收藏备份,方便下次再找资料,谢谢LZ 这个好!! 研究一下,感觉好复杂哦 支持一下 谢谢,正在学习HID!非常有用! mark,有空折腾下hid协议 非常感谢 这两天调试得死去活来的 就是有问号试试你这个上位机 STM32 USB HID 感谢分享 谢谢分享!收藏了。 多谢,下载看看! 感觉上位机是一个问题啊,上位机的开发有比较好的就可以了。这个不错, 谢谢lz的无私先收藏了,用的时候在过来学习一下 mark USB-HID上位机了 mark usb HID 不错 最近刚好用到HID,先谢谢楼主了~ Sc0pin 发表于 2013-8-19 10:13
感觉很及时啊,正要用STM32的USB的hid
你好,你的USB_Hid做的怎么样了。调通了么? 不错,很好用。 谢谢分享 mark....... hustsolo 发表于 2014-3-22 16:15
这两天我也在搞stm32f103的usb接口,网上这方面的资料虽然多,但是真正能用的却不多,我把我刚调通的程序发 ...
下不了。。。。。。。。。。。。 make~!i like~! VC做的真不错,学习了! 谢谢分享!学习学习! 谢谢分享。。。 在个是很不错的哦 谢谢,收藏了 非常感谢,正需要。 多谢分享 hustsolo 发表于 2014-3-22 16:15
这两天我也在搞stm32f103的usb接口,网上这方面的资料虽然多,但是真正能用的却不多,我把我刚调通的程序发 ...
你那快盘被封了,还能分享一份嘛 谢谢分享。留个记号 谢谢楼主,很不错 Thank 谢谢楼主 MARK先,USB HID
MARK先,USB HID usb HID 用cube直接生成了sample但是跑不起来 奇了怪了 拿楼主的看看 MARK{:smile:}
MARK{:smile:} 谢谢 正是需要的。 正好有用,做个IC卡发卡器 USB HID 研究有用,谢谢! hid速度太慢 这个USB HID可以每次发送不同长度的数据吗?
页:
[1]
2