My Blog! blog.gkong.com   

Tip of my blog

新年快乐!


阅读(3016) 评论(0)
标签(TAG):

该日志会跟随设计进度而持续更新。

2009-12-24:
http://www.ftdichip.com/Resources/Utilities.htm#FT_Prog //FTDI Tools
doesn't my LabWindows/CVI project compile? // FTDI Chip at CVI programm ( A10)
FTDI CHIP PCB Data

http://www.ftdichip.com/Documents/Schematics.htm // A10 电路图,pcb
A10_USB-422.PRJPCB.rar // USB转RS422原理图Altium prj
232-MCU1.PRJPCB.rar
AN_131_FT2232D_H_Fast Opto-Isolated Serial Interface mode.pdf
http://www.ftdichip.com/Support/Knowledgebase/index.html?i2cintroduction.htm // PCB Layout

一、名词解释:
FTDI - 很有名的USB 设备解决方案芯片提供商,它的FTXXXX系列串口转USB芯片非常经典和被广泛应用。

VCP - Virtual COM Port (虚拟串口端口)

USB-Serial Controller - USB和串口控制器,相当于一个在USB和串口之间的转换接口,在嵌入式控制系统,工业控制系统中应用广泛。

USB Device Solutions - USB 设备解决方案,这是现在大部份专业芯片厂商,如ST、TI、MAXIM等为了推广自已芯片而向应用厂商提供的芯片设计服务集成方案,是一个互利的服务,在提高自身的出货量的同时帮助芯片应用厂商加快产品的开发进度。


二、相关芯片设计数据手册
http://www.ftdichip.com/Documents/DataSheets.htm

三、FTDI Chip 产品选型目录
http://www.ftdichip.com/FTProducts.htm

四、上位机串口编程模式
   一般的上位机串口编程模式如下:
(1)调用经典的串口控件,如MSComm控件,这是个事件驱动的ActiveX控件,在串口编程中应用极广,是简单和中级的串口编程应用首选。但由于要有窗口容器包含它、“运行”效率不高和占用系统资源较多,在具有10个以上的串口应用的项目一般不用这个控件。

(2)现在非常流行的dot.NET中的串口控件,如下图所示:

这是在用c#或dot.NET “管态”软件编程的首选控件,但同样存在上面所用的“MSComm.ocx”一样的问题,因此,在专业的串口编程中用得较小。

(3)真接用windows SDK 编程(也即Win API)来把串口当作一个文件来操作(Windows 操作系统自2000开始就不把串口单独进行抽象了,而是把有关设备或端口的抽象为“文件”,因此,我们只要掌握了针对“文件”的编程模型就能针对串口进行编程控制。这样设计是操作系统的未来。开始时会有点不习惯。但是慢慢就会体会到Microsoft这样设计的高明之处。

(注:我在2002年之前一直用mscomm.ocx 和 PCOMM(台湾厂商提供的一个用API写的以静态库形式或动态库DLL形式提供的串口函数封装,很稳定和很专业,对于C和C++是无缝的,因此后期我都不用mscomm.ocx,大部份项目都用它,在我的blog中有PCOMM下载和一个详细的在VS2008下C#和三菱FX系列的编程口进行通信编程的用例。但自从2002年在维护一个日本VC++5.0&MFC的工控项目时,慢慢被里面的串口CLASS(实际上是给串口Win32编程更向上抽象多了一层,使我们不用直面Win32的繁杂)所触动。下决心用Win32来写串口代码。这也是最具灵活性、最高效率、的串口编程方式,不过要过多线程编程之一关才能写出“优雅”的代码来。)

(4)随着电脑的发展,串口在个人电脑的作用越来越显得可有可无,因此现在的个人电脑大部分都取消了串口,但串口(嵌入式系统中叫USART/UART)在嵌入式系统中的需求却是有增无减,比如,STM32103VET6就集成了2个USART和3个UART接口。虽然在我们互联嵌入式系统网络时有了越来越多的选择,比如CAN。但是用得最多的还是UART(串行接口),因此,串口USB转接线就变成了嵌入式开发工程师每人一条甚至2条。虽然还可以用之前的串口编程模型来写串口程序,但不少USB 设备芯片提供商为他们的芯片提供操作系统驱动的同时,还提供了更直接更高效的DLL动态链接库。用该库来写串口程序将更为直接和高效,但会损失掉代码的移植性,这有时是不可接受的。

   但,我现打算用这种方式来编写串口程序,只要我再加上一层接口函数,用该接口来隔离掉厂商DLL与用户代码的串口操作代码就行了。

五、FTDI的 D2XX Drivers 的DLL编程资源
   D2XX drivers allow direct access to the USB device through a DLL.  Application software can access the USB device through a series of DLL function calls.  The functions available are listed in the D2XX Programmer's Guide document which is available from the Documents section of this site. 

Programming examples using the D2XX drivers and DLL can be found in the Projects section of this site.

D2XXPG34.pdf  // D2XX 编程手册
http://www.ftdichip.com/FTProjects.htm  // D2XX 编程项目s
http://www.ftdichip.com/Projects/CodeExamples.htm // Code Examples(包括VC、C#、Delphi, LabView(当然LabWindowsCVI参考VC的例子就OK)

http://www.ftdichip.com/Projects/CodeExamples/VC++.htm // 有4个用例项目。

困了,睡觉先,有空会更新(2009-8-5)

by 进化中的兔子 发表于:2009/8/5 0:54:12
My subject | 我的主题

New entries | 新发表

Messages Board | 留言板


Guest Comments | 新评注


Blogger Login | 登陆栏
Blog Infomation | 信息栏
博客名称:嵌入式系统&虚拟仪器 日志总数:450 评论数量:277 访问次数:1781236 建立时间::2005年10月25日
Blog Infomation | 搜索栏
Blog Infomation | 收藏栏

XML RSS 2.0

嵌入式系统&虚拟仪器
© COPYRIGHT 2004 ALL RIGHTS RESERVED http://www.gkong.com

中华工控网 | 联系我们 | 工控论坛首页 | 工控博客首页 | 博客注册 | 博客登陆

工控博客管理联系邮箱:工控博客服务邮箱

中华工控网 © Copyright 2013. All rights reserved.