目錄
LCD結(jié)構(gòu)體配置
?NOR FLASH時(shí)序結(jié)構(gòu)體
FSMC的NOR FLASH初始化結(jié)構(gòu)體
LCD結(jié)構(gòu)體配置
?NOR FLASH時(shí)序結(jié)構(gòu)體
????????與控制SRAM時(shí)一樣,控制FSMC使用NOR FLASH存儲(chǔ)器時(shí)主要是配置時(shí)序寄存器以及控制寄存器,利用ST標(biāo)準(zhǔn)庫的時(shí)序結(jié)構(gòu)體以及初始化結(jié)構(gòu)體可以很方便地寫入?yún)?shù)。
- FSMC_AddressSetupTime
本成員設(shè)置地址建立時(shí)間,它可以被設(shè)置為0-0xF個(gè)HCLK周期數(shù),按STM32標(biāo)準(zhǔn)庫的默認(rèn)配置,HCLK的時(shí)鐘頻率為72MHz,即一個(gè)HCLK周期為1/72微秒。
- FSMC_AddressHoldTime
本成員設(shè)置地址保持時(shí)間,它可以被設(shè)置為0-0xF個(gè)HCLK周期數(shù)。
- FSMC_DataSetupTime
本成員設(shè)置數(shù)據(jù)建立時(shí)間,它可以被設(shè)置為0-0xF個(gè)HCLK周期數(shù)。
- FSMC_BusTurnAroundDuration
本成員設(shè)置總線轉(zhuǎn)換周期,在NOR FLASH存儲(chǔ)器中,地址線與數(shù)據(jù)線可以分時(shí)復(fù)用,總線轉(zhuǎn)換周期就是指總線在這兩種狀態(tài)間切換需要的延時(shí),防止沖突??刂破渌鎯?chǔ)器時(shí)這個(gè)參數(shù)無效,配置為0即可。
- FSMC_CLKDivision
本成員用于設(shè)置時(shí)鐘分頻,它以HCLK時(shí)鐘作為輸入,經(jīng)過FSMC_CLKDivision分頻后輸出到FSMC_CLK引腳作為通訊使用的同步時(shí)鐘??刂破渌惒酵ㄓ嵉拇鎯?chǔ)器時(shí)這個(gè)參數(shù)無效,配置為0即可。
- FSMC_DataLatency
本成員設(shè)置數(shù)據(jù)保持時(shí)間,它表示在讀取第一個(gè)數(shù)據(jù)之前要等待的周期數(shù),該周期指同步時(shí)鐘的周期,本參數(shù)僅用于同步NOR FLASH類型的存儲(chǔ)器,控制其它類型的存儲(chǔ)器時(shí),本參數(shù)無效。
- FSMC_AccessMode
本成員設(shè)置存儲(chǔ)器訪問模式,不同的模式下FSMC訪問存儲(chǔ)器地址時(shí)引腳輸出的時(shí)序不一樣,可選FSMC_AccessMode_A/B/C/D模式。一般來說控制異步NOR FLASH時(shí)使用B模式。
????????這個(gè)FSMC_NORSRAMTimingInitTypeDef 時(shí)序結(jié)構(gòu)體配置的延時(shí)參數(shù),將作為下一節(jié)的FSMC SRAM初始化結(jié)構(gòu)體的一個(gè)成員。
FSMC的NOR FLASH初始化結(jié)構(gòu)體
FSMC初始化結(jié)構(gòu)體,除最后兩個(gè)成員是上一小節(jié)講解的時(shí)序配置外,其它結(jié)構(gòu)體成員的配置都對應(yīng)到FSMC_BCR中的寄存器位。
對于液晶屏,我們只需要配置FSMC_Bank、FSMC_MemoryType、FSMC_MemoryDataWidth、FSMC_WirteOperation和FSMC_ExtendedMode成員即可
- FSMC_Bank
????????本成員用于選擇FSMC映射的存儲(chǔ)區(qū)域,它的可選參數(shù)以及相應(yīng)的內(nèi)核地址映射范圍見上面的表格(指南針開發(fā)板使用NE1引腳,選擇第一個(gè)宏;霸道開發(fā)板使用NE3引腳,選擇第三個(gè)宏)
- FSMC_DataAddressMux
????????本成員用于設(shè)置地址總線與數(shù)據(jù)總線是否復(fù)用(FSMC_DataAddressMux_Enable /Disable),在控制NOR FLASH時(shí),可以地址總線與數(shù)據(jù)總線可以分時(shí)復(fù)用,以減少使用STM32信號線的數(shù)量。(液晶屏不需要配置)
- FSMC_MemoryType
????????本成員用于設(shè)置要控制的存儲(chǔ)器類型,它支持控制的存儲(chǔ)器類型為SRAM、PSRAM以及NOR FLASH(FSMC_MemoryType_SRAM/PSRAM/NOR)。(液晶屏配置為FSMC_MemoryType_NOR)
- FSMC_MemoryDataWidth
????????本成員用于設(shè)置要控制的存儲(chǔ)器的數(shù)據(jù)寬度,可選擇設(shè)置成8或16位(FSMC_MemoryDataWidth_8b /16b)。(液晶屏配置為FSMC_MemoryDataWidth_16b)
- FSMC_BurstAccessMode
????????本成員用于設(shè)置是否使用突發(fā)訪問模式(FSMC_BurstAccessMode_Enable/Disable),突發(fā)訪問模式是指發(fā)送一個(gè)地址后連續(xù)訪問多個(gè)數(shù)據(jù),非突發(fā)模式下每訪問一個(gè)數(shù)據(jù)都需要輸入一個(gè)地址,僅在控制同步類型的存儲(chǔ)器時(shí)才能使用突發(fā)模式。(液晶屏不用)
- FSMC_AsynchronousWait
????????本成員用于設(shè)置是否使能在同步傳輸時(shí)使用的等待信號(FSMC_AsynchronousWait_Enable/Disable),在控制同步類型的NOR或PSRAM時(shí),存儲(chǔ)器可以使用FSMC_NWAIT引腳通知STM32需要等待。(液晶屏不用)
- FSMC_WaitSignalPolarity
????????本成員用于設(shè)置等待信號的有效極性,即要求等待時(shí),使用高電平還是低電平(FSMC_WaitSignalPolarity_High/Low)。(液晶屏不用)
- FSMC_WrapMode
????????本成員用于設(shè)置是否支持把非對齊的AHB突發(fā)操作分割成2次線性操作(FSMC_WrapMode_Enable/Disable),該配置僅在突發(fā)模式下有效。(液晶屏不用)
- FSMC_WaitSignalActive
????????本成員用于配置在突發(fā)傳輸模式時(shí),決定存儲(chǔ)器是在等待狀態(tài)之前的一個(gè)數(shù)據(jù)周期有效還是在等待狀態(tài)期間有效(FSMC_WaitSignalActive_BeforeWaitState/DuringWaitState)。(液晶屏不用)
- FSMC_WriteOperation
????????這個(gè)成員用于設(shè)置是否寫使能(FSMC_WriteOperation_ Enable /Disable),禁止寫使能的話FSMC只能從存儲(chǔ)器中讀取數(shù)據(jù),不能寫入。(液晶屏配置為(FSMC_WriteOperation_ Enable)
- FSMC_WaitSignal
本成員用于設(shè)置當(dāng)存儲(chǔ)器牌突發(fā)傳輸模式時(shí),是否允許通過NWAIT信號插入等待狀態(tài)(FSMC_WaitSignal_Enable/Disable)。(液晶屏不用)
- FSMC_ExtendedMode
????????本成員用于設(shè)置是否使用擴(kuò)展模式(FSMC_ExtendedMode_Enable/Disable),在非擴(kuò)展模式下,對存儲(chǔ)器讀寫的時(shí)序都只使用FSMC_BCR寄存器中的配置,即下面的FSMC_ReadWriteTimingStruct結(jié)構(gòu)體成員;在擴(kuò)展模式下,對存儲(chǔ)器的讀寫時(shí)序可以分開配置,讀時(shí)序使用FSMC_BCR寄存器,寫時(shí)序使用FSMC_BWTR寄存器的配置,即下面的FSMC_WriteTimingStruct結(jié)構(gòu)體。
- FSMC_ReadWriteTimingStruct
????????本成員是一個(gè)指針,賦值時(shí)使用上一小節(jié)中講解的時(shí)序結(jié)構(gòu)體FSMC_NORSRAMInitTypeDef設(shè)置,當(dāng)不使用擴(kuò)展模式時(shí),讀寫時(shí)序都使用本成員的參數(shù)配置。文章來源:http://www.zghlxwxcb.cn/news/detail-582375.html
- FSMC_WriteTimingStruct
????????同樣地,本成員也是一個(gè)時(shí)序結(jié)構(gòu)體的指針,只有當(dāng)使用擴(kuò)展模式時(shí),本配置才有效,它是寫操作使用的時(shí)序。文章來源地址http://www.zghlxwxcb.cn/news/detail-582375.html
到了這里,關(guān)于LCD—STM32液晶顯示(3.NOR FLASH時(shí)序結(jié)構(gòu)體)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!