51單片機大大大彙總

Without the element of enjoyment, it is not worth trying to excel at anything.---------缺乏興趣,在任何領域達到卓越都是不值得的。

前景知識

體系結構

哈佛結構: 51單片機

普林斯頓結構

微型計算機組成

在這裏插入圖片描述
在這裏插入圖片描述

指令集

CISC(Complex Instruction Set Computer ) 8051
更關注通過增加單條指令的能力(提高硬件複雜度或消耗更多資源)來降低整體程序的複雜度。

RISC(Complex Instruction Set Computer ) ARM
更關注降低單條指令的耗時來提高計算性能。通過簡化單條指令功能來提升處理器的計算性能。

RISC相比CISC往往具有更高的硬件性價比,更低的功耗,在嵌入式系統應用中具有優勢。
RISC系統對編譯器的要求更高,一般嵌入式RISC系統的開發常用C語言完成。

7種尋址方式

寄存器尋址
直接尋址
寄存器間接尋址
立即尋址
基址加變址尋址
相對尋址
位尋址

數據傳送類指令(8條助記符)

內部傳送指令:片內數據存儲器、寄存器數據傳送
( MOV )
外部傳送指令:片外數據存儲器數據傳送
( MOVX )目的操作數和源操作數中必須有一個是A
交換指令: 片內數據存儲器、寄存器數據傳送
( XCH,XCHD,SWAP )
堆棧操作指令:片內數據存儲器數據傳送
( PUSH,POP )
查表指令: 程序存儲器數據傳送
( MOVC )
在這裏插入圖片描述

3個週期

時鐘週期:單片機工作的基本頻率信號,是單片機內的最高頻率,由單片機振盪電路產生或外部振盪電路提供。8051的時鐘頻率範圍要求在1.2MHz~12MHz之間。

機器週期:單片機完成一個基本操作所需要的時間,也是單片機完成一條指令所需的最短時間,MCS51單片機中一個機器週期由12個時鐘週期組成

指令週期:一條指令的執行時間。指令以機器週期爲單位,即所有指令週期都是機器週期的整數倍,如單週期、雙週期和四周期指令。

1, 80C51單片機引腳

主電源引腳: Vss; Vcc
外接晶振或外部振盪器引腳: XTAL1; XTAL2(當採用外部振盪器時,1應接地)
控制,選通或電源複用引腳: RST/VPD; ALE/PROG; PSEN; EA/VPD
多功能I/O口引腳: P0; P1; P2; P3口

復位

一般復位電路:
1)上電覆位
2)手動復位

  • 幾個重要的復位狀態:
    PC = 0000H
    P0,P1,P2,P3 = 0FFH
    PSW= 00H
    SP = 07H

2, 單片機存儲器結構

在這裏插入圖片描述
在這裏插入圖片描述

  • 8051物理上有4個存儲器地址空間:
片內程序存儲器空間 片外程序存儲器空間 片內數據存儲器空間 片外數據存儲器空間
4K Byte 64K Byte 128 Byte+寄存器 64K Byte
3個邏輯地址 (取指和MOVC指令訪問) ( MOV指令和其它取數指令訪問) ( MOVX指令訪問)

在這裏插入圖片描述

3, P引腳

  • P0口-(32-39腳):作I/O口時爲8位漏極開路的I/O端口,當單片機訪問外部存儲器時爲低8位地址總線和數據總線的複用總線。P0口的字節地址爲80H,位地址爲80H~87H。

  • P1口-(1-8腳):8位準雙向並行I/O端口。P1口的字節地址爲90H,位地址爲90H~97H。

  • P2口-(21-28腳):作I/O口時爲8位準雙向I/O端口,當單片機訪問外部存儲器時,作高8位地址總線。

  • P3口-(10-17腳):做I/O口時,爲8位準雙向I/O端口;每一位還有第二特殊功能,具體功能如下:
    P3.0-(10腳)RXD:串行數據接收端。
    P3.1-(11腳)TXD:串行數據發送端。
    P3.2-(12腳)INT0:外部中斷0請求端,低電平有效。
    P3.3-(13腳)INT1:外部中斷1請求端,低電平有效。
    P3.4-(14腳)T0:定時計數器0外部時鐘輸入端。
    P3.5-(15腳)T1:定時計數器1外部時鐘輸入端。
    P3.6-(16腳)WR:外部數據存儲器寫選通信號,低電平有效。
    P3.7-(17腳)RD:外部數據存儲器讀選通信號,低電平有效。

  • 歸納四個並行口使用的注意事項如下
    1.如果單片機內部有程序存貯器,不需要擴展外部存貯器和I/O接口,單片機的四組口均可做I/O口用。
    2.四組口在做輸入口使用時,均應先對其寫“1”,以避免誤讀。
    3.P0口做I/O口使用時應外接10K的上拉電阻,其它口則可不必。
    4.P2可某幾根線作地址使用時,剩下的線不能作I/O口線使用。
    5.P3口的某些口線作第二功能時,剩下的口線可以單獨作I/O口線使用。

