居偉駿,孫華平,盧 達,徐 剛
(1.常熟理工學院 江蘇省紡織機械工程研究中心,江蘇 常熟 215500;2.常熟紡織機械有限公司,江蘇 常熟 215500)
PDA(Personal Digital Assistant)即掌上電腦,具有體積小,攜帶方便等特點[1],目前在各個領域都會大量用到各種各樣的PDA.多臂機用的PDA其主要功能是完成PC機與電子多臂機之間的批量花樣文件傳輸.使用PC機設計的織物花樣文件要傳輸并存儲到電子多臂機上才能實現花樣的編制,而直接使用PC機對大量的電子多臂機進行花樣文件的傳輸是極不方便的.電子多臂機用的PDA能夠很好的解決PC機與電子多臂機之間的數據傳輸不便的問題.一般先將用PC機設計的花樣文件保存到PDA上,然后利用PDA向車間內的多臺電子多臂機傳輸花樣文件數據.
隨著生產規模的擴大,加之織機、電子多臂機的提速及織物越來越復雜等原因,原有的PDA逐漸暴露出一些不足之處.例如:原有的通信接口全部采用RS232串行接口,但是現在大量用戶使用的筆記本電腦本身不具備這一接口,于是帶來了通信不便的問題;原有的花樣文件存儲系統采用了RAM來實現,一旦PDA電池電量不足容易造成花樣文件丟失;另外還有原系統存儲容量過小,人機界面不佳等問題.本文針對這些實際應用中暴露出的問題,設計了一個基于C8051F340單片機的電子多臂機用PDA系統.
C8051F340單片機是完全集成的混合信號系統級芯片(SoC),片內集成了數據采集和控制系統中常用的模擬、數字外設及其他功能部件;內部具有位于外部數據存儲器空間的RAM,即XRAM,為數據傳輸中的大容量緩沖空間的開辟提供了方便[2].
基于C8051F340單片機的電子多臂機用PDA的硬件系統設計框圖如圖1所示.PC機可以通過USB接口和PDA進行數據通信.工作時PC機利用上位機軟件發送不同的命令,從而可以實現與PDA的上下行通信,實現花樣文件的傳輸.PDA上的所有花樣文件都被保存在數據存儲模塊芯片(MB85R1001)上,這些文件的文件名通過LCM依次顯示在HMI(人機界面)上.當需要PDA和電子多臂機進行通信時,可以通過鍵盤控制PDA與電子多臂機的上下行通信.考慮到與原有電子多臂機的兼容性,系統還保留了一個RS232串行通信接口.
本系統采用了FT245BM作為USB通信模塊的接口芯片.它既不用編寫片內的固件程序,也無需開發USB接口的設備驅動程序,PC機端只需使用FTDI公司提供的官方驅動程序就可以驅動芯片工作[3].這樣PC機與FT245BM就可以很方便地通過USB接口進行數據交換.FT245BM外圍硬件電路如圖2所示.
FT245BM本身具備128字節的輸入緩沖區和384字節的輸出緩沖區.當進行讀操作時,數據經USB接口存入輸入緩沖區,此時RXF#為低,若再使RD#為低,單片機即可從數據口并行讀入數據.當進行寫操作時,TXF#為低,表示輸出緩沖區可用,當WR#出現下降沿,單片機可將數據寫入輸出緩沖區[4].
在本系統中使用了鐵電存儲器(FRAM)作為數據存儲芯片.FRAM不需要供電,但是卻具備了ROM非易失性數據存儲的特性,同時它又像RAM一樣可無限次讀寫、高速讀寫以及低功耗等優勢[5].MB85R1001是128K× 8的FRAM芯片,本系統使用了兩片MB85R1001進行字擴展,總的存儲容量達到了256K字節,這使得最大存儲單個花樣的緯數達到了近5萬緯(每緯5個字節).但是由于單片機C8051F340的一次尋址范圍為64K字節,因此要實現一片MB85R1001即128K的尋址就需要單片機單獨設一根I/O線來連接MB85R1001的A16引腳,要實現對兩片MB85R1001即256K尋址,則還需要利用MB85R1001的/CE1和CE2來實現片選.其中一片MB85R1001連接示意圖如圖3所示,另一片MB85R1001只需使/CE1和CE2的連接與這一片相反即可.
系統的HMI模塊主要通過HGO1601601-F-LWH-LSV模塊來實現,它是主要是由UC1698U驅動芯片和一塊160*160的LCD組成的.這一液晶顯示模塊顯示屏面積比較大,對于本系統要求的多文件名顯示是比較合適的.該LCD的行列地址對應關系圖如圖4所示.行地址從00H~9FH一共160行,而列地址比較特殊,從25H~5AH,共54個,并非每列對應一個地址,而是每3列對應一個地址.每次要在LCD上顯示一定的內容時都是按行顯示的.首先確定行地址和列地址,然后一次連續寫入三個字節的數據,這三個字節的數據對應LCD上該行列地址開始的2個列地址,即6個點的內容.例如要從第0行(行地址00H),第0列(列地址25H)開始顯示一定的內容,則實際寫入三個字節數據后,在LCD上第0行,第0~5列上顯示一定的內容.
因此,為了便于內容的顯示和存儲,在生成LCD點陣字模時,行方向點數最好選擇8的倍數(8點占一個字節),列方向點數最好選擇6的倍數.本系統考慮實際使用情況,對所有ASCII碼字符都選擇了16*6(行*列)的字模,而中文字都選擇了16*12的字模,這樣選擇就可以在整個LCD上顯示10行*26列ASCII碼字符,或者10行*13列的中文字.由于上位機程序已經設定生成花樣文件的文件名是不超過16個的ASCII字符,因此整個LCD屏一次可顯示10個花樣文件名(每行一個).

