基于Cortex-M3的TFT觸摸屏在環(huán)境監(jiān)控系統(tǒng)中的應(yīng)用
系統(tǒng)采用12 MHz的無(wú)源晶振,為了保證晶振的諧振頻率和輸出幅度,在晶振的兩個(gè)引腳上加入了兩個(gè)22 pF的負(fù)載電容。在不影響電路正常工作的情況下,為了簡(jiǎn)化電路設(shè)計(jì),沒(méi)有將數(shù)字電路和模擬電路區(qū)分開(kāi)來(lái),VDDA與VDD直接相連、GNDA與GND直接相連。但是為了追求更優(yōu)秀的模擬性能(ADC和模擬比較器模塊),可以另外安排一路3.3 V電源,連接到VDDA和GNDA,使其與VDD和GND分開(kāi)。LPC1758部分電路圖如圖4所示。本文引用地址:http://m.butianyuan.cn/article/157048.htm
系統(tǒng)采用如圖5所示的RC復(fù)位電路。復(fù)位電路中的二極管是為了解決電源毛刺和電源緩慢下降等問(wèn)題,而104電容可避免高頻諧波對(duì)電路的干擾。
2.3 TFT觸摸屏方案
TFT液晶顯示方案包括觸摸控制和液晶顯示兩個(gè)部分。為了保證顯示的速度要求和系統(tǒng)的穩(wěn)定性,觸摸屏控制器選用的是TI公司的TSC20 46,該控制器為SPI接口,具有觸摸中斷功能,性價(jià)比很高。而液晶屏選用的是SPFD5408A,該屏幕為3.5英寸,具有高速8,9,16,18位并行接口??梢燥@示16位和18位的RGB色彩。
觸摸屏控制電路主要是TSC2046的外圍電路。MISO,MOSI是TSC2046與MCU之間的信號(hào)線。SCK是時(shí)鐘線。X+/-,Y+/-是觸摸屏的信號(hào),INT中觸摸中斷信號(hào)。VCC和VCCl是電路的供電信號(hào)。在輸入引腳為了保證電源的波形穩(wěn)定性,避免高頻諧波對(duì)TSC2046的干擾,加入了1個(gè)0.1μF的濾波電容。觸摸屏控制電路如圖6所示。
TFT液晶顯示電路包括模式選擇,16位接口,觸摸屏接口三個(gè)部分。SPFD5408A接口模式有7種模式,本設(shè)計(jì)中用的是16位并行接口模式。X+/-,Y+/-是四線電阻式觸摸屏的輸出線。
3 軟件設(shè)計(jì)與實(shí)現(xiàn)
為了提高系統(tǒng)的性能和滿足多任務(wù)處理的要求,系統(tǒng)中合理地移植了μCOS-Ⅱ操作系統(tǒng)。
μCOS-Ⅱ可以簡(jiǎn)單地看作是一個(gè)多任務(wù)的調(diào)度器,在這個(gè)任務(wù)調(diào)度器之上完善并添加了很多任務(wù)操作系統(tǒng)相關(guān)的一些系統(tǒng)服務(wù)。μCOS-Ⅱ 90%的代碼用C語(yǔ)言編寫(xiě),具有可移植性。移植工作的絕大部分都集中在多任務(wù)切換的實(shí)現(xiàn)上,因?yàn)檫@部分代碼主要是用來(lái)保存和恢復(fù)處理器現(xiàn)場(chǎng)(即相關(guān)寄存器),因此不能用C語(yǔ)言,只能使用特定的處理器匯編語(yǔ)言完成。為了使適時(shí)內(nèi)核μCOS-Ⅱ能在Cortex-M3處理器上運(yùn)行,同時(shí)為了保證代碼不依賴于編譯器和良好的擴(kuò)展性。采用了不依賴于編譯器的數(shù)據(jù)類(lèi)型,使用軟中斷SWI作為底層接口。移植μCOS-Ⅱ到Cortex-M3內(nèi)核需要3個(gè)文件:C語(yǔ)言頭文件(OS_CPU.H),C程序源文件(OS_CPU_C.C),匯編程序源文件(OS_CPU_A.ASM)。除此之外,還有一個(gè)文件定義的匯編宏也是移植的重點(diǎn),它是μCOS-Ⅱ?yàn)?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/Cortex-M3">Cortex-M3通用的中斷服務(wù)程序的匯編和C函數(shù)的接口代碼。
評(píng)論