打印

并口进行通信的仿真器现在想改用USB口进行通信

[复制链接]
2343|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lium|  楼主 | 2013-4-7 19:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
公司以前做了一个用并口进行通信的仿真器,现在想改用USB口进行通信,没有了解过USB的编程,一头雾水不知从何开始,各位能不能指点指点!比如:用什么驱动芯片最好、驱动程序有没有现成的?
沙发
江枫渔火| | 2013-4-8 12:38 | 只看该作者
随便找一个带USB功能的芯片,比如m3,m0的片子。编写USB固件程序,根据USB与PC通信的情况,去控制MCU的端口线~
所以,你要设计一套协议,供上位机跟USB通信,剩下的所有端口,你都可以用来等同你原来的并口线的功能~它的电平状态,时序状态,就由你自己控制。
我猜是这样的。

有一款芯片是USB转串口TTL的,具有io口扩展能力,叫FT232,比较贵。优点是,提供上位机开发驱动库,你不用编写芯片固件,也不能编写,只可以通过他公司提供的工具修改配置。其他的功能,包括端口线,都使用它们提供的库去调用来控制。
你可以参考colink,他们一款jtag是用这个芯片做的,可以调试M0,M3.
我猜是这样的。

使用特权

评论回复
板凳
xuezifen| | 2013-4-8 14:48 | 只看该作者
说得很不错啊!!!!

使用特权

评论回复
地板
guoyt| | 2013-4-9 19:08 | 只看该作者
需要用到windows ddk.里面有API函数可以对USB接口进行操作.
<<USB2.0硬件设计>>可能会有帮助.

使用特权

评论回复
5
lium|  楼主 | 2013-4-9 19:09 | 只看该作者
有没有像串口那样方便的控件?

使用特权

评论回复
6
hanwe| | 2013-4-9 19:11 | 只看该作者
1 看通讯协议
2 看驱动开发流程《如果自己开发驱动》

使用特权

评论回复
7
yufe| | 2013-4-9 19:12 | 只看该作者
ddk里面的usbview自己参考下
看你做什么类型的
可以安装softice调试

使用特权

评论回复
8
llia| | 2013-4-9 19:14 | 只看该作者
可以使用driverstudio进行开发 不过不推荐   

控件暂时没有发现。

使用特权

评论回复
9
lium|  楼主 | 2013-4-9 19:15 | 只看该作者
我装了ddk,如何知道里面提供了些什么函数?usbview是什么?
我在XP下装了2000 ddk是不是这样不行啊?

使用特权

评论回复
10
wangpe| | 2013-4-9 19:20 | 只看该作者
PUSB_NODE_CONNECTION_INFORMATION connectionInfo;
HANDLE hHubDevice;

for (HCNum = 0; HCNum < NUM_HCS_TO_CHECK; HCNum++)
   {
   wsprintf(HCName, "\\\\.\\HCD%d", HCNum);
   hHCDev = CreateFile(HCName,
   GENERIC_WRITE,
   FILE_SHARE_WRITE,
   NULL,
   OPEN_EXISTING,
   0,
   NULL);
if (hHCDev != INVALID_HANDLE_VALUE)
   {
strShow.Format("\r\n找到USB控制器:%d\r\n",HCNum+1);
ShowMessage(strShow);
}

使用特权

评论回复
11
langgq| | 2013-4-9 19:20 | 只看该作者
看你的情况,很想然是要做 驱动程序、固件程序以及PC端软件,这个跟你用的usb芯片有关,比如 Cypress之类,已经提供很完善的固件、驱动和软件了,只需要按照自己的需要增添代码就可以了,

使用特权

评论回复
12
wangzsa| | 2013-4-9 19:22 | 只看该作者
当然,也是要对usb的基本原理扫下盲,知道什么是pipe,bulk,

然后照着例子逐个测试,很快就能入门了

使用特权

评论回复
13
wangzsa| | 2013-4-9 19:24 | 只看该作者
现在做USB开发不想早几年还需要写大量底层驱动,现在很多专业芯片大部分就是利用上层配置软件进行配置生成代码

使用特权

评论回复
14
llia| | 2013-4-9 19:26 | 只看该作者
稍作修改就差不多了

使用特权

评论回复
15
zhuww| | 2013-4-9 19:27 | 只看该作者
和MSDN的用法一样,如果你不知道怎么查找函数...........
如果你要问USB驱动需要的函数,仍然没办法给你讲(找本讲驱动的书 看USB驱动想关的东西)

使用特权

评论回复
16
zhanglli| | 2013-4-9 19:30 | 只看该作者
usbview是DDK 安装文档下的一个usb例程的一个demo

使用特权

评论回复
17
guoyt| | 2013-4-9 19:31 | 只看该作者
XPDDK和2000DDK是不同的Driver Development Kit

使用特权

评论回复
18
wangpe| | 2013-4-9 19:32 | 只看该作者
搞不明白微软为什么把USB这个接口开发做成这样,非常人能理解.
最新的USB开发工具,说是方便了许多,可也还是没有改进多少,新的框架,而且进门了里面还是漆黑一片.

使用特权

评论回复
19
guoyt| | 2013-4-9 19:34 | 只看该作者
如果你的通讯速率不超过640kps,可以用FULL speed和HID, 无须任何driver。

使用特权

评论回复
20
lium|  楼主 | 2013-4-9 19:36 | 只看该作者
明白了,多谢大家

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

915

主题

9578

帖子

3

粉丝