久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1766|回復: 1
打印 上一主題 下一主題
收起左側

MCS-51單片機 原理 整理

[復制鏈接]
跳轉到指定樓層
樓主
ID:565582 發表于 2019-6-18 22:15 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
《MCS-51單片機原理、系統設計與應用_12015401.pdf》
MCS-51 Intel 公司 的 8051 內核技術
MSC-51單片機(有史以來,最簡單易懂教程).pdf
《新編MCS-51單片機應用設計.pdf》 ---- good

2 MCS-51 PC 指針

PC 是 單片機 CPU 內部的一個寄存器
總是指向程序存儲器,存放下一條要執行指令的地址。
復位之后的的值為 0x0000H

CPU內部的寄存器包括:

寄存器        復位值
PC        0000H
Acc        00H
B        00H
PSW        00H
SP        07H
DPTR        0000H
MCS-51 復位之后,(PC)= 0000H,
系統程序從0000H單元開始,0000H是復位入口地址,是系統程序的啟動地址。
一般在該單元存放一條絕對跳轉指令,從跳轉地址開始存放初始化程序和主程序。

2 MCS-52 內部RAM劃分

00H — 7FH ( 0 —127 )單元組成的128字節的RAM塊

80H ---- FFH ( 128 — 255 )單元組成的 128字節的RAM塊 (MCS-51中沒有,這一個部分)

80H ---- FFH ( 128 — 255 )的 SFR 特殊功能寄存器塊

在MCS-52 中,高128字節的RAM 和SFR塊地址重疊,但是物理上是兩個不同的地方。
訪問的時候,根據指令的不同,來確定是訪問RAM,還是方位SFR。
訪問高80H ---- FFH RAM是 間接尋址方式。
訪問SFR 是 直接尋址方式。
低128字節的RAM 間接 直接都可以。

SFR 這128個字節中僅僅有26個字節是有意義的。

3 MSC-51 低128字節 RAM劃分 00H – 7FH



CPU寄存器 SP 指針 復位之后 指向 RAM地址 07H,
如果使用PUSH指令 ,會將數據存放在 RAM地址07H,08H,依次往上。

RAM 地址的 00H — 07H 是第一組 R0 — R7
RAM 地址的 08H — 0FH 是第二組 R0 — R7
RAM 地址的 10H — 17H 是第三組 R0 — R7
RAM 地址的 18H — 1FH 是第四組 R0 — R7
R0—R7 不是 和 PC SP 一樣的 CPU內部的寄存器。

R0 – R7 叫做 工作寄存器區 位于 RAM

SFR 應該是位于CPU內部— 是特殊功能寄存器。

4 堆棧

用戶RAM區,地址為30H — 7FH,這些地址只能按字節尋址。
復位的時候,SP指向07H單元,當用戶使用堆棧的時候,應該首先設置堆棧,用戶堆棧一般設置在30H—7FH范圍之內。
SP 設置的越大,堆棧越淺。

堆棧 是在片內RAM中開辟出來的一個區域,其主要是為子程序調用和中斷操作而設立的。
具體功能是:保護斷點和保護現場。
無論是子程序調用,還是中斷操作,都需要返回主程序。

堆棧指針SP 是一個8位的SFR,特殊功能寄存器,SP的內容指示堆棧頂部在內部RAM塊中的位置。
它可以指向內部RAM 00H— 7FH的任何單元。
實際使用的時候,最好是SP的值,設置為1FH,或者更大的值。

堆棧的操作,也就是對SP指針的操作,是通過指令集中的PUSH和POP指令實現的。
操作兩種:一種是數據壓入(PUSH)堆棧,
另外一種是數據彈出(POP)堆棧。

堆棧的棧頂由SP自動管理。每次進入壓入或者彈出操作以后,堆棧指針SP自動調整以保持指示棧頂位置。
當一個字節數據壓入堆棧后,SP自動加1.
一個字節數據彈出堆棧之后,SP自動減1
MCS-51單片機的這種堆棧結構是屬于向上生長型的堆棧。

5 堆棧操作指令

MCS-51 單片機內部 RAM,后進先出(Last In First Out),
進棧指令
Push direct
功能是,首先將SP 加1 ,然后將direct指向的地址的內容,放到SP指向的RAM單元中。
出棧指令
POP direct
棧指向的RAM中的內容放入 direct指向的地址中,
SP 減小1.

6 RET 子程序的放回指令

RET
指向指令的時候,
SP ---->PCH 然后 SP - 1 -----> SP
SP ---->PCL 然后 SP - 1 -----> SP
功能是從堆棧中退出PC的高8位和低8位字節,
把棧指針減小2,從PC值開始繼續執行程序。不影響標志。

6 RETI 子程序的放回指令

和RET類似,本指令清除了中斷響應時候,單片機內部的中斷優先級狀態。

7 長調用





8 中斷

中斷源向CPU提出處理請求。
CPU主動中止執行的程序,轉去執行中斷服務程序,
硬件自動將中斷點的地址(16位程序計數器PC的值)壓入堆棧中。

中斷響應的主要內容是由硬件自動生成一條長調用指令LCALL addr16。
addr16 是程序存儲區中的中斷向量地址。
例如 對于 外部中斷1的響應,產生的長調用指令是,
LCALL 0013H。

生成LCALL 指令后,由CPU直接執行該指令。
首先是將PC的內容壓入堆棧保護斷點,再將中斷入口地址裝入PC。

9 典型的中斷服務程序

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:565582 發表于 2019-6-18 22:34 | 只看該作者
非常好
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 一区二区三区国产 | 日韩精品久久一区 | 免费一区在线 | 美女中文字幕视频 | 国产精品久久久久久 | 99精品欧美一区二区三区综合在线 | 亚洲欧美日韩在线 | 欧美日韩视频一区二区 | 欧美日本免费 | 精品国产乱码久久久久久蜜臀 | 久久久久久成人 | 欧美在线视频免费 | 日韩在线一区二区 | 野狼在线社区2017入口 | 开操网| 97福利在线 | 草b视频| 亚洲精品一区二区 | 日韩欧美在线一区 | 欧美一区免费 | 91精品久久久久久综合五月天 | 欧美日韩国产一区二区三区 | 色接久久 | 欧美一区成人 | 国产精品一区在线 | 色妹子综合网 | 狠狠操你 | 精品国产欧美在线 | 超碰日韩 | 久在线 | 亚洲天堂久久 | 毛片在线看片 | 欧美二区在线 | 欧美日日 | 久久久2o19精品 | 成年网站在线观看 | 色综合视频 | 久久久女| 在线视频国产一区 | 久久伦理中文字幕 | 欧美日韩在线观看一区 |