灌漿記錄 儀以前經常采用并行接口和PC直插卡的方式,隨著行業高速發發展,現如今都采用即插即用的UsB接口設計,使用起來方便,可靠。
利用USB接口的灌漿記錄 儀,使用起來比并行接口要簡單,減少了故障率,一定程度上縮減了生產成本,維護起來方便。
灌漿記錄 儀USB接口的設計***
通用串行總線(USB)是一種支持即插即用的新型串行接口,使外設到計算機的連接更加便利。這種接口適合于種設備,不僅具有快速、即插即用、支持熱插拔的特點,還能同時連接多達127個設備,解決了如資源沖突、中斷請求和直接數據通道等問題。因此,越來越多的***者欲在自己的產品中使用這種標準接口。RS232是單個設備接入計算機時常采用的一種接入方式,其硬件和軟件協議比較簡單,有很多傳統設備采用了這種通信方式。將USB轉UART技術應用于單片機與PC機之間的數據通信,在計算機上產生樣使用USB口即可。這樣僅能使單片機具備UsB通信的諸多優點,簡化了USB編程,同時還可以利用USB對單片機提供5V的電源(500mA以下)。
市場上USB接口芯片有很多種,例如FT245、CH375、CP2101等。CP2101其升***型號CP2102是一種高度集成的USθUART橋接器,該芯片是由美國 Silicom公司生產,集成度高,內置一個USB20全速功能控制器,USB收發器EEPROM,振蕩器和帶有全部的調制解調器控制信號的昇步串行數據總線(UART)。
與其他的 USB-UART轉接芯片工作原理相似,CP2101系列芯片是通過驅動程序將PC機的USB口虛擬成CC擴展的目的。虛擬COM口(VCP)器件驅動程序允許一個基于cP2101的器件以PC機的應用軟件的形式作為一個增加coM口單***于任何現有的硬件。℃OM口使用運行在PC機上的應用軟件以訪問一個標準COM口的方式訪問基于cP2101的器件但P℃與cP2101器件間的數據傳輸卻是通過υsB完成的,因此僅需修改現有的軟硬件的部分代碼和電路就可以實現通過US日向基于cP2101的器件傳輸數據,無需全部重新設計。
1.1cP2101的特性
CP2101體積雖小但是功能非常強大,其主要的特性包括以下幾點.
1)集成的UsB收發器無需外部電阻;(2)集成的時鐘無需外部振蕩器;(3)集成的512字節 EEPROM用于存儲產品生產商D產品D序列號電源參數版本號和產品說明;(4)片內上電復位電路;(5)片內電壓調節器3.3V輸出。
此外,廠商以及銷售商免費提供了適用于 Windows,LinuⅨx, Mac Os-X等多個操作系統的驅動程序,省去成并安好驅動程序即可以使用。
1.2cP2101的原理和外圍電
由(圖1)可以看到,用cP2101進行串口擴展所需的外部器件非常少,使用方便。CP2101是US時串行口橋接器它需要設計外接USB接口電路和RS232接口電口電路實現CP2101與計算機之間的通信;RS232接口電路實現CP2101和外設之間的通信(電路如圖1示)。其中RS232電平轉換電路可根據需要選用MAX3243或MAX232。
當CP2101轉換器與主機連接后,須根據操怍系統選擇相對應的虛擬串行口驅動程序。不必修改設備的應用程序就像存取一個標準的物理串口一樣訪問該虛擬串口,端口設備會產生“cP210 x USB to UARTBridgeController(c○Mκ)"的新端口(*隨計算機的配置而昇),此時說明驅動程序安裝成功。實質上,所有針對虛擬串口的數據通信都足以USB總線傳輸實現的,但在設備上,收發則是RS232數據。
2.1MsComm控件的實際應用
前面已經闡述了CP2101的準備工作,下面就來說明如何利用 MsComm控件來和cP2101進行通訊。筆者以灌漿記錄仁的實驗程序為例,而這也是***的目的。***先在Deph中新建一個工程,在新建工程的窗體中加入 MsComm、Edt、Button、 Label、 ComboBox等控件。
根據需要調整好各個控件的屬性和位置。在窗體創建時設置串口通信的有關參數,部分代碼如下:
combobox1 Items. Add(com2);
combobox1 Items. Add(com4);在 combobox1中添加備選的com2和com4
mbobox2 tems Add(9600,n,8,1);/在 combobox2中添加備選的通信參數
MSComm1 nputLen:=0; //Input讀取整個緩沖區的內容 MSComm1 THreshold:=1;∥每次接收到字符即產
MSComm1 outBuffercount:=0;M清空發送緩沖區
MSCommlInBuffersize:=1024;/設置接收緩沖區大小為1024字節
MSComm1. OutBuffersize:=1024;h設置發送緩沖區大小為1024字節
nlnputModeBinary;灬心二進制形勢取回數據
設置好通信參數燦以后,在打開串口的 On clicκ事件下需添加打開串口代碼為通訊做好準備,部分代碼如下
MSComm1 Settings: =combobox Text
if combobox Text=com2 then
MSComm1 CommPort: =2
MSComm1 CommPort:=4;∥假設只考慮com2和com4兩種情況
MSComm1 Portopen:=true;∥打開串口
MSComm1 DTREnable:=true;∥/數據終端準備好
MSComm1 RTSEnable:=true;/請求發送
同樣,在采集結束后關閉程序時也應關閉串口,采用打開動作相反的代碼來實
MSComm1 Portopen:=fase;/關閉串口
MSComm1. DTREnable: =false
MSComm1. RTSEnable: =false
根據記錄 儀的通信協議,上位機每發送一條采集命令到記錄 儀,記錄 儀便返回一組
發 Oncomm事件,從接收數據緩沖區讀取數據
以及后續復雜的數據處理過程都應寫到 On comm事件下,部分代碼如下
if MSComm. CommEvent=2 then
recto:= MSComm Input;∥讀取數據緩沖區內容
end