www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]多功能采集顯示平臺將通過STM32的FSMC接口來控制TFTLCD的顯示,所以本節(jié)分為兩個(gè)部分,分別介紹TFTLCD和FSMC。TFT-LCD即薄膜晶體管液晶顯示器。其英文全稱為:ThinFilmTransistor-LiquidCrystalDisplay。TFT-LCD與無

多功能采集顯示平臺將通過STM32的FSMC接口來控制TFTLCD的顯示,所以本節(jié)分為兩個(gè)部分,分別介紹TFTLCD和FSMC。

TFT-LCD即薄膜晶體管液晶顯示器。其英文全稱為:ThinFilmTransistor-LiquidCrystalDisplay。TFT-LCD與無源TN-LCD、STN-LCD的簡單矩陣不同,它在液晶顯示屏的每一個(gè)象素上都設(shè)置有一個(gè)薄膜晶體管(TFT),可有效地克服非選通時(shí)的串?dāng)_,使顯示液晶屏的靜態(tài)特性與掃描線數(shù)無關(guān),因此大大提高了圖像質(zhì)量。TFT-LCD也被叫做真彩液晶顯示器。FSMC(FlexibleStaticMemoryController,可變靜態(tài)存儲控制器)是STM32系列采用一種新型的存儲器擴(kuò)展技術(shù)。在外部存儲器擴(kuò)展方面具有獨(dú)特的優(yōu)勢,可根據(jù)系統(tǒng)的應(yīng)用需要,方便地進(jìn)行不同類型大容量靜態(tài)存儲器的擴(kuò)展。

多功能采集顯示平臺使用的LCD的驅(qū)動芯片是ILI9325,有一個(gè)16位的變址寄存器(IR)、一個(gè)18位的寫數(shù)據(jù)寄存器(WDR)和一個(gè)18位的讀數(shù)據(jù)寄存器(RDR)。變址寄存器(IR)存儲來自控制寄存器和內(nèi)部的GRAM的指令信息。寫數(shù)據(jù)寄存器(WDR)用來暫時(shí)存儲要被寫到控制寄存器和內(nèi)部的GRAM中的數(shù)據(jù)。讀數(shù)據(jù)寄存器(RDR)用來暫時(shí)存儲從GRAM中讀取的數(shù)據(jù)。MPU中要寫入內(nèi)部GRAM的數(shù)據(jù),首先寫到寫數(shù)據(jù)寄存器(WDR),然后再又內(nèi)部操作自動的寫到內(nèi)部的GRAM中。要讀取的數(shù)據(jù)要通過讀數(shù)據(jù)寄存器(RDR)從內(nèi)部GRAM中讀取。因此無效數(shù)據(jù)將被讀到數(shù)據(jù)總線,當(dāng)ILI9325從內(nèi)部的GRAM中讀取第一個(gè)數(shù)據(jù)的時(shí)候,有效數(shù)據(jù)將在ILI9325進(jìn)行了第二次讀操作之后被讀出。同時(shí)使用FSMC驅(qū)動TFTLCD的顯存工作,可以極大地提升LCD的顯示效率和刷屏頻率。相對于以往使用IO口控制LCD屏幕來說,使用FSMC的優(yōu)勢在于MCU可以將內(nèi)存的數(shù)據(jù)通過并行總線直接傳送至LCD顯存,極大地提高了速度,保證了LCD的顯示刷新頻率。經(jīng)過簡單測試,使用IO口控制的LCD的刷新頻率大概可以達(dá)到14幀一秒,使用FSMC的控制的LCD的刷新頻率大概可以達(dá)到28幀一秒,效率足足提升了100%,這足以使得多功能采集顯示平臺的顯示模塊達(dá)到顯示要求。

TFTLCD和FSMC設(shè)置的一般步驟可以總結(jié)為如下幾個(gè)步驟:

1.設(shè)置STM32與TFTLCD模塊相連接的IO

2.配置相應(yīng)IO的功能

3.并設(shè)置FSMC,并使能FSMCBank1_SRAMBank

4.TFTLCD硬復(fù)位

5.初始化相應(yīng)TFT的序列

