999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STM32F4的多通道串口驅(qū)動(dòng)TFT液晶屏顯示系統(tǒng)設(shè)計(jì)

2020-05-06 13:46:58任克強(qiáng)王傳強(qiáng)
液晶與顯示 2020年5期
關(guān)鍵詞:系統(tǒng)設(shè)計(jì)

任克強(qiáng),王傳強(qiáng)

(江西理工大學(xué) 信息工程學(xué)院,江西 贛州 341000)

1 引 言

TFT液晶屏是嵌入式系統(tǒng)中重要的組成部分,但由于TFT液晶屏驅(qū)動(dòng)較為復(fù)雜,對(duì)處理器有較高的要求,在大部分8位和16位機(jī)、部分32位機(jī)中較難實(shí)現(xiàn)驅(qū)動(dòng)。文獻(xiàn)[1]和文獻(xiàn)[2]利用STM32處理器的FSMC功能實(shí)現(xiàn)了對(duì)TFT液晶屏的驅(qū)動(dòng),但此方法具有一定的局限性,只能在具有FSMC功能的處理器中實(shí)現(xiàn)TFT液晶屏的驅(qū)動(dòng),無(wú)法滿足沒(méi)有FSMC功能的處理器(如51單片機(jī)等處理器[3-4])驅(qū)動(dòng)TFT液晶屏的需求。

針對(duì)上述問(wèn)題,本文設(shè)計(jì)了一種多通道串口控制驅(qū)動(dòng)MUC接口模式的TFT液晶屏的顯示系統(tǒng),該系統(tǒng)提供4個(gè)控制TFT液晶屏的串口通道,使用TFT液晶屏的外部處理器只需有串口或通過(guò)I/O口模擬串口就可以使用TFT液晶屏,簡(jiǎn)化了TFT液晶屏驅(qū)動(dòng)和使用,降低了使用TFT液晶屏外部處理器的功能要求,拓展了TFT液晶屏的適應(yīng)性和使用范圍。

2 系統(tǒng)硬件設(shè)計(jì)

本文設(shè)計(jì)的TFT液晶屏顯示系統(tǒng)由STM32F4處理器和TFT液晶屏兩大部分組成,硬件框圖如圖1所示。

圖1 系統(tǒng)硬件框圖Fig.1 Hardware framework of system

利用STM32F4的FSMC功能驅(qū)動(dòng)TFT液晶屏,并通過(guò)其串口向使用TFT液晶顯示系統(tǒng)的外部處理器提供控制通道。STM32F4的時(shí)鐘頻率高達(dá)168 MHz,具有8個(gè)串行口和1個(gè)FSMC接口,可模擬8080時(shí)序驅(qū)動(dòng)TFT液晶屏[5-7]。最大支持4個(gè)通道同時(shí)接入,外部處理器通過(guò)串口訪問(wèn)STM32F4內(nèi)部預(yù)先燒錄的接口程序,實(shí)現(xiàn)對(duì)TFT液晶屏的控制。STM32F4處理器主存儲(chǔ)塊具有1 M FLASH,分為11個(gè)扇區(qū),主存儲(chǔ)塊FLASH扇區(qū)劃分如表1所示。本設(shè)計(jì)將這1 M的FLASH劃分為兩個(gè)部分,其中:扇區(qū)0~8為程序存儲(chǔ)區(qū),扇區(qū)9~11為漢字字庫(kù)存儲(chǔ)區(qū)。

