我們再來看一下EMC的結構圖:
我們再看看EMC的基本操作過程:
1.首先是使能EMC:
PCONP=PCONP|0x00000800; //第11位置1
接下來,設置EMC控制寄存器EMCControl的第0位置1,使能EMC:
EMCControl=0x00000001;
2.引腳連接:
將相關的引腳連接到EMC模塊.
PINSEL6=0x0000 5555; //選擇D0~D7腳
PINSEL8=0x5555 5555; //選擇A0~A15腳
tmp=PINSEL9;
tmp&=&0x0FF0 FFFF;
PINSEL9=tmp|0x5009 0000; //選擇-OE,-WE,-CS0,-CS1腳
3.時序設置:
通常情況下,我們再操作外部存儲器時分為讀,寫兩個操作.
在讀操作的過程中,我們需要配置下面的寄存器
a.靜態存儲器輸出使能延時寄存器(EMCStaticWaitOen0-1);
b.靜態存儲器讀延時寄存器(EMCStaticWaitRd0-1);
c.靜態存儲器頁模式讀延時寄存器(EMCStaticWaitPage0-1);
通過設置靜態存儲器輸出使能延時寄存器(EMCStaticWaitOen0-1)可改變片選信號優先到輸出有效的延時t;
通過靜態存儲器讀延時寄存器(EMCStaticWaitRd0-1)可改變從片選信號有效到器件輸出允許失效之間的延時t.
頁模式下,一次片選有效期內可聯系讀/寫4個字節,在這過程中,-WE和-OE信號保持不變,只有地址信號發生變化,此時不能理解讀取數據線上的數據,而不像等待一段時間t.
EMCStaticWaitPage的作用就是設置這段等待時間t的長短.
要注意的是,如果t值太大,讀的速度會變慢,而t值太小,則讀取可能會出錯.
寫操作的時序設置,我們需要配置的寄存器有:
靜態存儲器寫使能延時寄存器(EMCStaticWaitWen0-1);
靜態存儲器寫延時寄存器(EMCStaticWaitWr0-1);
通過設置靜態存儲器寫使能延時寄存器(EMCStaticWaitWen0-1)改變從"片選有效到寫使能信號有效"之間的延時時間t.
通過設置靜態存儲器寫延時寄存器EMCStaticWaitWr0-1)改變片選有效到寫使能信號失效之間的延時時間t.
上一篇:快速學Arm(42)--外部存儲器控制器(3)
下一篇:快速學Arm(40)--外部存儲器控制器(1)
推薦閱讀
史海拾趣
百事通科技(BUDDIES)深知人才是企業發展的核心。因此,公司一直注重人才培養和團隊建設。公司建立了完善的人才培養和激勵機制,為員工提供廣闊的發展空間和良好的工作環境。同時,公司還積極開展團隊建設活動,增強員工的凝聚力和歸屬感。
駿曄科技非常重視知識產權的積累與保護。公司擁有一支專業的研發團隊,致力于新產品的研發和技術創新。同時,公司還積極申請專利和軟件著作權,保護自身的技術成果。截至目前,駿曄科技已經擁有8個專利信息和12個軟件著作權,這些知識產權的擁有,為公司的發展提供了強有力的支撐。
隨著全球環保意識的不斷提高,Eagle Plastic Devices公司也開始將環保理念融入產品研發和生產過程中。公司采用環保材料、改進生產工藝、降低能耗和排放等措施,努力降低產品對環境的影響。同時,公司還積極參與環保公益活動,倡導綠色消費和可持續發展。這些舉措不僅提升了公司的品牌形象,也為公司帶來了更多的市場機遇。
隨著市場競爭的加劇,EDC意識到只有不斷創新才能在行業中立于不敗之地。因此,公司加大了對新技術、新產品的研發投入。
經過數年的努力,EDC成功研發出了一種新型的顯示技術,該技術在色彩還原、對比度等方面都達到了行業領先水平。這一技術的推出,不僅讓EDC的產品在市場上獲得了更高的認可度,也引領了整個行業的發展潮流。
隨著全球環保意識的提高,EDC也積極響應號召,致力于綠色環保和可持續發展。公司投入大量資金研發節能、環保的顯示器產品,并不斷優化生產工藝以減少對環境的影響。
同時,EDC還積極參與各種環保公益活動,推動行業的綠色發展。這些舉措不僅提升了公司的社會形象,也為公司的可持續發展奠定了堅實的基礎。
我在用QuartusII 實現微程序控制器過程時 仿真時出現這樣的錯誤 *** Fatal error: Module: quartus_sim.exe Exception: Access Violation Stack Trace: 019fc6eb: SDB_TRI::initialize_value_pointers() + 0x21a (tsm_sdb) 80000000:019f3758: ...… 查看全部問答∨ |
聲卡驅動接口wav_iocontrol中pBufIn參數的設置 我想利用DeviceIoControl打開一個聲卡驅動設備。但是編譯的時候報錯,說WODM_OPEN這個變量沒有定義,請教一下應該怎么辦?程序如下: PMMDRV_MESSAGE_PARAMS pBuffin; pBuffin->dwPar ...… 查看全部問答∨ |
wince5 vc++2005 GSM modem 在“控制面板”-“網絡和撥號鏈接”中已有名為“GPRS”的撥號鏈接, 并且手動點擊該鏈接能正常上網的情況下。 我在程序中也能通過rasdial函數來通過這個名為“GPRS”的撥號鏈接 和網絡建立鏈接。 我的問題是: ...… 查看全部問答∨ |
|
我在ARM7上跑uClinux,通過交換機和電腦相連,電腦跑的是pure-ftpd,在板上的uclinux可以put文件到電腦上,但是get文件就會出現 Read-only file system 的錯誤,是不是權限不足?如果是那又怎么解決...... 初學嵌入式,希望大家能幫助… 查看全部問答∨ |
|
主控采用LM3s6911,采用PCA9534擴展IO驅動流水燈,PCA9534接口如下圖 #include "sysinit.h"#include "pca9534.h" void I2C_init(){ //使能I2C所在端口 SysCtlPeripheralEnable( SYSCTL_PERIPH_GPIOA); //使能處理器I ...… 查看全部問答∨ |
|