在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STM32學(xué)習(xí)筆記——TFT2.4彩屏顯示圖片

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

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

            本文引用地址:http://www.biyoush.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位數(shù)據(jù)模式

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

            {

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

            //屏蔽高8位將數(shù)據(jù)送到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位將數(shù)據(jù)送到PB8-PB15

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

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

            LCD_wr(0);

            LCD_wr(1);

            }

            #else//條件編譯-8位數(shù)據(jù)模式

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

            {

            //LCD_DataPortH=VH;//八位模式都用P0口送數(shù)據(jù)

            //LCD_wr(0);

            //LCD_wr(1);

            //LCD_DataPortH=VL;//八位模式都用P0口送數(shù)據(jù)

            //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ā)送數(shù)據(jù)

            {

            LCD_rs(1);

            LCD_Writ_Bus(VH,VL);

            }

            voidPant(charVH,charVL)//涂滿全屏函數(shù)

            {

            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)//設(shè)置地址范圍函數(shù)

            {

            LCD_Write_COM(0x00,0x20);LCD_Write_DATA(x1>>8,x1);//設(shè)置X坐標(biāo)位置

            LCD_Write_COM(0x00,0x21);LCD_Write_DATA(y1>>8,y1);//設(shè)置Y坐標(biāo)位置

            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);//結(jié)束X

            LCD_Write_COM(0x00,0x53);LCD_Write_DATA(y2>>8,y2);//結(jié)束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)把圖片的所有數(shù)據(jù)依次寫(xiě)入

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

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

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

            for(m=0;m<22728/2;m++)//這里的35400這個(gè)數(shù)字指定顯示圖片的范圍,因?yàn)樵搱D的數(shù)據(jù)總共只有35400個(gè),所以這里指定

            //整幅圖都顯示出來(lái)。如果這個(gè)數(shù)比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

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

            #include"stm32f10x_lib.h"

            #include"lcd.h"

            GPIO_InitTypeDefGPIO_InitStructure;//定義GPIO初始化的結(jié)構(gòu)體變量

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

            voidRCC_Configuration(void);

            voidNVIC_Configuration(void);

            voidDelay(vu32nCount);

            intmain(void)

            {

            #ifdefDEBUG

            debug();//在線調(diào)試使用

            #endif



            評(píng)論


            技術(shù)專區(qū)

            關(guān)閉