VB6.0環(huán)境下基于USB的虛擬串口通訊實(shí)現(xiàn)
2.2 FT232BL電路設(shè)計(jì)
根據(jù)USB設(shè)計(jì)規(guī)范,USB設(shè)備有總線供電和自供電2種方式??紤]到USB通訊功能僅在連接PC機(jī)時(shí)使用,所以,F(xiàn)T232BL芯片由USB總線供電,電路其他部分通過(guò)雙觸點(diǎn)開(kāi)關(guān)的一個(gè)常開(kāi)觸點(diǎn)連到USB總線電源正極上。典型硬件電路如圖3所示。采用上電復(fù)位方式,通過(guò)輸出可使單片機(jī)復(fù)位。時(shí)鐘電路采用1個(gè)6 MHz無(wú)源晶振及2個(gè)27 pF的陶瓷電容組成。PWREN腳與單片機(jī)的P1.7相連,用于判斷USB總線是處于掛起狀態(tài)還是正常狀態(tài)。在USB接口的電源端接一個(gè)磁珠,用以減少主機(jī)與設(shè)備的干擾;電源端增加了去耦電容和旁路電容,以提高電路的抗干擾性。在印刷電路板的設(shè)計(jì)中,2根串行數(shù)據(jù)線的走線應(yīng)可能短,并且長(zhǎng)度相等。圖3中的93C46(93C56或93C66)是一片電擦除只讀存儲(chǔ)器(E2PROM),用于存儲(chǔ)產(chǎn)品的VID,PID,設(shè)備序列號(hào)及一些說(shuō)明性文字等。這需要用戶自己編寫(xiě),編寫(xiě)的應(yīng)用程序由FTDI公司提供。用戶只需運(yùn)行相應(yīng)的VB程序,寫(xiě)入相應(yīng)的信息即可。該電擦除只讀存儲(chǔ)器(E2PROM)是可選的。若沒(méi)有電擦除只讀存儲(chǔ)器(E2PROM),F(xiàn)T232BL將使用默認(rèn)的VID,PID(進(jìn)程標(biāo)識(shí)符),產(chǎn)品描述符和電源描述符,并且沒(méi)有設(shè)備的序列號(hào)。本文引用地址:http://m.butianyuan.cn/article/202342.htm
3 上位機(jī)的軟件設(shè)計(jì)與編程
3.1 虛擬串口驅(qū)動(dòng)程序安裝
當(dāng)下位機(jī)連接到上位機(jī)的USB接口時(shí),上位機(jī)會(huì)檢測(cè)到新硬件,這時(shí)需要安裝一個(gè)從FTDI公司網(wǎng)站上免費(fèi)下載的虛擬串口(VCP)驅(qū)動(dòng)程序。該驅(qū)動(dòng)程序適用于Windows 98/2000/ME/XP等不同操作系統(tǒng)。用戶可以在這虛擬串口上進(jìn)行應(yīng)用程序的開(kāi)發(fā)。該虛擬串口可以像一個(gè)標(biāo)準(zhǔn)的物理串口那樣被訪問(wèn),可本質(zhì)上所有針對(duì)虛擬串口的數(shù)據(jù)通信都是通過(guò)USB總線完成的。
3.2 上位機(jī)的軟件編程
上位機(jī)軟件采用VB 6.0提供的串口通訊MSComm控件進(jìn)行應(yīng)用程序的編寫(xiě)。MSComm控件提供了功能完善的串口數(shù)據(jù)的發(fā)送和接收功能,它有2種處理通信的方式:一種是事件驅(qū)動(dòng)方式,當(dāng)串口發(fā)生事件或錯(cuò)誤時(shí),MSComm控件會(huì)產(chǎn)生OnComm事件,程序可以捕獲該事件進(jìn)行響應(yīng)處理;另一種是查詢方式,在程序中查詢MSComm控件的CommEvent屬性的值是否發(fā)生變化,從而確定響應(yīng)處理。
3.2.1 虛擬串口的自動(dòng)識(shí)別
一般來(lái)說(shuō),上位機(jī)操作系統(tǒng)為FT232BL芯片分配的虛擬COM端口是不確定的,下位機(jī)連接到同一上位機(jī)的不同USB口,其虛擬COM端口號(hào)不同,下位機(jī)連接到不同的上位機(jī),虛擬COM端口號(hào)更是無(wú)法確定。為了讓上位機(jī)能夠自動(dòng)識(shí)別下位機(jī)連接的虛擬COM口,程序中采用了循環(huán)訪問(wèn)各COM口的方式,如果該COM口是存在的則按照通訊協(xié)議向該端口發(fā)送“3CH”,如果該COM口不存在,則跳過(guò),判斷下一個(gè)COM口。如果收到下位機(jī)回送的“3CH”,則說(shuō)明通訊檢測(cè)成功。
程序代碼如下:
單片機(jī)相關(guān)文章:單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)視頻教程
單片機(jī)相關(guān)文章:單片機(jī)工作原理
數(shù)字通信相關(guān)文章:數(shù)字通信原理
通信相關(guān)文章:通信原理
鎖相環(huán)相關(guān)文章:鎖相環(huán)原理
評(píng)論