
STM32F103 学的时间也不长,主要是看参考别人的例程,然后再改动,慢慢消化。5 r* y4 w4 }: |# D + F3 N, X% Z N w' T7 y 这个是也是如此,只是自己做过后印象更深刻。 1. KEIL的DEMO,包括一个pc端演示软件,可以实现在PC端控制KEIL开发板上的LED显示,同时采集开发板上的按键。而按键也只有两个,只供PC端程序读写,不是标准的USB键盘协议。所以,改造是必不可少的。 2. 改造主要工作两部分:0 ]3 E {' F% g2 w. S a. 按键采集部分。在demo.c中,主程序停在while(1)循环就完了,可以利用一下。在这里,加入scan_key()函数,自己实现scan_key,读取按键,转换成键码,保存在变量中。 b. USB协议的改造。此部分最关键。见附件。8 n# y+ X% |) u& U* ~/ B 其中string descriptor可以自己随意修改。 3。 修改所有USB_WriteEP(0x81, &InReport, sizeof(InReport)); 将此句改为:USB_WriteEP(0x81, nInReport,8); 其中nInReport定义为:: p! f5 i* T# n8 { l) ]" a BYTE nInReport[8];/ B+ c& u' t4 X 4. 修改hiduser.c中函数如下:( P! ]( G: U( S: S. J$ Z BOOL HID_GetReport (void) { /* ReportID = SetupPacket.wValue.WB.L; */ switch (SetupPacket.wValue.WB.H) {7 y: o6 _, g7 @: s* g9 @* g- u case HID_REPORT_INPUT:7 Z& `8 n) ~. \0 o0 I GetInReport();$ A5 Q5 G5 x- v4 A% X# N. R // EP0Buf[0] = &nInReport; memcpy(EP0Buf,nInReport,8); break; case HID_REPORT_OUTPUT: return (FALSE); /* Not Supported */ case HID_REPORT_FEATURE:. z: l, P3 ~6 f( E /* EP0Buf[] = ...; */) G4 m5 q( x$ K" s /* break; */: y5 c# P' b9 ?& [3 n& Q return (FALSE); /* Not Supported */ }' } j3 F$ X1 }* M( C' R, ` return (TRUE);: J4 ?- m) E+ D! d }5 {- ]0 y: p$ u ]9 ^% w 0 Z4 \% ]$ q. X4 @& u# x5 a 5. 修改usbcore.c中% I* G% [6 E( u( I | 将 if (SetupPacket.wIndex.WB.L == USB_HID_IF_NUM) 此句改为if(1),取消此判断 % v7 P9 I2 }; P 改动完成,即可将USB插到PC上,可以看到虚拟的健盘了。 回复的送8个开发板的光盘资料,请把邮箱留下来,共8G资料。; z- [: [" Z$ U) Q; h9 V+ ^. @# C' E 红牛,战舰,安富莱,旺斯特,启航,神舟1号,正点原子,DX32 。都是STM32F103 开发板的光盘资料。附件太大传不上来,只能发邮箱,要的话请留邮箱$ y! l& E' d! v |
usbdesc.c.txt
下载7.29 KB, 下载次数: 32
最全USB HID开发资料,悉心整理一个月,亲自测试
实战经验 | 选择USBX模块生成USB CDC ACM无PD的项目
STM32 USB HID键盘例程
刘氓兔的杂谈【001】-片上USB 高速PHY
【经验分享】在进行 USB CDC 类开发时,无法发送 64整数倍的数据
【源码】STLINK-V3MINI 高速USB仿真器,成功改刷【高速CMSIS-DAP】
在线直播|无需编写任何代码即可在STM32上实现USB-C Power Delivery
STM32 USB CDC 虚拟多串口
圈圈发布USB图书第二版有感,以及分享一些我学习USB过程...
USB Audio设计与实现
RE:MCU实战经验+用STM32实现USB虚拟健盘
RE:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个开发板的光盘的资料
RE:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个开发板的光盘的资料
RE:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个开发板的光盘的资料
回复:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个开发板的光盘的资料
楼主传我一份资料吧!cjq_enjoy@126.com,谢谢7 j3 D% S" N; o* }7 K8 s/ K
楼上两位,资料已发到你们的邮箱里了,请在28天之内下载完,呵呵
RE:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个STM32开发板的光盘的资料
回复:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个STM32开发板的光盘的资料
RE:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个STM32开发板的光盘的资料
同时麻烦将资料发到我邮箱,谢谢!
QQ 1257878961@QQ.COM
RE:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个STM32开发板的光盘的资料
RE:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个STM32开发板的光盘的资料
。
RE:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个STM32开发板的光盘的资料
RE:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个STM32开发板的光盘的资料
RE:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个STM32开发板的光盘的资料
RE:MCU实战经验+用STM32实现USB虚拟健盘,回复的送8个STM32开发板的光盘的资料