<abbr id="seaas"><source id="seaas"></source></abbr><dl id="seaas"></dl>
    <li id="seaas"></li>
    <abbr id="seaas"></abbr>
  • <li id="seaas"></li>
    <code id="seaas"><delect id="seaas"></delect></code>
  • 4000-169-679

    首頁>技術(shù)支持 >汽車軟板廠之STM32F1單片機(jī)TFT屏調(diào)試筆記

    汽車軟板廠之STM32F1單片機(jī)TFT屏調(diào)試筆記

    2020-07-13 10:35

    STM32F1系列單片機(jī)有多種外設(shè),外設(shè)配置方式比較一致,一般是使能外設(shè)所在GPIO口時鐘、使能外設(shè)的時鐘,在禁止外設(shè)的情況下配置外設(shè)的時序以及中斷和DMA等。大部分的外設(shè)配置相對簡單,但是FSMC接口因?yàn)榕渲帽容^復(fù)雜,往往讓一些初學(xué)者一頭霧水。汽車軟板廠記錄了在STM32F103ZET6的FSMC接口配置調(diào)試TFT LCD屏相關(guān)注意事項(xiàng)。
    1   FSMC接口GPIO配置

    /** FSMC GPIOConfiguration   PF0  ------> FSMC_A0           ------> LCD_RS: 0: Reg,1:Data  PE7  ------> FSMC_D4  PE8  ------> FSMC_D5  PE9  ------> FSMC_D6  PE10  ------> FSMC_D7  PE11  ------> FSMC_D8  PE12  ------> FSMC_D9  PE13  ------> FSMC_D10  PE14  ------> FSMC_D11  PE15  ------> FSMC_D12  PD8  ------> FSMC_D13  PD9  ------> FSMC_D14  PD10  ------> FSMC_D15  PD14  ------> FSMC_D0  PD15  ------> FSMC_D1  PD0  ------> FSMC_D2  PD1  ------> FSMC_D3  PD4  ------> FSMC_NOE          ------> LCD_RD    Default:1,Value:0    PD5  ------> FSMC_NWE           ------> LCD_WR  Default:1,Value:0  PG12  ------> FSMC_NE4             ------>LCD_CS  Default:1,Value:0



    2 初始化FSMC時序

    /* FSMC initializationfunction */  FSMC_NORSRAM_TimingTypeDef Timing;SRAM_HandleTypeDef hsram1;
      hsram1.Instance = FSMC_NORSRAM_DEVICE;  hsram1.Extended =FSMC_NORSRAM_EXTENDED_DEVICE;  /* hsram1.Init */hsram1.Init.NSBank = FSMC_NORSRAM_BANK4;hsram1.Init.DataAddressMux =FSMC_DATA_ADDRESS_MUX_DISABLE;hsram1.Init.MemoryType=FSMC_MEMORY_TYPE_NOR;hsram1.Init.MemoryDataWidth =FSMC_NORSRAM_MEM_BUS_WIDTH_16;hsram1.Init.BurstAccessMode =FSMC_BURST_ACCESS_MODE_DISABLE;hsram1.Init.WaitSignalPolarity =FSMC_WAIT_SIGNAL_POLARITY_LOW;hsram1.Init.WrapMode =FSMC_WRAP_MODE_DISABLE;hsram1.Init.WaitSignalActive =FSMC_WAIT_TIMING_BEFORE_WS;hsram1.Init.WriteOperation =FSMC_WRITE_OPERATION_ENABLE;hsram1.Init.WaitSignal =FSMC_WAIT_SIGNAL_DISABLE;hsram1.Init.ExtendedMode =FSMC_EXTENDED_MODE_DISABLE;hsram1.Init.AsynchronousWait =FSMC_ASYNCHRONOUS_WAIT_DISABLE;hsram1.Init.WriteBurst =FSMC_WRITE_BURST_DISABLE;  /* Timing */ Timing.AddressSetupTime = 0x04; Timing.AddressHoldTime = 0x02; Timing.DataSetupTime = 0x08; Timing.BusTurnAroundDuration = 0x00; Timing.CLKDivision = 0x00; Timing.DataLatency = 0x00; Timing.AccessMode = FSMC_ACCESS_MODE_B;  后面數(shù)值決定讀寫屏快慢。


    FPC小編注意點(diǎn):
    1  因?yàn)镾TM32的地址是32bit的,數(shù)據(jù)是按照8bit組織的,如果lcd的數(shù)據(jù)選擇8bit的話,地址A0就是正常的輸出,如0x60000000輸出A0=0;  0x6000 0001輸出A0=1;對應(yīng)數(shù)據(jù)是byte;如果lcd的數(shù)據(jù)選擇16bit的話,地址A0就,如0x60000000輸出A0=0;  而0x60000002對應(yīng)A0=1;對應(yīng)數(shù)據(jù)是word,也就是說每兩個原來基于byte結(jié)構(gòu)的地址對應(yīng)一個地址線上實(shí)際的word長度的地址;

    #define Bank1_LCD_D   ((uint32_t)0x6C000002)    //DispData ADDR#define Bank1_LCD_C   ((uint32_t)0x6C000000)   //DispReg ADDR
    void LCD_WR_REG(uint16_t index){       *(__IOuint16_t *) (Bank1_LCD_C) = index;}
    uint16_t  LCD_READ_DATA(void){       uint16_ta = 0;        a=*(__IOuint16_t *) (Bank1_LCD_D); //L        return a;}


    軟板廠:   Image2LCD軟件轉(zhuǎn)換時注意掃描方式和數(shù)據(jù)位寬度,以及高低為順序。

    實(shí)際效果:

    網(wǎng)友熱評

    主站蜘蛛池模板: 亚洲av专区无码观看精品天堂| 国产午夜激无码av毛片| 久久综合丝袜长腿丝袜| 国产超碰人人模人人爽人人喊| 色欲欲WWW成人网站| 亚洲国产午夜精品理论片| 伊人色综合久久天天人守人婷| jizz在线看片| 国产一级淫片免费播放| 天堂网www中文在线| 亚洲av第一网站久章草| 久久亚洲av无码精品色午夜| 久久精品视频免费看| 精品国产A∨无码一区二区三区| 亚洲精品欧美精品日韩精品| 中文精品久久久久人妻| 又黄又刺激视频| 亚洲视频一区二区三区| 永久免费毛片在线播放| 国内精品免费视频自在线| 麻豆免费高清完整版视频| 欧美日韩国产成人精品| 怡红院视频在线观看| 亚洲精品动漫免费二区| 在线观看精品视频看看播放| 国产在线中文字幕| 天堂俺去俺来也WWW色官网| 日韩在线免费电影| 最近的中文字幕国语电影直播| 污污成人一区二区三区四区| 男人天堂资源站| 国产福利久久青青草原下载| 国产成人mv在线播放| 久久久噜噜噜久久熟女AA片| 久久久精品免费| jlzzjlzz亚洲jzjzjz| 亚洲欧美日韩中文字幕一区二区三区| 美女内射无套日韩免费播放| 欧美亚洲一区二区三区| 国产成人久久91网站下载| 西西人体大胆扒开瓣|