液晶驅(qū)動(dòng)控制器是集成于TFT液晶屏的一個(gè)驅(qū)動(dòng)芯片,每種控制器具有唯一的序列號(hào),雖然控制器型號(hào)眾多,但大部分的底層驅(qū)動(dòng)方式是一樣的,可以通過(guò)STM32F4模擬8080時(shí)序進(jìn)行驅(qū)動(dòng),差別主要在于控制指令的不同。因此,為了可以兼容多種不同型號(hào)的MUC接口TFT液晶屏,本設(shè)計(jì)采用讀取液晶驅(qū)動(dòng)控制器的序列號(hào)進(jìn)行液晶屏的識(shí)別,從而執(zhí)行對(duì)應(yīng)屏幕型號(hào)的控制指令,實(shí)現(xiàn)多種不同型號(hào)液晶屏的驅(qū)動(dòng)。本文設(shè)計(jì)的TFT液晶顯示系統(tǒng)可驅(qū)動(dòng)60.1~177.8 mm(2.4~7 in)5種尺寸,包括ILI9341、IGDP453和SSD1936等15種不同驅(qū)動(dòng)芯片的MUC接口TFT液晶屏。

表1 STM32F4主存儲(chǔ)塊Flash扇區(qū)劃分

Tab.1 Sector division of FLASH in STM32F4 main memory

扇區(qū)號(hào)地址大小扇區(qū)00x08000000-0x08003FFF16 kB扇區(qū)10x08004000-0x08007FFF16 kB扇區(qū)20x08008000-0x0800BFFF16 kB扇區(qū)30x0800C000-0x0801FFFF16 kB扇區(qū)40x08020000-0x0803FFFF64 kB扇區(qū)50x08040000-0x0805FFFF128 kB???扇區(qū)90x080C0000-0x080DFFFF128 kB???扇區(qū)110x080E0000-0x080FFFFF128 kB

3 系統(tǒng)軟件設(shè)計(jì)

圖2 系統(tǒng)軟件流程圖Fig.2 Flow chart of system software

μC/OS-Ⅲ是一種可移植、可剪裁的實(shí)時(shí)多任務(wù)操作系統(tǒng),專(zhuān)為嵌入式系統(tǒng)設(shè)計(jì),可與應(yīng)用程序一起固化到ROM中。μC/OS-Ⅲ以其優(yōu)異的性能和較高的穩(wěn)定性已經(jīng)被移植到8位、16位、32位和64位等多種不同處理器中[8-11]。μC/OS-Ⅲ在處理器的RAM空間允許條件下,可創(chuàng)建無(wú)數(shù)任務(wù)。本文系統(tǒng)軟件全部是在μC/OS-Ⅲ操作系統(tǒng)的基礎(chǔ)上建立的。

系統(tǒng)軟件流程圖如圖2所示。程序運(yùn)行時(shí)首先調(diào)用OSInit()完成對(duì)整個(gè)操作系統(tǒng)所有變量和數(shù)據(jù)結(jié)構(gòu)的初始化,自動(dòng)創(chuàng)建空閑任務(wù),完成操作系統(tǒng)運(yùn)行前的準(zhǔn)備工作。然后調(diào)用OSTaskCreate()創(chuàng)建一個(gè)起始任務(wù),起始任務(wù)運(yùn)行時(shí)將創(chuàng)建5個(gè)任務(wù),分別是1個(gè)串口配置任務(wù)和4個(gè)控制串口通道任務(wù),將串口配置任務(wù)設(shè)置為最高級(jí),然后將起始任務(wù)刪除,起始任務(wù)只在程序運(yùn)行時(shí)執(zhí)行一次。之后將創(chuàng)建的5個(gè)任務(wù)添加到就緒列表,調(diào)用OSStart()啟動(dòng)μC/OS-Ⅲ,開(kāi)始多任務(wù)之間的調(diào)度。按照任務(wù)的優(yōu)先級(jí),串口配置任務(wù)將首先被執(zhí)行,此時(shí)采用非阻塞延時(shí)的方式讓系統(tǒng)延時(shí)5 s,在這5 s內(nèi)若有更改配置操作則可進(jìn)行人工修改配置,否則跳過(guò),保留串口默認(rèn)配置,隨之將串口配置任務(wù)刪除,將不會(huì)再被執(zhí)行,最后操作系統(tǒng)將會(huì)在空閑任務(wù)和4個(gè)控制串口通道任務(wù)之間循環(huán)調(diào)度。

