田銀磊,李 飛
(1.濟源市物聯(lián)網(wǎng)技術重點實驗室,河南 濟源 459000;2.濟源職業(yè)技術學院,河南 濟源 459000)
海洋表面溫度的測定主要有2 種,使用較為廣泛的是利用海洋、環(huán)境、浮標、船舶輻射儀以及其他海洋測量技術[1–2]。由于利用衛(wèi)星紅外光譜對海洋表面輻射進行了測量,采用常規(guī)的浮標或其他船體接觸法測得的SST 會發(fā)生變化,一般只能獲得米量級的溫度值,從而證明了采用衛(wèi)星反演SST 的方法有極大的誤差。通過對海洋表面溫度的測定,采用紅外輻射儀進行海洋表面溫度的測定是一種較好的方法。近幾年,利用紅外輻射計對海洋表面的溫度進行測定,其準確度可達0.1 K。
英國南安普敦國家海洋研究中心開發(fā)的一種紅外輻射儀,它可以在不需要維修的情況下,自行操作和校正。其光譜范圍為9.8~11 μm,探測深度在10~20 μm 之間。船用紅外線輻射儀可以在不需要維修和操作者干涉的情況下,在自動觀察船上持續(xù)工作3 個月。因為它的全部紅外線線路都是用一個溫度相差12K 的參考黑體來進行標定[3–4]。
本文的研究目標是改進紅外輻射儀的人機互動,增強其數(shù)據(jù)的安全性。紅外輻射儀最大問題是資料不夠安全,只要有一部計算機,就可以在不工作的情況下保存2~3 個月的資料。在途中發(fā)生故障時,會失去資料。另外,紅外輻射儀所獲取的原始數(shù)據(jù)都在電腦顯示屏上實時滾動,很難對儀器的工作狀況進行實時定位。同時,在采用紅外線輻射儀的探測設備中,每一個字符或信號都有超過20 條指令,這會讓使用者難以順利地進行測試。紅外輻射儀安裝多年,GPS 組件失效,導致紅外輻射計長度、寬度、GPS 時間等原始資料丟失,不能直接利用[5]。
由于數(shù)據(jù)的顯示和存儲功能同時進行,所以在觸摸屏的操作中,不需要顯示和存儲的功能。所以,在整個軟件架構的設計中,采用一個周期來輪流執(zhí)行前面的2 種函數(shù)。同時,通過觸控鍵來探測有無觸控行為,并按下按鍵,切換至觸控接口。然后,通過主控芯片的實時時鐘功能,實現(xiàn)永久的日歷功能,并在任意數(shù)據(jù)的起始位置加入時間信息以進行存儲和顯示。在設計資料的展示與儲存方面,紅外輻射儀可將其傳送至手提電腦及該系統(tǒng)。所以,首先要進行數(shù)據(jù)接收機的設計。接收部分采用DMA(DMA)的雙重緩存和直接存儲器的設計。紅外輻射儀經(jīng)串行接口傳輸資料給主芯片,然后再將其送入2 個緩沖存儲器,用換行符來標識所收到的資料。在偵測到換行符后,時間戳將被加入至資料列的開始。DMA 控制器能夠利用內(nèi)存中的CPU 資源,自動的聯(lián)接接收和完成其他工作,從而提高工作效率。
一方面,通過串口和DMA 控制器接收到的原始數(shù)據(jù),進行存儲器備份,并對實時接收的數(shù)據(jù)進行處理,選取與診斷設備運行狀態(tài)相關的信息以及海溫、時間、經(jīng)緯度等信息。LCD 顯示裝置是一種采用LCD顯示模塊(LCDModule)實現(xiàn)的無源顯示裝置,其自身不能發(fā)光,但其利用液晶的光調(diào)制性質(zhì),所以只能依靠周圍的光線,屬于無源顯示裝置。無源顯示模式的一個顯著優(yōu)點是LCD 只需少量的能源即可顯示圖像信息或文字,因此LCD 具有低工作電壓、低功耗等優(yōu)點,同時LCD 具有無輻射、易于彩色化、體積小、畫質(zhì)高、不閃爍等一系列特性,因此LCD 顯示效果優(yōu)異。該系統(tǒng)采用觸摸屏控制,完成紅外輻射儀的原始數(shù)據(jù)和處理后的重要信息轉(zhuǎn)換,擁有一個簡單的操作界面,以簡化操作程序和操作難度。
嵌入式系統(tǒng)的硬件設計直接關系到后期軟件開發(fā)的成敗,同時也關系到整個系統(tǒng)的穩(wěn)定。在硬件設計中,首先要明確系統(tǒng)的要求,其次才能根據(jù)任務要求進行整體的硬件設計。M3 處理器采用3 條管線,并帶有分支預測功能。在總線架構中,主要有ICCode 總線、DCode總線、系統(tǒng)總線以及DMA總線。AHB/APB 橋可以實現(xiàn)AHB 與2 個APB 總線的同步連接??偩€結構如圖1 所示。
圖1 總線結構Fig.1 Bus structure
CH376 具有通用的8 位串口、SPI 接口,以及異步串口。由于SPI 接口可以達到2M/24MHz 的傳輸速率,能滿足系統(tǒng)的需求,并且SPI 接口占用IO 插頭較少,所以采用S P I 通信技術來完成主控制器和CH376 芯片的聯(lián)接。串口設備通信接口簡稱SPI,SPI 接口僅需4 條線路,并且通信協(xié)議簡單,所以是一種廣泛用于晶片級別的通信接口。
其中,主控制芯片包含MISO(主接收)引腳、MOSI(從器)引腳和時鐘SCK 引腳。另外,在必要時,將主控芯片的PC0 端口設定為浮動輸入方式,而PA1 管腳則設定為推挽輸出方式。
在進行紅外輻射儀輸出內(nèi)容的顯示時,采用7 英寸TFT 液晶顯示屏+SSD1963 控制器,并利用FSMC 控制器實現(xiàn)對紅外輻射儀輸出內(nèi)容的實時顯示。7 英寸TFT 液晶顯示屏采用AT070TN92 型液晶顯示屏。這是一款高分辨率800*480、RGB3*8 行RGB 顏色模式的大顯示屏,顯示屏大小為154.08 mm×85.92 mm,并且重量150 g。它的特點是清晰度高,對比度高,速度快。
其中的SSD1963 是晶門公司開發(fā)的一款具有1245K 緩沖,最高支持864×480 像素的高分辨率液晶顯示器。該芯片配有專用的微處理器接口,能夠接收各種類型微處理器的圖形數(shù)據(jù)和指令??梢詫ONF管腳設定為8080 或6800 型,與主控芯片相連接。在8080 模式下拉高高電平,進行多路復用,分別控制讀出和寫入。將8080 模式與主控芯片相結合。該芯片還能實現(xiàn)硬件屏幕的轉(zhuǎn)動,并能實現(xiàn)90°,180°和270°的旋轉(zhuǎn);支持動態(tài)背光源調(diào)整,即利用PWM(PWM)不同工作比例的脈寬調(diào)制(PWM)來動態(tài)調(diào)整背光亮度。
該系統(tǒng)使用KeilMDK 和uVISion4 軟件的綜合開發(fā)平臺,全部的功能都以C 語言為基礎。雖然匯編語言的目的是為了開發(fā)機器語言,但是其運行效率要高得多。在嵌入式系統(tǒng)中,由于其復雜性、可讀性差、易移植性差等原因,使得其在后期的維護費用大大提高,目前還沒有成為主流的嵌入式系統(tǒng)。相對于單純的軟件開發(fā)來說,嵌入式系統(tǒng)的開發(fā)既要進行軟件模擬、調(diào)試,又要進行硬件模擬和調(diào)試。這樣可以加速系統(tǒng)的研制,提高系統(tǒng)的可靠性。其中,選擇ULINK2作為硬件仿真軟件,ULINK2 是ARM 的最新硬件仿真軟件,適用于KeilMDK。利用KeilMDK 調(diào)試器與ULINK2 相結合,開發(fā)人員可以將代碼下載到具有快速的Flash 編程功能。
本文通過CH376 主控芯片實現(xiàn)對U 盤的數(shù)據(jù)寫入,通信方式時序圖如圖2 所示。USB 系統(tǒng)采用CH376作為主要器件,U 作為從機,通過USB 進行數(shù)據(jù)通信。本文以SPI 通信的形式對CH376 檔案管理芯片進行控制。為了使主控芯片的SPI 與CH376SPI 通信需求相一致,需要對SPI 進行初始化。在SPI 初始化過程中,時鐘和管腳的配置與前面提到的串口初始化相似,著重于SPI 通信協(xié)定的組態(tài)。首先,研制CH376 通信協(xié)議。
圖2 通信方式時序圖Fig.2 Communication mode sequence diagram
由于本系統(tǒng)使用了SSD1963 外LCD 管理芯片,顯示器原理框圖如圖3 所示。因此,LCD 顯示屏主要采用SSD1963 的LCD 管理芯片進行控制,它的主要任務是設計FSMC、SSD1962 通信、SSD1964 的初始化,并編寫相應的驅(qū)動函數(shù)。FSMC 的結構由2 部分組成:一是開啟對應FSMC 管腳的外部時鐘,并對各管腳的輸入和輸出方式進行配置。二是對FSMC 運行過程中的內(nèi)存類型、總線模式以及其他有關的參數(shù)進行初始化。在FSMC 設定好之后,只要把資料寫進FSMC 的合適的位址,F(xiàn)SMC 就能產(chǎn)生合適的時鐘,把資料傳送給外接裝置。
圖3 顯示器原理框圖Fig.3 Principle block diagram of display
這里判斷矩形的幾個頂點坐標:
對該系統(tǒng)進行相應的測試。數(shù)據(jù)采用串口工具進行調(diào)試,實現(xiàn)對紅外輻射計數(shù)據(jù)的傳送,將串口調(diào)試儀器設定成與紅外輻射計數(shù)據(jù)傳送格式一致的數(shù)據(jù)傳送后,通過RS‐232 串口線路與計算機相連,以接收、存儲和顯示數(shù)據(jù)。觸摸屏操作的主要功能是在科學考察船上進行,將紅外線輻射儀的串行接口與本系統(tǒng)相連,并根據(jù)不同的指令,向其發(fā)出不同的控制指令。系統(tǒng)采用計算機串口調(diào)試工具軟件,通過計算機仿真紅外線輻射儀傳輸數(shù)據(jù),實現(xiàn)了數(shù)據(jù)備份和LCD 顯示。在科學考察船與紅外線輻射儀相連時,對觸摸屏的功能進行了檢測。經(jīng)過實驗證明,該系統(tǒng)具有數(shù)據(jù)存儲、重點數(shù)據(jù)的顯示、數(shù)據(jù)的切換、觸摸屏等功能。
本文詳細闡述船載紅外輻射計數(shù)器各模塊在軟件中的具體實施。其中,包含了雙緩存和DMA 兩種接收方式的實施流程。在數(shù)據(jù)存儲器模塊中,分析了U 盤管理操作芯片CH376 的SPI 通信時序,設計了U盤上的新的文字文件流,以及U 盤上的數(shù)據(jù)寫入過程和程序的實現(xiàn);在LCD 模塊中,簡單介紹了LCD 控制器的內(nèi)部結構圖、數(shù)據(jù)傳輸方式,并根據(jù)所需的主要功能模塊,分別編寫了初始化功能和圖形繪制功能,為LCD 顯示軟件提供基本的數(shù)據(jù)顯示接口和觸控接口。