日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

fmc接口定义_STM32接口FSMC/FMC难点详解

發(fā)布時(shí)間:2024/9/27 编程问答 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 fmc接口定义_STM32接口FSMC/FMC难点详解 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

STM32F767的FMC將外部存儲(chǔ)器劃分為6個(gè)固定大小的256M的存儲(chǔ)區(qū)域,如下圖

STM32F767的FMC 存儲(chǔ)塊 1(Bank1 )被分為 4個(gè)區(qū),每個(gè)區(qū)管理64M 字節(jié)空間,每個(gè) 區(qū)都有獨(dú)立的寄存器對(duì)所連接儲(chǔ)進(jìn)行配置。Bank1 的 256M 字節(jié)空間由 28 根地址線 根地址線(HADDR[27:0] )尋址。這里 HADDR[27:0]是內(nèi)部AHB地址總線,其中地址總線HADDR[25:0]來(lái)自外部存儲(chǔ)器地址FMC_A[25:0](FMC_A[25:0]會(huì)接到外部存儲(chǔ)器的地址線上,也就是HADDR內(nèi)部總線的[25:0]來(lái)自外部存儲(chǔ)器地址線), 而 HADDR[26:27] 對(duì)4個(gè)區(qū)進(jìn)行尋址。如表 18.1.2.1所示:

比如外部存儲(chǔ)器接到FMC_NE1上面,那么外部存儲(chǔ)器的地址為HADDR[26:27] +FMC_A[25:0]=0x60000000+FMC_A[25:0]。

HADDR[25:0] 位包含外部存儲(chǔ)器地址,由于 HADDR 為字節(jié)地址,而存儲(chǔ)器按字尋址,所以根據(jù)存儲(chǔ)器數(shù)據(jù)寬度不同,實(shí)際向存儲(chǔ)器發(fā)送的地址也將有所不同,如下表所示。

因?yàn)橐粋€(gè)地址對(duì)應(yīng)1個(gè)字節(jié)數(shù)據(jù),所以64M字節(jié)的地址量,就能表示64x8=512Mb的數(shù)據(jù),也就是外部存儲(chǔ)器最大容量為512Mb。

當(dāng)接的是8位寬度存儲(chǔ)器的時(shí)候,也就是一個(gè)地址正好可以操作一個(gè)字節(jié)(8位)的數(shù)據(jù),需要26根地址線:那么 HADDR[25:0] = FMC _A [25:0] ,就可以了。

當(dāng)接的是16位寬度存儲(chǔ)器的時(shí)候,那么一個(gè)地址就可以操作一個(gè)字(16位)的數(shù)據(jù)那么就不需要26根地址線了,HADDR[0]就沒(méi)有用到,所以: HADDR[25:1] = FMC _A[24:0] 。

例如TFTLCD屏(16位寬存儲(chǔ)器)的RS腳接到FMC_A18上面,使用FMC_NE1(就是使用BANK1的子bank1),

外部存儲(chǔ)器地址線尋址到A18為0時(shí)也即是FMC_A[24:0]=0x3FFFF,左移一位付給內(nèi)部總線HADDR[25:1]=00 0000 0111 1111 1111 1111 1110=0x7fffe,所以內(nèi)部總線讀寫外部存儲(chǔ)器命令(REG)的地址(尋址)就變?yōu)?x60000000+0X7FFFE(FMC_A18即RS為0時(shí));

部存儲(chǔ)器地址線尋址到A18為1時(shí)也即是FMC_A[24:0]=0x40000,左移一位付給內(nèi)部總線HADDR[25:1]=00 0000 1000 0000 0000 0000 0000 =0x8000,內(nèi)部總線讀寫外部存儲(chǔ)器數(shù)據(jù)(RAM)的地址變?yōu)?x60000000+0X80000(FMC_A18即RS為1時(shí))。

32位寬的存儲(chǔ)器也是如此。

無(wú)論外部接8位/16位/32位寬設(shè)備,FMC_A[0]永遠(yuǎn)接在外部設(shè)備地址A[0],HADDR[27:26]的設(shè)置,是不需要我們干預(yù)的,比如當(dāng)你使用Bank1的第一個(gè)區(qū),即使用FMC_NE1連接外部設(shè)備的時(shí)候,即對(duì)應(yīng)了HADDR[27:26]=00,然后我們需要配置第一區(qū)的寄存器組,就可以使用了。

總結(jié)

以上是生活随笔為你收集整理的fmc接口定义_STM32接口FSMC/FMC难点详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。