3.1 液晶顯示驅(qū)動(dòng)設(shè)計(jì)

本設(shè)計(jì)所支持的TFT液晶屏都是MUC接口的16位8080并口驅(qū)動(dòng)方式,完全可以通過(guò)FSMC模擬8080時(shí)序進(jìn)行驅(qū)動(dòng),只是初始化控制指令有所差別,只需根據(jù)讀取TFT液晶屏的ID序列號(hào)判斷屏幕型號(hào),調(diào)用不同的初始化程序完成液晶屏驅(qū)動(dòng)顯示。TFT液晶屏的信號(hào)線包括:數(shù)據(jù)總線(D0~D15)、設(shè)置寫(xiě)入數(shù)據(jù)/命令(RS)、寫(xiě)使能(WR)、讀使能(RD)、片選(CS)、復(fù)位(RST)和背光(BL),在控制時(shí)只需要用到D0~D15、RS、WR、RD和CS引腳。FSMC模式A讀寫(xiě)時(shí)序如圖3所示,TFT液晶屏16位并口8080接口時(shí)序如圖4所示,對(duì)比圖3和圖4可知,TFT液晶屏沒(méi)有地址線,具有一個(gè)設(shè)置寫(xiě)入數(shù)據(jù)/命令(RS)引腳,通過(guò)此引腳決定傳輸?shù)氖菙?shù)據(jù)還是命令,可以將此信號(hào)線看作FSMC的其中一個(gè)地址線,將RS引腳連接到FSMC A0地址線。當(dāng)FSMC寫(xiě)地址0時(shí),對(duì)于TFT液晶屏即為寫(xiě)命令;當(dāng)FSMC寫(xiě)地址1時(shí),對(duì)于TFT液晶屏即為寫(xiě)數(shù)據(jù)。這樣就可以通過(guò)FSMC模擬16位并口8080時(shí)序完成對(duì)TFT液晶屏的控制操作。

(a)讀時(shí)序(a)Read timing

(b)寫(xiě)時(shí)序(b)Write timing圖3 FSMC模式A讀寫(xiě)時(shí)序Fig.3 FSMC mode A read and write timing

圖4 16位并口8080接口時(shí)序Fig.4 16 bit parallel port 8080 interface timing

3.2 串口通信程序設(shè)計(jì)

串口是連接外部處理器和本文TFT液晶屏顯示系統(tǒng)的橋梁,所有外部處理器傳入的所有數(shù)據(jù)和指令都是通過(guò)串口進(jìn)行發(fā)送。本設(shè)計(jì)采用STM32F4的4個(gè)串口作為傳輸通道,利用DMA方式進(jìn)行傳輸。DMA傳輸數(shù)據(jù)的本質(zhì)是將數(shù)據(jù)從一個(gè)地址空間復(fù)制到另一個(gè)地址空間,無(wú)需CPU參與,大大減輕了CPU的負(fù)擔(dān)。

本設(shè)計(jì)的系統(tǒng)配置界面如圖5所示。圖5(a)界面顯示當(dāng)前4個(gè)串口的默認(rèn)波特率都為9.6 kB/s,通過(guò)觸摸屏幕可以選擇是否配置串口波特率或者直接跳過(guò)配置;圖5(b)為串口配置界面,可通過(guò)觸摸屏幕完成4個(gè)串口的波特率配置。

(a) 設(shè)備信息及選擇界面(a) Equipment information and selection interface

(b) 串口配置界面(b) Serial port configuration interface圖5 系統(tǒng)配置界面Fig.5 System configuration interface

3.3 驅(qū)動(dòng)控制接口設(shè)計(jì)

