这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 物联网技术 » PDIUSBD12虚拟串口:给入门者(1)

共15条 1/2 1 2 跳转至

PDIUSBD12虚拟串口:给入门者(1)

菜鸟
2005-05-09 03:11:25     打赏

PDIUSBD12虚拟串口:给入门者(1)

前面的USB鼠标(USB键盘)大家实现的如何了? 自己的Brk-D12平台有没有建立起来? 对USB的基本概念有没有一个直观的认识?

接下来,将介绍如何基于Brk-D12平台,设计一个USB-RS232的转接设备, 并在PC上实现一个虚拟串口;同时,也不需要编写驱动程序(2k/Xp自带驱 动),不过需要准备一个inf文件;所使用的PDIUSBD12的资源也要比前面的 USB鼠标多一些;如果你已经实现了USB鼠标,那么会很容易,如果还没有, 继续努力,因为对于一个USB的入门者,踏实很重要。

**关于USB-RS232 这个东西不新鲜,也没什么技术在里面,市场上很多卖的,我曾经使用 过两款,都是一个简单的小板子加上一个驱动程序(用来驱动USB设备并 虚拟一个串口,网上有相关的源代码,很容易实现),使用起来有如下问 题:1)需要额外安装驱动程序 2)串口不能保证全双工 3)丢数据 4)价格 贵。既然如此,作为初学者,DIY一把,也有很多乐趣在里面。 本帖子实现的USB虚拟串口是基于www.usb.org上的Universal Serial Bus Class Definitions for Communication Devices规范: [usbcdc11.pdf] [upload=zip]viewFile.asp?ID=5474[/upload] Atmel已经在AT89C5131上按照上面的规范实现了,请到其网站上查阅,也 可在此下载(): [c5131-usb-cdc-1_0_1][upload=rar]viewFile.asp?ID=5475[/upload]

上面的文档写的比较清楚,我就不再罗嗦了;Atmel的实现被照搬翻译成 中文,稍作改写而发表了文章,作为技术人员,这么做有点不厚道[em05],当 然了,现在学校毕业面临着论文的压力(象我,呵呵)。 在移植到Brk-D12上之前,请先读一下上面的规范和文档。

**未完待续




关键词: PDIUSBD12     虚拟     串口     入门    

菜鸟
2005-05-13 17:32:00     打赏
2楼
支持

菜鸟
2005-05-18 06:28:00     打赏
3楼

顶!!!

支持斑竹!!!!


菜鸟
2005-05-26 19:40:00     打赏
4楼
支持

菜鸟
2005-05-30 05:12:00     打赏
5楼

主机侧不需要驱动吗?只是提供inf文件,sys由操作系统提供?

那么inf注册的时候,用什么设备名字?


菜鸟
2005-05-30 05:56:00     打赏
6楼

明白,原来微软提供了usbser.sys来完成这些工作。以前我还要写个架设在sernum.sys 和serial sys 下的一个驱动。


菜鸟
2006-03-15 01:23:00     打赏
7楼
inf 如何去做?

菜鸟
2006-05-28 02:36:00     打赏
8楼
从Atmel提供的例子中找,也可从后面相关帖子中找。

菜鸟
2006-08-29 01:20:00     打赏
9楼
请教楼主,我的INF文件已经象你上面所说的进行了修改,WIMDOWS把USB口识别为PORTS,但是我的设备不能接收串口调试工具所发送的数据,这是为什么?麻烦楼主帮我看看。 [Version] Signature="$Windows NT$" Class=Ports ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318} ;Provider=%ATMEL% Provider=%Partner% LayoutFile=layout.inf ;CatalogFile=ptusbat.cat DriverVer=04/08/2004,1.00.2157.0 [Manufacturer] %Partner%=Partner [Partner] %ptusbat_CDC% = Reader,USB\VID_076c&PID_0204 ;[ATMEL] ;%ATMEL_CDC%=Reader, USB\VID_03EB&PID_2009 ;%ATMEL_CDC%=Reader, USB\VID_076c&PID_0204 [Reader_Install.NTx86] ;Windows2000 [DestinationDirs] DefaultDestDir=12 Reader.NT.Copy=12 [Reader.NT] CopyFiles=Reader.NT.Copy AddReg=Reader.NT.AddReg [Reader.NT.Copy] ;ptusbat.sys usbser.sys MsPorts.dll ;新增 ;端口类别安装程序 用于在设备管理器中显示串行端口 (Com1) 和打印机端口 (LPT1) 的属性. [Reader.NT.AddReg] HKR,,DevLoader,,*ntkern ;HKR,,NTMPDriver,,ptusbat.sys HKR,,NTMPDriver,,usbser.sys HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider" [Reader.NT.Services] ;AddService = ptusbat, 0x00000002, Service_Inst AddService = usbser, 0x00000002, Service_Inst [Service_Inst] DisplayName = %Serial.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 3 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ;ServiceBinary = %12%\ptusbat.sys ServiceBinary = %12%\usbser.sys LoadOrderGroup = Base [Strings] ;ATMEL = "ATMEL, Inc." ;ATMEL_CDC = "AT89C5131 CDC USB to UART" Partner = "Partner Tech Inc." ptusbat_CDC = "Partner Tech USB to UART" Serial.SvcDesc = "USB Serial emulation driver"

菜鸟
2006-11-17 19:51:00     打赏
10楼
请问有没有人把这个移植到D12 SMART BOARD上实现啊?这个不错啊。

共15条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]