4, 定時/計數器

其實定時和計數是同個東西,只是計數

秒針計數(跳動)60下,不就是1分鐘

定時在硬件上是看不見的,另外計數功能也很少用。

5, 中斷

中 斷:在執行程序的過程中,由於某種外界的原因,必須儘快暫停當前的程序執行,而去執行相應的處理程序,待處理結束後,在返回繼續執行被暫停的程序。這個過程叫中斷。

在這裏插入圖片描述
1、外中斷
由外部原因引起的中斷,包括外部中斷0、1分別由外部引腳INT0、INT1引入。外部中斷請求對引腳信號有兩種規定,電平方式和脈衝方式:
電平方式的中斷請求是低電平有效
脈衝方式的中斷請求是脈衝的後沿(負跳變)有效
2、定時器中斷
爲了滿足單片機內部的定時/計數需要而設置的中斷。當計數器發生溢出時,就表明定時時間到了或者計數值已經計滿了,由計數溢出信號向CPU發出中斷請求,它是單片機的內部中斷。
3、串行中斷
爲單片機的串行口接收和發送數據而設置的中斷。每當串行口接收或發送一組數據完以後,就可以產生一箇中斷請求,單片機即發送或接收一個新的數據,它是單片機的內部中斷。

在這裏插入圖片描述
在這裏插入圖片描述

6, 串行通信

串行通信就是通過一條線和另外一臺計算機或單片機通信的過程

6.1 分類

同步通信
異步通信
單工
半雙工
全雙工

在這裏插入圖片描述

6.2 相關寄存器

1.數據緩衝器SBUF
發送SBUF和接收SBUF共用一個地址99H。
1)發送: SBUF存放待發送的8位數據,寫入SBUF將同時啓動發送。發送指令:MOV SBUF,A
2)接收: 存放已接收成功的8位數據,供CPU讀取。讀取串行口接收數據指令:MOV A,SBUF

2.節電控制寄存器PCON

SMOD(PCON.7):波特率加倍控制位。

SMOD=1,波特率加倍, SMOD=0,則不加倍。

在這裏插入圖片描述

3.串行口控制/狀態寄存器SCON(98H)

在這裏插入圖片描述

在這裏插入圖片描述

6.3 波特率

單位時間內傳送的信息量。在計算機中,以每秒傳送的二進制位數爲單位。
例如:100字符/秒,1個字符10位,
波特率爲:100×10=1000(波特)
平均每位傳送佔用時間:Td = 1/1000=1ms
在這裏插入圖片描述
在這裏插入圖片描述

7, AD與DA

因爲單片機是不能處理模擬信號的,只會識別010101這樣的信號,所以必須需要數模轉換和模數轉換。
在這裏插入圖片描述

9, LCD液晶顯示屏

這個不用多說,生活中到處都是液晶顯示屏,

液晶控制器內部存儲器有兩種寄存器:
1.指令寄存器IR(Instruction Register)
IR寄存器用於保存指令代碼,例如:屏幕清除、光標移動、地址指針,IR只能由處理器寫入。
2.數據寄存器DR(Data Register)
DR用於保存寫入到DDRAM(display data RAM)和CGRAM(character generator RAM)中去的數據。

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章