外部處理器在控制TFT液晶屏顯示系統(tǒng)前,先發(fā)送一系列的設(shè)置數(shù)據(jù),STM32F4處理器接收這些數(shù)據(jù)并進(jìn)行數(shù)據(jù)解析,獲取端口號(hào),選擇是顯示圖像還是顯示字符、數(shù)字或者漢字。如果顯示圖像,首先會(huì)判斷圖像的顯示坐標(biāo)和大小,然后接受串口發(fā)來(lái)的圖像數(shù)據(jù),寫(xiě)入到液晶屏進(jìn)行顯示。如果顯示字符、數(shù)字或者漢字,首先會(huì)判斷顯示字體的大小、長(zhǎng)度和坐標(biāo),設(shè)置背景顏色和字體顏色,然后調(diào)取STM32F4內(nèi)部FLASH存入的字模數(shù)據(jù)寫(xiě)入到液晶屏進(jìn)行顯示。驅(qū)動(dòng)控制接口調(diào)用流程如圖6所示。

圖6 驅(qū)動(dòng)控制接口調(diào)用流程圖Fig.6 Flow chart of driver control interface calling

4 實(shí)驗(yàn)結(jié)果

首先測(cè)試在不同波特率下的數(shù)據(jù)傳輸速度,外部處理器通過(guò)串口通道發(fā)送數(shù)據(jù)控制TFT液晶屏顯示系統(tǒng),傳輸速度的理論值與實(shí)際值如表2所示。如果選擇最為常用的9.6 kB/s波特率,每秒可以傳輸9 400字節(jié),若傳輸長(zhǎng)寬為16×16像素的漢字或者字符,每秒可以傳輸約29個(gè)漢字

表2 不同波特率的數(shù)據(jù)傳輸速度

Tab.2 Data transfer speeds with different baud rates (kB·s-1)

波特率理論值實(shí)際值 2.4 2.4 2.34.8 4.8 4.7 9.6 9.6 9.4 115.2 115.2 111.3 256 256 232.7 2 0002 000 1 969

或者字符。

采用11 cm(4.3 in)800×480分辨率的TFT液晶屏進(jìn)行顯示測(cè)試,在9.6 kB/s波特率下測(cè)試外部處理器通過(guò)串口控制TFT液晶屏顯示漢字、字符和數(shù)字的效果,測(cè)試結(jié)果如圖7所示。其中,圖7(a)為1個(gè)外部處理器控制TFT液晶屏顯示系統(tǒng)的全屏顯示結(jié)果;圖7(b)為2個(gè)外部處理器同時(shí)控制TFT液晶屏顯示系統(tǒng)的2分屏顯示結(jié)果;圖7(c)為3個(gè)外部處理器同時(shí)控制TFT液晶屏顯示系統(tǒng)的3分頻顯示結(jié)果;圖7(d)為4個(gè)外部處理器同時(shí)控制TFT液晶屏顯示系統(tǒng)的4分頻顯示結(jié)果。當(dāng)多個(gè)處理器通過(guò)串口通道同時(shí)控制TFT液晶顯示系統(tǒng)時(shí),顯示效果穩(wěn)定流暢。

(a) 單通道控制顯示(a) Single channel control display

(b) 雙通道控制顯示(b) Dual channel control display

(c) 三通道控制顯示(c) Three channel control display

(d) 四通道控制顯示(d) Four channel control display圖7 液晶屏控制顯示測(cè)試結(jié)果Fig.7 LCD control display test results

5 結(jié) 論