6.通過函數(shù)將需要的圖像或者文字顯示在TFTLCD上面

TFTLCD接口如下:


初始化函數(shù)代碼如下:


/**********************管腳配置**********************************************/

voidLCD_guanjiao(void)

{

u16a=1000;

GPIO_InitTypeDefGPIO_InitStructure;

RCC_AHBPeriphClockCmd(RCC_AHBPeriph_FSMC,ENABLE);

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD|RCC_APB2Periph_GPIOE|

RCC_APB2Periph_GPIOF|RCC_APB2Periph_GPIOG,ENABLE);

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_4|GPIO_Pin_5|

GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_14|

GPIO_Pin_15;

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;

GPIO_Init(GPIOD,&GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|

GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_14|

GPIO_Pin_15;

GPIO_Init(GPIOE,&GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;

GPIO_Init(GPIOF,&GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_12;

GPIO_Init(GPIOG,&GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_11;

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;

GPIO_Init(GPIOD,&GPIO_InitStructure);

GPIO_ResetBits(GPIOD,GPIO_Pin_11);//管腳復(fù)位

while(a--);

GPIO_SetBits(GPIOD,GPIO_Pin_11);

}


/******************************FSMC配置*********************************/

voidLCD_FSMC()

{

FSMC_NORSRAMInitTypeDefFSMC_NORSRAMInitStructure;

FSMC_NORSRAMTimingInitTypeDefp;

p.FSMC_AddressSetupTime=0x02;//地址建立時(shí)間

p.FSMC_AddressHoldTime=0x00;//地址保持時(shí)間

p.FSMC_DataSetupTime=0x05;//數(shù)據(jù)建立時(shí)間

p.FSMC_BusTurnAroundDuration=0x00;

p.FSMC_CLKDivision=0x00;

p.FSMC_DataLatency=0x00;

p.FSMC_AccessMode=FSMC_AccessMode_B;//一般使用模式B來控制LCD

FSMC_NORSRAMInitStructure.FSMC_Bank=FSMC_Bank1_NORSRAM4;

FSMC_NORSRAMInitStructure.FSMC_DataAddressMux=FSMC_DataAddressMux_Disable;

//FSMC_NORSRAMInitStructure.FSMC_MemoryType=FSMC_MemoryType_SRAM;

FSMC_NORSRAMInitStructure.FSMC_MemoryType=FSMC_MemoryType_NOR;

FSMC_NORSRAMInitStructure.FSMC_MemoryDataWidth=FSMC_MemoryDataWidth_16b;

FSMC_NORSRAMInitStructure.FSMC_BurstAccessMode=FSMC_BurstAccessMode_Disable;

FSMC_NORSRAMInitStructure.FSMC_WaitSignalPolarity=FSMC_WaitSignalPolarity_Low;

FSMC_NORSRAMInitStructure.FSMC_WrapMode=FSMC_WrapMode_Disable;

FSMC_NORSRAMInitStructure.FSMC_WaitSignalActive=FSMC_WaitSignalActive_BeforeWaitState;

FSMC_NORSRAMInitStructure.FSMC_WriteOperation=FSMC_WriteOperation_Enable;

FSMC_NORSRAMInitStructure.FSMC_WaitSignal=FSMC_WaitSignal_Disable;

FSMC_NORSRAMInitStructure.FSMC_ExtendedMode=FSMC_ExtendedMode_Disable;

FSMC_NORSRAMInitStructure.FSMC_WriteBurst=FSMC_WriteBurst_Disable;

FSMC_NORSRAMInitStructure.FSMC_ReadWriteTimingStruct=&p;

FSMC_NORSRAMInitStructure.FSMC_WriteTimingStruct=&p;

FSMC_NORSRAMInit(&FSMC_NORSRAMInitStructure);

/*使能FSMCBank1_SRAMBank*/

FSMC_NORSRAMCmd(FSMC_Bank1_NORSRAM4,ENABLE);

}


相關(guān)代碼已上傳:http://download.csdn.net/detail/devintt/8925341



關(guān)于優(yōu)化

多功能采集顯示平臺需要要求每秒刷新屏幕10次,盡管刷新頻率較低,但是如果使用先將全屏幕刷白,再通過計(jì)算添加不同的界面控件,這樣的方法難以保證刷新屏幕的工作正常進(jìn)行。有了優(yōu)化顯示,所以這里使用了局部刷新的方法,根據(jù)需要修改的顯示區(qū)域進(jìn)行刷白處理,其余的顯示不變。這樣

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

  引言   根據(jù)世界衛(wèi)生組織公布的數(shù)據(jù),全世界目前有3 000多萬人目盲,其中約有18%是中國人。針對盲人行動不便的情況,本文介紹了一種基于超聲相控陣的盲人避障系統(tǒng)。   本文

關(guān)鍵字: stm32f103 超聲相控陣 導(dǎo)盲系統(tǒng)

  隨著IPTV和多媒體業(yè)務(wù)的迅速發(fā)展,用戶對接入帶寬的要求不斷增加,目前的銅線接入技術(shù)很難滿足用戶對高帶寬、雙向傳輸、及安全性方面的要求。在2010年以前,F(xiàn)TTB是中國主流的FTTx建網(wǎng)模式

關(guān)鍵字: stm32f103 張力傳感器

引言 隨著互聯(lián)網(wǎng)技術(shù)、無線通信技術(shù)以及生物傳感器技術(shù)的進(jìn)一步發(fā)展,可供病人在醫(yī)院、家庭等環(huán)境中使用的可穿戴健康監(jiān)測預(yù)警系統(tǒng)已成為國內(nèi)外研究人員關(guān)注的熱點(diǎn)。 本文設(shè)計(jì)了一種應(yīng)用互聯(lián)

關(guān)鍵字: stm32f103 互聯(lián)網(wǎng) 脈搏監(jiān)測

致力于亞太地區(qū)市場的領(lǐng)先半導(dǎo)體元器件分銷商---大聯(lián)大控股宣布,其旗下友尚推出基于意法半導(dǎo)體(ST)STM32F103與德州儀器(TI)CC2564的智能車載雙模藍(lán)牙方案WLT2564S。該車載

關(guān)鍵字: stm32f103 藍(lán)牙

臺灣電子設(shè)備協(xié)會理事長王作京表示:Micro LED議題在蘋果的專研實(shí)驗(yàn)室成立,鴻海大舉收購eLux力拚Micro LED商業(yè)化,技術(shù)討論已正式進(jìn)入白熱化時(shí)代。希望藉由電子設(shè)備協(xié)會平臺,開放式討

關(guān)鍵字: LCD microled tftlcd

2016年8月16日,致力于亞太地區(qū)市場的領(lǐng)先半導(dǎo)體元器件分銷商---大聯(lián)大控股宣布,其旗下友尚推出基于意法半導(dǎo)體(ST)STM32F103與德州儀器(TI)CC2564的智能車載雙模藍(lán)牙方案W

關(guān)鍵字: cc2564 stm32f103 大聯(lián)大友尚

在做有AD模塊項(xiàng)目的時(shí)候遇到幾個(gè)問題:1, ADC配合DMA采樣規(guī)則是怎樣的。2, ADC在DMA采可否不連續(xù)采樣,以提高有效采樣使用率和降低功耗。3, 如何提高有效利用率和降低功耗,并減少CPU的占用時(shí)間。4, ADC...

關(guān)鍵字: adc stm32f103

//代碼僅僅是配置使能串口和相應(yīng)的中斷處理函數(shù),具體功能需要自己定義//IAR 7.1#include "stm32_uart.h"uint8_t card_ture=0;uint16_t add_c...

關(guān)鍵字: stm32f103 中斷 雙串口配置

1、配置STM32F103的SPI口void AD7606_Port_Init(void){GPIO_InitTypeDef GPIO_InitStructure;SPI_InitTypeDef SPI_InitStr...

關(guān)鍵字: stm32f103 模擬信號 ad7606

注意:每個(gè)區(qū)都有獨(dú)立的寄存器控制,都有單獨(dú)的片選引腳,故每個(gè)區(qū)都可以接不同的外設(shè)。

關(guān)鍵字: fsmc STM32 地址塊劃分
關(guān)閉