新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > AM30LV0064D在單片機系統中的典型應用

        AM30LV0064D在單片機系統中的典型應用

        作者: 時間:2013-04-13 來源:網絡 收藏


          所有操作都建立在命令字基礎上。對主存操作時,所有命令字都通過芯片的8個I/O引腳寫到命令寄存器中,激活狀態機進行相應的操作。存儲器地址以及數據也從8位I/O腳寫入。對存儲器地址進行連續操作或對存儲塊操作時都要先向地址寄存器寫入1個起始地址。地址分3次寫進去,從低字節開始傳送,具體的地址位傳送順序分配。(由于對存儲器的讀操作分前后2個半頁,每半頁256字節,在命令字中已經包含了此信息,而編程以頁為單位、擦除以塊為單位,所以傳送的地址位中不含A8)

          通過片選引腳CE使能,先是CLE和WE信號有效,通過I/O口寫入命令字;接著ALE和WE有效,寫入數據存取的起始地址。最后根據命令要求,讀數據或數據。由于具有多元的控制總線,對應的操作方式也是多樣的。根據命令字的定義可進行以下操作。

          3 應用電路設計

          的外圍電路設計簡單。其控制總線包括CE(片選)、CLE(命令字鎖存使能)、ALE(地址鎖存使能)、WE(寫使能)、RE(讀使能)、SE(預留區使能)、WP(寫保護)等。對于那些具有可編程的I/O口的微控制器或DSP來說,可以直接把引腳與控制線相連。如果沒有可編程的I/O口,則需要加一些簡單的邏輯控制。下面介紹AM30LV0064D與at89ls8252單片機接口時的一種應用設計電路。由于單片機缺少UltraNAND閃存所需的多元控制總線,在本設計中,采用地址譯碼的方法增加了控制端口,這部分邏輯可以用1片PLD(可編程邏輯器件)完成。具體接口電路。

          以下是PLD內部邏輯設計的源代碼:

          PORT0=!A14!A13!A12!A11; /*讀寫數據端口*/

          PORT1=!A14!A13!A12!A11; /*CLE寫端口*/

          PORT2=!A14!A13!A12!A11; /*設置ALE端口*/

          PORT3=!A14!A13!A12!A11; /*清ALE端口*/

          PORT4=!A14!A13!A12!A11; /*設置SE端口*/

          PORT5=!A14!A13!A12!A11; /*清SE端口*/

          PORT6=!A14!A13!A12!A11; /*設置WP端口*/

          PORT7=!A14!A13!A12!A11; /*清除WP端口*/

          PORT8=!A14!A13!A12!A11; /*設置CE1端口*/

          PORT9=!A14!A13!A12!A11; /*清除CE1端口*/

          PORTA=!A14!A13!A12!A11; /*讀RY/BY狀態端口*/

          PORTB=!A14!A13!A12!A11; /*設置CE2端口*/

          PORTC=!A14!A13!A12!A11; /*清除CE2端口*/

          /*邏輯方程*/

          READY.OE=PORTAREAD;/*Ready只通過PORTA讀取*/

          READY=RY_BY;

          CLE=PORT1;

          ALE=WRTIE PORT2#ALE!(WRITE PORT3)#ALE PORT2);

          SE=WRITEPORT4#SE!(WRITE PORT5)#SE PORT4;

          WP=WRITE PORT6#WP!(WRITE PORT7)# WP PORT6;

          CE1=WRITE PORT8#CE !(WRITE PORT9)#CE PORT8;

          CE2=WRITE PORTB#CE!(WRITE PORTC)#CE PORTB;

          WE=WRITE (PORT0#PORT1);

          RE=READPORT0;

          4 軟件流程

          下面重點介紹通過單片機對AM30LV0064D進行數據編程的軟件流程:單片機啟動編程程序,將IS61LV256中的數據讀出后再寫到FLASH中,每次寫512字節的數據(半頁為256字節)。然后,對相應頁進行編程,編程命令字寫入后定期查詢RY/BY引腳,看編程是否已經完成,如果完成再讀取FLASH的狀態寄存器,可以知道編程是否成功。具體流程。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 长春市| 平塘县| 营口市| 大洼县| 南投县| 泸州市| 逊克县| 罗定市| 樟树市| 靖边县| 佛教| 承德县| 宁津县| 马尔康县| 鄱阳县| 宜城市| 蕲春县| 绥江县| 晋宁县| 科技| 迭部县| 贵阳市| 双桥区| 澄江县| 潮州市| 卢氏县| 石门县| 南汇区| 天水市| 镇雄县| 崇义县| 新晃| 扎囊县| 莱阳市| 临洮县| 浠水县| 油尖旺区| 湄潭县| 荔波县| 杭州市| 五河县|