TFT液晶屏驅(qū)動(dòng)是開(kāi)發(fā)和設(shè)計(jì)嵌入式應(yīng)用系統(tǒng)經(jīng)常要面對(duì)和解決的問(wèn)題。常規(guī)的MUC接口TFT液晶屏驅(qū)動(dòng)方法較為復(fù)雜,對(duì)直接使用TFT液晶屏的外部處理器和開(kāi)發(fā)設(shè)計(jì)人員均有一定的要求。本文采用串口方式控制MUC接口模式的TFT液晶屏的方法,降低了對(duì)外部處理器的功能要求,可以滿足無(wú)法直接進(jìn)行屏幕驅(qū)動(dòng)的8位、16位和32位機(jī)使用TFT液晶屏的需求,僅需兩根I/O線就能進(jìn)行TFT液晶屏的控制,節(jié)約了外部處理器的資源。本文方法可同時(shí)提供4個(gè)控制TFT液晶屏的串口通道,既可以單個(gè)外部處理器控制TFT液晶屏,也可以多個(gè)外部處理器同時(shí)控制TFT液晶屏,拓展了TFT液晶屏的使用范圍,可滿足某些特定場(chǎng)合的應(yīng)用需求。本文方法具有較好的兼容性,可適用5種不同尺寸、15種不同IC芯片的MUC接口TFT液晶屏。經(jīng)測(cè)試,TFT液晶屏的驅(qū)動(dòng)速度能較好地滿足顯示需要,在4個(gè)串口通道同時(shí)控制TFT液晶屏的情況下,顯示效果清晰流暢,系統(tǒng)運(yùn)行穩(wěn)定可靠。

猜你喜歡
系統(tǒng)設(shè)計(jì)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無(wú)人機(jī)系統(tǒng)
ZC系列無(wú)人機(jī)遙感系統(tǒng)
何為設(shè)計(jì)的守護(hù)之道?
《豐收的喜悅展示設(shè)計(jì)》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
瞞天過(guò)海——仿生設(shè)計(jì)萌到家
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 国产69精品久久| 欧美三级自拍| 波多野结衣无码视频在线观看| 亚洲av无码久久无遮挡| 亚洲二区视频| 欧美特黄一级大黄录像| 国内精品视频| 本亚洲精品网站| 精久久久久无码区中文字幕| 国产成人综合亚洲网址| 成人韩免费网站| 久久五月视频| 欧美啪啪精品| 亚洲首页在线观看| 亚洲色图欧美视频| 久久黄色影院| 日韩欧美91| 亚洲人成影院在线观看| 999精品色在线观看| 91九色视频网| 亚洲91精品视频| 九色91在线视频| 成人午夜视频在线| 国产精品亚洲片在线va| 99re热精品视频中文字幕不卡| 国产手机在线ΑⅤ片无码观看| 青草视频久久| 久久综合结合久久狠狠狠97色| 欧美啪啪网| 免费在线播放毛片| 极品国产一区二区三区| 无码'专区第一页| 嫩草在线视频| 久久特级毛片| 中国丰满人妻无码束缚啪啪| 亚洲最新在线| 亚洲精品天堂在线观看| 国产欧美视频在线观看| 91综合色区亚洲熟妇p| 久久国产拍爱| 3344在线观看无码| 国产精品男人的天堂| 日韩午夜福利在线观看| 亚洲一级无毛片无码在线免费视频| 欧美精品不卡| 久久综合久久鬼| 人与鲁专区| 国产视频大全| 99久久精品国产自免费| 欧美不卡视频在线| 国产主播喷水| 刘亦菲一区二区在线观看| 亚洲视频无码| 精品国产女同疯狂摩擦2| 久久频这里精品99香蕉久网址| 在线精品视频成人网| 亚洲国产欧美目韩成人综合| 99人妻碰碰碰久久久久禁片| 国产区网址| 1769国产精品免费视频| 欧美成人综合在线| 久久久久九九精品影院| 欧美区一区二区三| 精品无码人妻一区二区| 嫩草在线视频| www.91中文字幕| 亚洲aⅴ天堂| 国产欧美视频在线观看| 无码中文AⅤ在线观看| 91久久精品国产| 日韩欧美在线观看| 97国产精品视频人人做人人爱| 亚洲综合经典在线一区二区| 青青草原偷拍视频| 亚洲国产中文综合专区在| 五月天在线网站| 国产jizz| 色婷婷视频在线| 色综合久久88色综合天天提莫| 亚洲精品福利网站| 一区二区三区四区在线| 67194在线午夜亚洲|