<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 牛人業(yè)話 > FSMC使用之外擴(kuò)RAM的妙用

          FSMC使用之外擴(kuò)RAM的妙用

          作者:liklon 時(shí)間:2013-10-23 來(lái)源:電子產(chǎn)品世界 收藏

            在上跑UCOS_II和UCGUI時(shí),要想讓屏幕穩(wěn)定不閃,顯示效果多樣化,而且分配給每個(gè)任務(wù)的堆棧空間足夠,內(nèi)部的肯定是不足的。最好的方法就是配置使內(nèi)部作為堆棧使用,而外部作為變量存儲(chǔ)和UCOS_II的任務(wù)堆?!,F(xiàn)在介紹以及如何配置,并寫出啟動(dòng)文件中需要修改的地方。

          本文引用地址:http://www.ex-cimer.com/article/182411.htm

            簡(jiǎn)介

            為什么可以利用FSMC來(lái)使用外部RAM呢,先了解一下里的FSMC。大容量且引腳數(shù)在100腳以上的STM32F103芯片都帶有FSMC接口。FSMC是靈活的靜態(tài)存儲(chǔ)控制器,能夠與同步或異步存儲(chǔ)器和16位PC存儲(chǔ)器卡接口,STM32的FSMC接口支持包括SRAM、NAND FLASH、NOR FLASH和PSRAM等存儲(chǔ)器。FSMC框圖:

            FSMC管理1 GB的映射地址空間。該空間劃分為4個(gè)大小為256 MB的BANK,每個(gè)BANK又劃分為4個(gè)64 MB的子BANK,F(xiàn)SMC的2個(gè)控制器管理的映射地址空間不同。NOR Flash控制器管理第1個(gè)BANK,NAND/PC Card控制器管理第2~4個(gè)BANK。如圖是FSMC的存儲(chǔ)空間地址映射:

            這次的重點(diǎn)是用上外部的RAM,所以只介紹Bank1。STM32的FSMC存儲(chǔ)塊1被分為4個(gè)區(qū),每個(gè)區(qū)管理64M字節(jié)空間,每個(gè)區(qū)都有獨(dú)立的寄存器對(duì)連接的存儲(chǔ)器進(jìn)行配置。Bank1的256M字節(jié)空間由28根地址先尋址。當(dāng)Bank1接的是16位寬的設(shè)備,HADDR[25:1]->FSMC[24:0]。當(dāng)Bank1接的是8為寬度存儲(chǔ)器的時(shí)候:HADDR[25:0]->FSMC[25:0]。

            對(duì)FSMC的基本信息介紹就是上面這幾點(diǎn),重點(diǎn)是關(guān)注每一個(gè)區(qū)的地址范圍。因?yàn)樵谙旅娴膬?nèi)容會(huì)用到。

            FSMC配置

            根據(jù)此原理圖進(jìn)行配置:

            如圖是以FSMC的BANK1區(qū)域3來(lái)控制IS63WV51216這個(gè)1M字節(jié)容量的SRAM芯片。開始配置FSMC,現(xiàn)在是利用FSMC來(lái)操作外部SRAM。所以在選擇存儲(chǔ)器類型時(shí)就選擇SRAM。上圖可以看出地址總線和數(shù)據(jù)總線是分開的,所以配置的時(shí)候選擇不復(fù)用總線。也要注意的是芯片的數(shù)據(jù)寬度是16位。在配置完成后使能控制塊就可以了。如下是配置代碼

            LDR R0,= 0x00000114
            LDR R1,= 0x40021014
            STR R0,[R1] ;使能FSMC時(shí)鐘
            LDR R0, =0X000001E0
            LDR R1, =0X40021018
            STR R0,[R1] ;GPIOD,GPIOE,GPIOF,GPIOG時(shí)鐘使能
            LDR R0,= 0x44BB44BB
            LDR R1,= 0x40011400
            STR R0,[R1]
            LDR R0,= 0xBBBBBBBB
            LDR R1,= 0x40011404
            STR R0,[R1] ;配置GPIOD
            LDR R0,= 0xB44444BB
            LDR R1,= 0x40011800
            STR R0,[R1]
            LDR R0,= 0xBBBBBBBB
            LDR R1,= 0x40011804
            STR R0,[R1] ;配置GPIOE
            LDR R0,= 0x44BBBBBB
            LDR R1,= 0x40011C00
            STR R0,[R1]
            LDR R0,= 0xBBBB4444
            LDR R1,= 0x40011C04
            STR R0,[R1] ;配置GPIOF
            LDR R0,= 0x44BBBBBB
            LDR R1,= 0x40012000
            STR R0,[R1]
            LDR R0,= 0x44444B44
            LDR R1,= 0x40012004
            STR R0,[R1] ;配置GPIOG

          存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理



          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: STM32 FSMC RAM

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();