專注電子技術(shù)學(xué)習(xí)與研究
當前位置:單片機教程網(wǎng) >> MCU設(shè)計實例 >> 瀏覽文章

EEPROM外部程序存儲器實驗

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2010年06月14日   【字體:

一、實驗?zāi)康?/b>

1.掌握89C51單片機擴展外ROM的方法
2.了解EEPROM的使用方法
 
二、實驗說明
MCS-51型單片機芯片中,8031片內(nèi)無ROM,必須擴展外ROM;80C51片內(nèi)雖有4KB掩膜ROM,但寫入程序時需由生產(chǎn)商一次性輸入,使用起來很不方便;89C51芯片內(nèi)有4KB EEPROM,若片內(nèi)ROM不夠用,也需擴展片外ROM。
 
一、實驗?zāi)康?/b>
1、了解8155芯片結(jié)構(gòu)及接口方式
2、掌握8155輸入、輸出的編程方法
 
二、實驗說明
1、本實驗利用8155可編程并行口芯片,實現(xiàn)數(shù)據(jù)的輸入、輸出。實驗中8155的PA口、PB口作為輸出口。與8255比,8155具有更強的功能,因為它除能提供并行接口外還包括有256字節(jié)RAM存儲器和14位定時器/計數(shù)器。8155具有三個可編程I/O口,其中PA、PB為八位口,PC口為6位口。PA口、PB口為通用的輸入輸出口,主要用于數(shù)據(jù)的I/O傳送,他們都是數(shù)據(jù)口,因此只有輸入輸出兩種工作方式。
2、了解實驗用到的芯片引腳及功能:
8155是一種可編程多功能接口芯片,功能豐富,使用方便,特別適合于擴展少量RAM和定時器/計數(shù)器的場合。其部
分引腳功能如下:
(1) AD0~AD7——地址/數(shù)據(jù)總線,雙向三態(tài)。
1)8155有256字節(jié)靜態(tài)RAM,每一字節(jié)均有相應(yīng)地址,
輸入輸出數(shù)據(jù)均通過AD0~AD7口傳送。
2)8155內(nèi)部有6個寄存器:A口,B口,C口,命令狀
態(tài)寄存器,定時/計數(shù)器低8位,定時/計數(shù)器高6位加2位
輸出信號形式,6個寄存器有各自相應(yīng)的地址。地址及寫入或
讀出的數(shù)據(jù)均通過AD0~AD7傳送。
3)AD0~AD7傳送數(shù)據(jù)的方向由RD,WR信號控制。
(2) CE——片選信號,輸入,低電平有效。
(3) WR——寫信號,輸入,低電平有效。
(4) RD——讀信號,輸入,低電平有效。
(5) PA0~PA7——A口8位通用I/O線。
(6) PB0~PB7——B口8位通用I/O線。
(7) PC0~PC5——C口6位I/O線既可作通用I/O口,又可作A口和B口工作于選通方式下的控制信號。
(8) IO/M——I/O與RAM選擇信號。8155內(nèi)部I/O口與RAM是分開編址的,因此要使用控制信號進行區(qū)分。IO/M=0,對RAM進行讀寫;IO/M=1,對I/O進行和計數(shù)器進行讀寫。  
3、本實驗8155的端口地址由單片機的P0口和P2.7以及P2.0決定?刂瓶诘牡刂窞7F00H;PA口的地址為7F01H;PB口的地址為7F02H。
 
三、實驗內(nèi)容及步驟
本實驗分兩種情況來進行:(一) PA口作為輸出口。 (二) PA口作為輸出口,PB口作為輸入口。
(一)PA口作為輸出口,接八位邏輯電平顯示,程序功能使發(fā)光二極管單只從右到左輪流循環(huán)點亮。
1、單片機最小應(yīng)用系統(tǒng)的 P0口接8155的D0~D7口,8155的PA0~PA7接八位邏輯電平顯示JD10,單片機最小應(yīng)用系統(tǒng)的P2.0、P2.7、RD、WR、ALE分別接8155的IO/M、CE、RD、WR、ALE,RESET接上最小系統(tǒng)的復(fù)位電路的RESET。
2、用串行數(shù)據(jù)通信線連接計算機與仿真器,把仿真器插到模塊的鎖緊插座中,請注意仿真器的方向:缺口朝上。
3、打開Keil uVision2仿真軟件,首先建立本實驗的項目文件,接著添加 8155_A.ASM源程序,進行編譯,直到編譯無誤。
4、進行軟件設(shè)置,選擇硬件仿真,選擇串行口,設(shè)置波特率為38400。
5、也可以把源程序編譯成可執(zhí)行文件,把可執(zhí)行文件用ISP燒錄器燒錄到89S52/89S51芯片中運行。(ISP燒錄器的使用查看附錄二)
 (二)PA口作為輸出口,PB口作為輸入口,PA口讀入鍵信號送八位邏輯電平顯示模塊顯示。
1、單片機最小應(yīng)用系統(tǒng)的 P0口接8155的D0~D7口,8155的PA0~PA7接八位邏輯電平顯示,PB0~PB7口接查詢式鍵盤模塊,單片機最小應(yīng)用系統(tǒng)的P2.0、P2.7、RD、WR、ALE分別接8155的IO/M、CE、RD、WR、ALE,RESET接上復(fù)位電路的RESET。
2、打開8155_B.ASM源程序,編譯無誤后,全速運行程序。按查詢式鍵盤各鍵,觀察發(fā)光二極管的亮滅情況,發(fā)光二極管與按鍵相對應(yīng),按下為點亮,松開為熄滅。
5、也可以把源程序編譯成可執(zhí)行文件,把可執(zhí)行文件用ISP燒錄器燒錄到89S52/89S51芯片中運行。(ISP燒錄器的使用查看附錄二)
四、流程圖及源程序
 

8155工作方式
8155PB口
8155PA口
 
 
8155工作方式
8155PA口
數(shù)據(jù)左移
 
延 時
 
 

源程序如下:
(一)PA口輸出:
      org       0h
      porta    equ    7F01h       ;A口
      Portb    equ    7F02h       ;B口
      caddr    equ    7F00h       ;控制字地址
      mov      a,#03h             ;方式0,PA、PB輸出
      mov      dptr, #caddr
       movx     @dptr, a
Loop:
       mov     a, #0FEh
       mov     r2, #8
Output:
       mov     dptr, #porta
       movx    @dptr, a
       call    Delay
       rl      a
       djnz    r2, Output
       ljmp    Loop
Delay:
       mov     r6, #0
       mov     r7, #0
DelayLoop:
       djnz    r6, DelayLoop
       djnz    r7, DelayLoop
       ret
       end
(二)PA口輸出,PB口輸入
       ORG     0
       mode    equ   01h          ;方式0,PA輸出,PB輸入
       PortA   equ   7F01h        ;A口
       PortB   equ   7F02h        ;B口
       CAddr   equ   7F00h        ;控制字地址
       SJMP   START
org     30h          
   mov     a, #mode
       mov     dptr, #caddr
       movx    @dptr, a
START:mov     dptr, #PortB
       movx    a, @dptr             ;讀入B口
       mov     dptr, #PortA
       movx    @dptr, a             ;輸出到A口
       call   delay
       Sjmp    START
       end 
 
五、思考題
試用8155PA口作為輸出口,PB作為輸入口,PC作為輸入口完成8155的輸入、輸出實驗(其中PA口LED數(shù)碼顯示,PB接撥斷開關(guān),PC接查詢式鍵盤實驗?zāi)K)。

相關(guān)文章