上位机与USB通信的问题,急急急!!!

zorroaqua007 2008-12-13 03:46:01
各位高手:
我现在做一个项目,开发芯片是ATMEL的AT91SAM7X256,烧的程序是mass storage,在片外nandflash上实现一U盘。现在的进度是操作系统已经能够识别U盘,向U盘中拷入数据拷出数据都很正常。
然后我要在此基础之上开发一新功能,就是在PC机端开发一程序,能够向USB口发送某特定命令,在固件的mass storage类函数里增加对应的响应,功能是用CPU运算一串数据,然后发回USB接口,上位机再接收。
我在论坛内和PUDN中找了一些例子来看,都是可以得到U盘的描述符,如
Device path: \\?\usbstor#disk&ven_atmel&prod_mass_storage_msd&rev_0.01#0123456789ab&0#{53f56307-b6bf-11d0-94f2-00a0c91efb8b}
Bus type: USB
Device type: Disk
Media type: Removable
Vendor specific: ATMEL
Model number:
Firmware revision:
Serial number:
Cylinders = 2
Tracks per cylinder = 255
Sectors per track = 63
Bytes per sector = 512
Disk size = 16450560 Bytes (15 MB)
但得到这些后怎么来发送数据、命令和接收数据呢?
天天犯愁,我没有多少分给大家,因为我刚来到此社区,希望大家多帮忙!!!
...全文
496 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
lxh5316 2010-01-22
  • 打赏
  • 举报
回复
我的邮件liuxuhui20082000@126.com
多谢!!!
lxh5316 2010-01-22
  • 打赏
  • 举报
回复
一楼的能不能把你的代码给传一份,我也在做相关工作,希望大家一起研究!!
codesnail 2009-04-28
  • 打赏
  • 举报
回复
我觉得看看USB2.0协议英文版还是有帮助的。
usb_king 2009-04-25
  • 打赏
  • 举报
回复
我现在做出了usb通信 hid免安装驱动的应用软件,效果很不错!!!
我的c8051f320 usb demo 板采用bulk、中断通信模式,通信速率高达1.5Mb/s(采用vb6编程)

http://c8051fmcu.blog.sohu.com
hardworktzy 2009-04-25
  • 打赏
  • 举报
回复
这个功能可以使用windows 的SCSI类的函数来实现。实际上我们的U盘类的大容量存储设备,windows都是使用SCSI的UBI命令来读写的。所以你可以搜一下相关这些关键词,然后修改你的AT的mass_storage驱动,在PC端使用标准的SDK编写相关的DLL程序供其他程序调用。这个芯片的这种功能我以前实现过。
zwtchy123 2009-04-24
  • 打赏
  • 举报
回复
uping
博说医械研发 2009-04-22
  • 打赏
  • 举报
回复
我的想法是,在USBFN的驱动中除了MASS STORAGE所使用的ENDPOINT外再额外送两个ENDPOINT比如3、4(使用同一个endpoint也可以),其中一个设为中断形式,上位机的程序向额外的这个endpoint写数据,USBFN会接收到中断,中断函数判断是否是这个endpoint,如果是的话就通过另一个endpoint回发到上位机。
我目前做的是USB转COM,使用的都是输入输出都是endpoint2。
有些事还搞不太清楚,不知道用两个endpoint是否可以。
sunwill_chen 2009-04-22
  • 打赏
  • 举报
回复
U盘的驱动程序不是你写的, 所以你要先找到这个驱动公开的DEVICEIOCONTROL的功能. 然后访问该驱动, 并使用对应的IO CONTROL来实现, 如果没有对应的控制接口, 可能就没办法了, 除非你自己写个U盘的驱动来替换, 这是我的理解不一定对.
dthxman 2009-04-08
  • 打赏
  • 举报
回复
你用atmel的芯片,datasheet上有资料的吧,usb你就把他当成一个串口来做,既然你能拷贝程序,说明驱动遍历这块都好了,我问下,驱动这块是你写的吗,如果是的话做这个应该很容易,如果不是,你应该先把驱动数据收发那块看懂。
E06620127 2009-04-05
  • 打赏
  • 举报
回复
我比你还菜呀,我也要做类似的,可是现在连如何实线数据的传输都不回,您能将您写的驱动发我一分,然我学习学习
我的Email是xjl295581837@163.com
zorroaqua007 2008-12-17
  • 打赏
  • 举报
回复
看了看什么DeviceIocontrl,不知道是否能实现,大家来帮忙! 不知道如何增加给大家的点数,不管怎么样知道的都告诉我一下吧
!!!!

21,600

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