摘 要: 傳統(tǒng)的航向姿態(tài),、導航系統(tǒng)都以機械儀表為主,,用來顯示接收的自整角機,、旋轉(zhuǎn)變壓器信號既不精確也不穩(wěn)定。通過設計一種接口電路成功將液晶屏應用于航向指示器,,修正了上述缺點,。測試表明指示器顯示清晰,系統(tǒng)功能完整,、穩(wěn)定,。
關(guān)鍵詞: 航向指示器,;液晶屏,;單片機,;CPLD,;自整角機;旋轉(zhuǎn)變壓器,;A/D,;D/A
在各種航向姿態(tài)、導航系統(tǒng)中,,常用自整角機,、旋轉(zhuǎn)變壓器實現(xiàn)磁航向、無線電方位的接收,、傳輸,、調(diào)整和顯示。但以往的機載儀表以機械儀表為主,,存在顯示分辨率低,、指示不夠精確的問題。近年來,,液晶顯示器得到飛速發(fā)展,,因其體積小、功耗低,、開發(fā)周期短,、安全可靠、使用靈活的特點而廣泛應用于各種儀器儀表中,。本文通過設計一種接口電路,,成功地將液晶屏應用于航向指示器,測試表明該指示器可穩(wěn)定接收航向等自整角機,、旋轉(zhuǎn)變壓器信號,,傳輸給指示器的圖形板并在液晶屏上顯示,。
指示器設有液晶屏亮度,、模式等控制按鍵,考慮到傳統(tǒng)單片機系統(tǒng)所需芯片數(shù)多,、系統(tǒng)線復雜,,而CPLD在結(jié)構(gòu)、工藝,、集成度,、功能、速度和靈活性等方面都有了很大的改進和提高,,為高效率,、高質(zhì)量、靈活地設計單片機系統(tǒng)提供了可能,,特別是CPLD的系統(tǒng)編程,、測試能力和支持JATG邊界掃描的特點,以及具有JATG功能的單片機構(gòu)成的功能電路,,更能體現(xiàn)系統(tǒng)可編程的方便靈活的優(yōu)越性,。因此本接口電路采用了單片機C8051F020和可編程邏輯器件(CPLD),完成的接口電路外加一塊圖形處理芯片就能實現(xiàn)液晶顯示的航向指示器系統(tǒng),。
1 硬件設計
以自整角機信號為例,,硬件電路如圖1。C8051F020是Cygnal推出的一種混合信號系統(tǒng)級單片機,,片內(nèi)含CIP-51的CPU內(nèi)核,,其指令系統(tǒng)與MCS-51完全兼容。與以前的51系列單片機相比,,C8051F020增加了許多功能,,并且可靠性和速度也有了很大提高[1],。這里采用它來處理數(shù)據(jù),、驅(qū)動液晶屏,通過串口把數(shù)據(jù)送到液晶屏,??删幊踢壿嬓酒瑒t用于邏輯控制數(shù)據(jù)的輸入輸出。
在數(shù)據(jù)處理方面,根據(jù)精度要求,,對于自整角機信號的A/D轉(zhuǎn)換,采用中國船舶重工集團七一六所研制的14ZSZ系列和14SZZ系列轉(zhuǎn)換器,,14位分辨率可滿足要求,。當輸入兩路同類的自整角機信號時,可選擇具有雙通道的轉(zhuǎn)換器,,這樣有利于減少電路的面積,。接口電路將輸入的自整角機信號數(shù)字解算得到數(shù)字輸出,最后將此數(shù)字輸出經(jīng)過D/A轉(zhuǎn)換器14SZZ從接口電路輸出,。
CPLD程序用VHDL語言實現(xiàn),,根據(jù)單片機中對輸入數(shù)據(jù)的地址定義,將地址值作為敏感信號,,產(chǎn)生單通道A/D模塊的高低字節(jié)片選信號,,將14ZSZ芯片A/D轉(zhuǎn)換結(jié)果讀入緩存;對沒有高低字節(jié)選擇信號的雙通道A/D模塊,,則產(chǎn)生禁止/使能信號,,將14ZSZ/S02芯片A/D轉(zhuǎn)換結(jié)果讀入緩存。輸入信號進入緩存后,,CPLD根據(jù)地址值將輸入信號從緩存寫入單片機,。
輸入信號進入單片機后,解算得到數(shù)字輸出信號,。CPLD根據(jù)地址值從單片機將數(shù)字輸出寫入緩存,,然后根據(jù)地址敏感信號產(chǎn)生D/A轉(zhuǎn)換芯片的控制信號,根據(jù)控制信號把數(shù)字輸出送入D/A轉(zhuǎn)換芯片14SZZ,。
模數(shù)轉(zhuǎn)換器的直流電源允許波動范圍為±10%,,不能超過此范圍加電。要求PCB板的+5V,、+15V,、-15V和GND之間分別并聯(lián)一個0.1μF和一個6.8μF的濾波電容。單片機的XTAL1引腳為晶體或陶瓷諧振器內(nèi)部反饋電路的反饋輸入,。為了得到一個精確的內(nèi)部時鐘,,需要在XTAL1引腳加入一個晶體或陶瓷諧振器。
1.1 A/D,、D/A轉(zhuǎn)換模塊
自整角機,、旋轉(zhuǎn)變壓器是一種高精度、高可靠性的角度傳感器,,為了實現(xiàn)與計算機的接口,,國外開發(fā)了SDC/RDC系列自整角機、旋轉(zhuǎn)變壓器-數(shù)字轉(zhuǎn)換器。國內(nèi)相應研制開發(fā)了ZSZ/XSZ系列,。本設計采用了14ZSZ/XSZ,,轉(zhuǎn)換器精度360°/214≈0.022°,滿足系統(tǒng)指標,。當模擬量被轉(zhuǎn)換成數(shù)字量后,,接口電路又需要將某路含有航向控制系統(tǒng)需要用到的角度、位置等信息的數(shù)字量轉(zhuǎn)換為模擬量輸出,,這里采用14SZZ/SXZ將數(shù)字量轉(zhuǎn)換為模擬量并從指示器輸出,,用于控制航向系統(tǒng)位置、速度等,。
1.1.1 14ZSZ/XSZ A/D轉(zhuǎn)換器[2]
14ZSZ/XSZ是一種小型化14位連續(xù)跟蹤自整角機/旋轉(zhuǎn)變壓器-數(shù)字轉(zhuǎn)換器,。它采用二階伺服回路,數(shù)據(jù)輸出具有三態(tài)鎖存功能,,轉(zhuǎn)換原理如圖2,。當BUSY=0時,數(shù)據(jù)穩(wěn)定,,可取數(shù)據(jù),;BUSY=1時,數(shù)據(jù)在變化,,不能取數(shù)據(jù),;INH=0時,數(shù)據(jù)穩(wěn)定,,可取數(shù)據(jù),;INH=1時,刷新鎖存器,;轉(zhuǎn)換器控制信號由選擇使能信號,、字節(jié)選擇信號BYSEL進行控制。使能信號是邏輯高電平,,輸出為高阻狀態(tài),;使能信號為邏輯低電平,輸出數(shù)字角Φ,。字節(jié)選擇信號BYSEL是邏輯高電平,,1~8位輸出數(shù)字角D1~D8,9~14位輸出數(shù)字角D9~D14,;字節(jié)選擇信號BYSEL是邏輯低電平,,1~8位輸出數(shù)字角D9~D14。
雙通道14位跟蹤型自整角機/旋轉(zhuǎn)變壓器-數(shù)字轉(zhuǎn)換器14ZSZ/XSZ-S02是為要求體積小,、重量輕,、費用低的應用場合而設計,。每路輸入可以是自整角機/旋轉(zhuǎn)變壓器信號,并且具有兩個獨立的參考輸入端,,因而每個通道可以具有不同的參考頻率,。經(jīng)三態(tài)鎖存器輸出與TTL電平兼容的14位并行自然二進制碼,在數(shù)據(jù)讀取時無須中斷轉(zhuǎn)換過程,。該模塊有A_B和/OE控制線選擇通道[2],,并將相應轉(zhuǎn)換結(jié)果送到公共數(shù)據(jù)輸出端口。轉(zhuǎn)換器檢測/BIT[2]輸出信號可用于不間斷系統(tǒng),,以指示轉(zhuǎn)換器是否處于精確跟蹤狀態(tài)。A_B=1,,選CHA,;A_B=0,選CHB,; OE=0,,數(shù)據(jù)有效;OE=1,,DB1~DB14高阻,。該模塊沒有高低字節(jié)選擇信號。
1.1.2 14SZZ/SXZ 數(shù)字-自整角機轉(zhuǎn)換器[2]
14SZZ/SXZ將14位自然二進制數(shù)字角度量轉(zhuǎn)換成含有該數(shù)字角度量的自整角機/旋轉(zhuǎn)變壓器形式的模擬電壓輸出,,如圖3,。ENH控制高8位,ENL控制低6位,;ENH/ENL=1,,轉(zhuǎn)換器輸出隨輸入量變化,ENH/ENL同時等于0,,轉(zhuǎn)換器輸出鎖存為下降沿時刻,。14位自然二進制數(shù)字角度量采用了TTL/CMOS數(shù)字鎖存,輸入和輸出交流信號采用輸入,、輸出變壓器隔離,。這樣,使得轉(zhuǎn)換器在使用中不用外加數(shù)字鎖存器,,不用外接參考變壓器和輸出變壓器,,可廣泛應用與數(shù)字至軸角量的轉(zhuǎn)換,是計算機與控制系統(tǒng)之間的理想接口電路,。
1.2 電源管理模塊
系統(tǒng)的其他部分器件型號確定后,,所需的功率、電流,、電壓大小便確定了,,最后設計電源系統(tǒng)以保證系統(tǒng)可靠運行。由于電路的頻率特性,電磁輻射,、噪音會干擾到達電路器件的工作電壓,,而一些芯片對工作電壓的要求非常高(一般要求電壓偏差不超過5%),一旦超過范圍長時間工作則容易縮短壽命甚至損壞,。因此,,在電路中需要設計實時監(jiān)控電壓的電壓監(jiān)控電路,為芯片提供合格而穩(wěn)定的電壓,。
本設計采用低壓差線性穩(wěn)壓器LT1117IST-3.3給系統(tǒng)中對電壓要求高的芯片提供穩(wěn)定電壓,。但僅有完美供電系統(tǒng)是不夠的,有時VCC上一個很小的壓降就可能破壞存儲器﹑內(nèi)部寄存器中的內(nèi)容,,但卻并不產(chǎn)生復位,,從而造成軟件的誤動作。因此,,在系統(tǒng)中加入電源監(jiān)控電路TPS3307以保障系統(tǒng)長期穩(wěn)定運行,。
2 軟件設計
電路中,單片機軟件編程完成的工作有:與液晶屏的通信,、加熱控制,、亮度控制、按鍵檢測及處理,、數(shù)據(jù)處理,、數(shù)據(jù)傳輸、顯示界面的控制,。
2.1 初始化單元
系統(tǒng)上電后,,先對看門狗初始化,喂狗時間間隔為47.406ms,;初始化CPU端口,,將P0.0、P0.1分配給串口0,,將P0.2,、P0.3分配給串口1;配置系統(tǒng)時鐘為外部時鐘,,選取22.118 4MHz晶振,;初始化串口1,波特率為9 600B,;設置定時器,,每35ms中斷一次;最后初始化中斷系統(tǒng),,將所有中斷全部禁止,。
2.2 數(shù)據(jù)處理顯示單元
輸入數(shù)據(jù)經(jīng)過A/D模塊轉(zhuǎn)換成14位數(shù)字信號,,如角度信號0°~360°對應輸出數(shù)值0~214。該序列數(shù)字信號由CPLD按高,、低字節(jié)或一次性讀入緩存,,緩存再按高、低字節(jié)寫入單片機的數(shù)據(jù)總線,。單片機將高低字節(jié)合并送到顯示屏,,并根據(jù)顯示要求處理,使得液晶屏讀數(shù)與模擬輸入對應,,如圖形板0x8000對應360°,,則A/D轉(zhuǎn)換結(jié)果要右移2位。同理,,輸出數(shù)字信號由CPLD從單片機按字節(jié)讀入緩存,,再從緩存輸出到D/A轉(zhuǎn)換器。
2.3 定時工作及存儲器初始化單元
定時單元改變個別全局變量值,,用于其他部分定時的需求,并對系統(tǒng)按鍵進行定時識別,。按鍵采用查詢的方法判斷是否真的有鍵被按下,,以長按或短按決定數(shù)據(jù)變化速度快慢。本電路中共有5個按鍵,,可看作1×5行列式鍵盤,。存儲器單元用于將雙口RAM存儲器清空。
2.4 通信模塊
單片機通過串口1與液晶屏通信,,包括液晶屏控制,、亮度、溫度讀寫的操作子模塊,,流程如圖4,。
通信流程如圖5,每送一個字節(jié)液晶屏的讀寫命令,,液晶屏便會返回一個字節(jié)表示溫度或狀態(tài)的數(shù)據(jù),,根據(jù)返回數(shù)值執(zhí)行下一個動作。讀取液晶屏狀態(tài)可以獲得溫度傳感器是否工作的信息,。設置背光燈溫度,,要先判斷溫度傳感器是否有效,如無效則關(guān)閉加熱電源,,否則會損壞器件,;同時將默認的自動模式改為人工模式,以免系統(tǒng)反復試圖加熱,。設置燈控制時,,液晶屏返回兩個不同值用于設置白天或夜晚模式,。讀取液晶屏溫度后,根據(jù)大小值判斷是否需要加熱,,通常不應低于0℃,。
2.5 單片機主程序模塊
主程序流程如圖6,先清空雙口RAM,,查詢液晶屏溫度等狀態(tài),,小于0°且溫度傳感器有效則開加熱電源,通過串口1對液晶屏進行初始化設置,,自檢測后,,讀取輸入的信號并進行處理,傳輸給液晶屏顯示,,將數(shù)字信號轉(zhuǎn)換為模擬輸出,。對亮度等按鍵進行處理,當長按時,,按鍵計數(shù)而不改變相應的值,,松手后才改變亮度等值,這就實現(xiàn)了長按數(shù)據(jù)變化加快的功能,。
本文提出的基于單片機和CPLD的液晶航向指示器的接口電路設計,,能夠處理自整角機、旋轉(zhuǎn)變壓器,、電壓電流計信號等模擬輸入,,能夠接收系統(tǒng)的按鍵控制,與液晶屏通信正常,,顯示清晰正確,,輸出數(shù)據(jù)正確。設計方案在實際產(chǎn)品中得到應用,,并取得良好的通信和顯示效果,。
參考文獻
[1] 潘琢金.C8051F020/1/2/3混合信號ISP FLASH微控制器數(shù)據(jù)手冊.沈陽新華龍電子有限公司,2002.
[2] 連云港杰瑞電子有限公司.2007數(shù)據(jù)手冊—軸角分冊,,2007.