<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > STM32學(xué)習筆記——TFT2.4彩屏顯示圖片

STM32學(xué)習筆記——TFT2.4彩屏顯示圖片

作者: 時(shí)間:2016-11-28 來(lái)源:網(wǎng)絡(luò ) 收藏

本文引用地址:http://dyxdggzs.com/article/201611/322857.htm

LCD_cs(1);//關(guān)閉片選使能

}

voiddelayms(intcount)//

{

inti,j;

for(i=0;i

for(j=0;j<100;j++);

}

#ifdefBus_16//條件編譯-16位數據模式

voidLCD_Writ_Bus(uintVH,uintVL)//并行數據寫(xiě)入函數

{

//LCD_DataPortH=VH;//高位P1口

//屏蔽高8位將數據送到PA0-PA7

GPIOA->BSRR=VH&0x00ff;

GPIOA->BRR=(~VH)&0x00ff;

//GPIO_SetBits(GPIOA,VH&0x00ff);

//GPIO_ResetBits(GPIOA,(~VH&0x00ff));

//LCD_DataPortL=VL;//低位P0口

//屏蔽低8位將數據送到PB8-PB15

GPIOB->BSRR=(VL)<<8&0xff00;

GPIOB->BRR=((~VL)<<8)&0xff00;

LCD_wr(0);

LCD_wr(1);

}

#else//條件編譯-8位數據模式

voidLCD_Writ_Bus(charVH,charVL)//并行數據寫(xiě)入函數

{

//LCD_DataPortH=VH;//八位模式都用P0口送數據

//LCD_wr(0);

//LCD_wr(1);

//LCD_DataPortH=VL;//八位模式都用P0口送數據

//LCD_wr(0);

//LCD_wr(1);

}

#endif

voidLCD_Write_COM(charVH,charVL)//發(fā)送命令

{

LCD_rs(0);

LCD_Writ_Bus(VH,VL);

}

voidLCD_Write_DATA(charVH,charVL)//發(fā)送數據

{

LCD_rs(1);

LCD_Writ_Bus(VH,VL);

}

voidPant(charVH,charVL)//涂滿(mǎn)全屏函數

{

inti,j;

LCD_cs(0);//打開(kāi)片選使能

Address_set(0,0,239,319);

for(i=0;i<320;i++)

{

for(j=0;j<240;j++)

{

LCD_Write_DATA(VH,VL);

}

}

LCD_cs(1);//關(guān)閉片選使能

}

voidAddress_set(unsignedintx1,unsignedinty1,unsignedintx2,unsignedinty2)//設置地址范圍函數

{

LCD_Write_COM(0x00,0x20);LCD_Write_DATA(x1>>8,x1);//設置X坐標位置

LCD_Write_COM(0x00,0x21);LCD_Write_DATA(y1>>8,y1);//設置Y坐標位置

LCD_Write_COM(0x00,0x50);LCD_Write_DATA(x1>>8,x1);//開(kāi)始X

LCD_Write_COM(0x00,0x52);LCD_Write_DATA(y1>>8,y1);//開(kāi)始Y

LCD_Write_COM(0x00,0x51);LCD_Write_DATA(x2>>8,x2);//結束X

LCD_Write_COM(0x00,0x53);LCD_Write_DATA(y2>>8,y2);//結束Y

LCD_Write_COM(0x00,0x22);

}

voidpic_play(uintStart_X,uintEnd_X,uintStart_Y,uintEnd_Y)

{

uintm;

//LCD_CS=0;

GPIO_ResetBits(GPIOB,LCD_CS);//打開(kāi)片選

Address_set(Start_X,Start_Y,End_X,End_Y);//指定圖片顯示的范圍

//LCD_RS=1;

GPIO_SetBits(GPIOB,LCD_RS);//關(guān)閉片選

//循環(huán)把圖片的所有數據依次寫(xiě)入

Address_set(0,0,141,79);//用彩屏顯示圖片時(shí),一定要注意圖片長(cháng)寬比例,如果長(cháng)寬比例不對的話(huà),顯示的圖片就會(huì )變形

//例如本幅圖片取模軟件輸出的長(cháng)寬為(177,100),所以在這里圖片的顯示范圍必須設為(0,0,176,99),即x范圍為0~176,y的范圍為

//0~99.這樣圖片才能正常顯示,否則圖片就會(huì )變形。

for(m=0;m<22728/2;m++)//這里的35400這個(gè)數字指定顯示圖片的范圍,因為該圖的數據總共只有35400個(gè),所以這里指定

//整幅圖都顯示出來(lái)。如果這個(gè)數比35400小,則只顯示該圖的一部分。

{

LCD_Write_DATA(gImage_sara[m*2+1],gImage_sara[m*2]);

}

Address_set(0,90,65,189);//一定要注意保持比例

for(m=0;m<13200/2;m++)

{

LCD_Write_DATA(gImage_xiaoqian[m*2+1],gImage_xiaoqian[m*2]);

}

Address_set(75,90,137,189);//一定要注意保持比例

for(m=0;m<12600/2;m++)

{

LCD_Write_DATA(gImage_yang[m*2+1],gImage_yang[m*2]);

}

//LCD_CS=1;

GPIO_SetBits(GPIOB,LCD_CS);//關(guān)閉片選

}

主程序main.c

在主程序中完成對系統的初始化配置,利用彩屏的驅動(dòng)程序完成圖片的顯示等功能,程序如下:

#include"stm32f10x_lib.h"

#include"lcd.h"

GPIO_InitTypeDefGPIO_InitStructure;//定義GPIO初始化的結構體變量

ErrorStatusHSEStartUpStatus;//定義錯誤狀態(tài)變量,為枚舉類(lèi)型

voidRCC_Configuration(void);

voidNVIC_Configuration(void);

voidDelay(vu32nCount);

intmain(void)

{

#ifdefDEBUG

debug();//在線(xiàn)調試使用

#endif



評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>