久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > STM32的 位尋址(地址映射)

STM32的 位尋址(地址映射)

作者: 時間:2016-11-27 來源:網絡 收藏
STM32的寄存器的分布情況:





本文引用地址:http://cqxgywz.com/article/201611/322569.htm

STM比較特色的就是 位帶操作:

如下解釋:

(寄存器的地址是固定好的,我們想要進行位操作的話 就需要用到地址映射,將位帶區寄存器的 各位 映射到 位帶別名區的地址。)





通過 位帶別名區 的 4個字節(32個位)用來存放 位帶區的 位地址。

如將 0x2200 0000 映射到 0x2000 000 的第一個位!

具體的映射C程序是這樣的:


算法公式:

(addr & 0xF0000000)+0x2000000+((addr &0xFFFFF)<<5)+(bitnum<<2)

addr & 0xF0000000: 取0x4001 0808的最高位 得到 0x4000 0000

+0x2000000得到 0x4200 0000

+((addr &0xFFFFF)<<5): 將低5位提取出來 乘以 32.映射到位帶別名區

bitnum<<2 :對第2位 進行加操作。 乘以4. 映射到某位

得到其位帶別名區的地址



評論


技術專區

關閉