圖1 PDA硬件系統設計框圖

圖2 FT245BM外圍硬件電路

圖3 MB85R1001連接示意圖
系統中還加入了一個簡單的9鍵鍵盤,通過它可以指定PDA上的某一個可用文件,對它進行刪除,發送等操作,還可以選擇讀取電子多臂機的花樣文件,或者向電子多臂機發送花樣文件等必要功能.

圖4 LCD行列地址對應關系圖
根據系統的總體設計要求及硬件電路原理,按照硬件連接和各個模塊芯片的特性以及功能實現要求,本系統的主要流程包括:系統初始化、LCD顯示、USB通信、232串口通信和鍵盤處理.軟件系統流程圖如圖5所示.其中,系統初始化部分,主要包括單片機的初始化,LCD顯示的初始化等.USB通信子程序部分主要包括USB接口的讀寫程序,以及存儲模塊的讀寫程序.鍵盤處理子程序主要通過行掃描法,掃描鍵值并根據鍵值對LCD上顯示的內容或者存儲器存儲的花樣文件進行相應操作.

圖5 軟件系統流程圖
基于上述方案設計的電子多臂機用PDA克服了原有PDA的弊端,作為PC機與電子多臂機之間的數據傳輸工具,除了快速準確地完成數據傳輸功能,還可以通過自帶的鍵盤對存儲的花樣文件進行一些簡單的操作處理.它本身具備了方便的USB數據通信接口,大容量的數據存儲模塊(最大可以存儲5萬緯的花樣文件),大屏幕的LCD顯示界面等優點.目前該PDA已通過各項基本功能測試,完全可以滿足高速電子多臂機用戶升級換代的要求.
[1]于新華,賴萬昌,等.基于PDA和藍牙的便攜式多道γ能譜儀[J].和電子學與探測技術,2009,29(4):728-731.
[2]李玲,弓千讓,齊長遠.C8051F340控制的LED點陣顯示屏系統設計[J].電子設計工程,2009,17(11):81-83.
[3]徐鋒.基于FT245BM的多USB接口的實現[J].無錫職業技術學院學報,2008,7(2):41-43.
[4]林水明,章堅武,駱懿.基于FT245BM的簡易USB接口開發[J].單片機與嵌入式應用,2003(6):38-40.
[5]張建鵬,于超,李剛.FRAM存儲器及其在新型12導心電圖機中的應用[J].醫療衛生設備,2005,25(10):25-26.