日韩精品中文字幕第1页,欧美日韩中文一区二区,日韩成人午夜精品,中文字幕一区日韩电影

大學校園網

大學生活網 > 大學生學習 > 電氣工程

80C51單片機工作原理分析

使用ALE信號作為低8位地址的鎖存控制信號。ALE接到外部鎖存器時,高電平期間,51的p0輸出地址,低電平時鎖存器將地址鎖存,在ALE低電平時,(PSEN為低)p0口可以傳輸數據(指令),這樣就可以地址/數據復用了。

以PSEN信號作為擴展程序存儲器的讀選通信號,在讀外部ROM是PSEN是低電平有效,以實現對ROM的讀操作。

以EA信號作為內外程序存儲器的選擇控制信號,當其為低電平時,對ROM的讀操作限定在外部的程序存儲器,當其為高電平時,對ROM的讀操作是從內部存儲器開始的,并可延至外部程序存儲器.

由RD和WR信號作為擴展數據存儲器和I/O口的讀選通、寫選通信號。

EA信號是表示是當前指令是讀內,還是外存儲器的控制信號。如:當選用無片內存儲器的單片機,或者不打算用片內存儲器時,EA必須接低電平,此外,片外程序存儲器的起始地址應該安排在片內存儲器之后。

RD和WR信號就相對好理解,就是當讀數據時(不分內外、RAM、ROM)它就有效。WR也是這樣的。

80C51單片機指令的取指、執行時序

現按4類指令介紹CPU時序。因為CPU工作的過程就是取指令與執行指令的過程,所以CPU必須先取出指令,然后才能執行指令。

1.雙字節單周期指令

由于雙字節單周期指令必須在一個周期內取機器碼二次,所以必須在一個機器周期內安排二次讀操作碼的操作,分別發生在S1P2與S4P2。在S1P2讀入機器碼74并送入指令寄存器IR,在S4P2讀入數據03送入累加器A,即讀2取2。在指令的執行過程中,P0口要分時傳送地址與數據,因此當操作碼的地址從P0口輸出后,必須發地址鎖存信號ALE給74LS373鎖存器,將地址鎖存在74LS373內,騰出P0口讀入機器碼74。在取數據03時同樣要發ALE信號。因此,在一個機器周期內地址鎖存信號二次有效,見80C51時序圖2-13。

2.單字節單周期指令

對單字節單周期指令,由于操作碼只有一個字節,因此第一次讀操作碼有效,而第二次讀的操作碼將被丟棄,即:讀1丟1,且程序計數器PC不加1。

3.單字節雙周期指令

對單字節雙周期指令,由于操作碼只有一個字節,而執行時間長達2個機器周期,因此除第1次讀操作碼有效外,其余三次讀的操作碼均被放棄,即:讀1丟3。

4.訪問外部存儲器指令MOVX

執行訪問外部存儲器指令MOVX時,首先從程序存儲器中取出指令,然后從外部數據存儲器中取出數據,因此該指令執行時序圖與前三類指令不同。由于MOVX是單字節雙周期指令,所以在取指令階段(即第一個機器周期的S1P1到S4P2)是讀1丟1,而在執行指令讀數據階段(即第一個機器周期的S5到第二個機器周期的S3)所完成的操作如下:

(1)先將外部數據存儲單元的地址ADDR由DPTR從P0與P2口輸出,即時序圖中的S5P1到S6P2階段。并在S4P2到S5P2階段,發ALE信號將地址鎖存。

(2)在第二個機器周期S1P2到S2P2內取消ALE與程序選通信號PSEN(即取消取指操作),使P0口專門用于傳送數據。同時發讀信號,通過P0口將外部數據存儲單元中的數據傳送到累加器A中。即:時序圖的S6P2到S4P1階段。

(3)由于鎖存的地址為外部數據存儲單元的地址,所以在第二個機器周期S4取消取指令的操作,即:不再發程序選通信號PSEN。

注:由于執行MOVX指令時,在第二個機器周期中要少發一次ALE信號,所以ALE的頻率是不穩定的。
主站蜘蛛池模板: 堆龙德庆县| 九台市| 法库县| 河津市| 柳林县| 赣州市| 汉沽区| 大连市| 定安县| 惠来县| 曲水县| 华蓥市| 博湖县| 陆河县| 湘潭县| 古交市| 上杭县| 勐海县| 永清县| 蒙城县| 扬中市| 大安市| 紫云| 凌云县| 萍乡市| 嘉峪关市| 甘泉县| 牟定县| 陇川县| 安图县| 三明市| 涡阳县| 浮山县| 黎平县| 基隆市| 清水河县| 汪清县| 黑河市| 浙江省| 衡水市| 华坪县|