STM32 FSMC學習筆記+補充(LCD的FSMC配置)

來源:互聯網
上載者:User

許某人:http://blog.csdn.net/hduxyc/article/details/6426463

 

FSMC全稱“靜態儲存空間控制器”。

使用FSMC控制器後,可以把FSMC提供的FSMC_A[25:0]作為地址線,而把FSMC提供的FSMC_D[15:0]作為資料匯流排。

(1)當儲存資料設為8位時,(FSMC_NANDInitStructure.FSMC_MemoryDataWidth = FSMC_MemoryDataWidth_8b)

    地址各位對應FSMC_A[25:0],資料位元對應FSMC_D[7:0]

(2)當儲存資料設為16位時,(FSMC_NANDInitStructure.FSMC_MemoryDataWidth = FSMC_MemoryDataWidth_16b)

    地址各位對應FSMC_A[24:0],資料位元對應FSMC_D[15:0]

FSMC 包括4個模組:

(1)AHB介面(包括FSMC配置寄存器)

(2)NOR快閃記憶體和PSRAM控制器(驅動LCD的時候LCD就好像一個PSRAM的裡面只有2個16位的儲存空間,一個是DATA RAM 一個是CMD RAM)

(3)NAND快閃記憶體和PC卡控制器

(4)外部裝置介面

:FSMC可以請求AHB進行資料寬度的操作。如果AHB操作的資料寬度大於外部裝置(NOR或NAND或LCD)的寬度,此時FSMC將AHB操作分割成幾個連續的較小的資料寬度,以適應外部裝置的資料寬度

 

FSMC對外部裝置的地址映像從0x6000 0000開始,到0x9FFF FFFF結束,共分4個地址塊,每個地址塊256M位元組。可以看出,每個地址塊又分為4個分地址塊,大小64M。對NOR的地址映像來說,我們可以通過選擇HADDR[27:26]來確定當前使用的是哪個64M的分地址塊,如下頁表格。而這四個分儲存塊的片選,則使用NE[4:1]來選擇。資料線/地址線/控制線是共用的。

NE1 ->Bank1   NE2->Bank2  NE3->Bank3  NE4->Bank4

若 NE1 串連, 則

 

每小塊NOR/PSRAM 64M

第一塊:6000 0000h--63ff ffffh (DATA長度為8位情況下,由地址線FSMC_A[25:0]決定;DATA長度為16位情況下,由地址線FSMC_A[24:0]決定)

第二塊:6400 0000h--67ff ffffh

第二塊:6800 0000h--6bff ffffh

第三塊:6c00 0000h--6fff ffffh

註:這裡的HADDR是需要轉換到外部裝置的內部AHB地址線,每個地址對應一個位元組單元。因此,若外部裝置的地址寬度是8位的,則HADDR[25:0]與STM32的CPU引腳FSMC_A[25:0]一一對應,最大可以訪問64M位元組的空間。若外部裝置的地址寬度是16位的,則是HADDR[25:1]與STM32的CPU引腳FSMC_A[24:0]一一對應。在應用的時候,可以將FSMC_A匯流排串連到儲存空間或其他外設的地址匯流排引腳上。

 

 

例:STM32F10XX FCMS控制LCD的驅動

FSMC提供了所有的LCD控制器的訊號:

STM32f10xxx FSMC有四個不同banks(每個64M位元組)考研支援NOR、nand等其他類似的儲存空間。這些外部裝置的地址線,資料先和控制線是共用的。每個裝置的訪問通過片選來決定,而每次只能訪問一個裝置

FSMC_D[16:0] ->16bit地址匯流排

FSMC NEx:分配給NOR的256M,再分成4個區。每個區用來分配一個外設,這四個外設的片選:NE1-NE4,對應的不同的引腳

FSMC NOE:輸出使能,串連LCD的RD腳

FSMC NWE:寫使能,串連LCD的RW腳

FSMC Ax:用在LCD顯示RAM和寄存器之間進行選擇的地址線,即該線用於選擇LCD的RS腳,該線可用地址線的任意一根線,範圍:FSMC_A[25:0]。(RS=0表示指令,RS=1表示資料)

例:選擇NOR的第一個儲存區,並且使用FSMC_A16來控制LCD的RS引腳,則我們訪問LCD顯示RAM的基址為0x60020000 LCD命令寄存器地址為:0x60000000

例:選擇NOR的第四個儲存區,並且使用FSMC_A0來控制LCD的RS引腳,則我們訪問LCD顯示RAM的基址為0x6C000002 LCD命令寄存器地址為:0x6C000000

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.