日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

內部高128個字節是SFR區

21個SFR(特殊功能寄存器)離散分布(只能使用直接尋址的方式)。

至于什么叫不可尋址,則是指不能單獨進行每一位的操作,如TMOD定時器工作模式及工作方式寄存器,在進行操作時,只能寫TMOD=0xXX 。

關于能否進行位操作,可以通過查相關資料知道,當然還有個技巧就是其字節地址換成10 進制后能否被“8 ”整除,能被“8 ”整除的就能進行位操作,不能被“8 ”整除就不能,如P1 地址為90H ,10 進制為144 , 144/8=18 ,能被整除,所以可以位操作。再如TMOD 地址為89H , 10 進制為137 ,137/8=17.125 ,不能被整除,所以不可以位操作。

特殊寄存器

 


 

(1)ACC——累加器

通常用A表示。該標志常用于程序分支轉移的判斷條件。

(2)B——一個寄存器

在做乘、除法時放乘數或除數。

(3)PSW——程序狀態字

存放CPU工作時的狀態。

D7

D6

D5

D4

D3

D2

D1

D0

CY

AC

F0

RS1

RS0

OV

 

P

用途 :

  • CY :進位標志。
  • AC :輔助進、借位(高半字節與低半字節間的進、借位)。
  • F0 :用戶標志位,由用戶(編程人員)決定什么時候用,什么時候不用。
  • RS1 、RS0 :工作寄存器組選擇位。
  • OV :溢出標志位。運算結果按補碼運算理解。有溢出,OV=1;無溢出,OV=0。
  • P :奇偶校驗位:它用來表示ALU運算結果中二進制數位“1”的個數的奇偶性。

(4)DPTR(DPH、DPL) ——數據指針

可以用它來訪問外部數據存儲器中的任一單元,如果不用,也可以作為通用寄存器來用,由我們自已決定如何使用。分成DPL(低8位)和DPH(高8位)兩個寄存器。用來存放16位地址值,以便用間接尋址或變址尋址的方式對片外數據RAM或程序存儲器作64K字節范圍內的數據操作。

(5)P0、P1、P2、P3——四個并行輸入/輸出口的寄存器。

(6)IE——中斷充許寄存器

按位尋址,地址:A8H。

B7

B6

B5

B4

B3

B2

B1

B0

EA

-

ET2

ES

ET1

EX1

ET0

EX0

  •  
  • EA (IE.7): EA=0時,所有中斷禁止(即不產生中斷)
    EA=1時,各中斷的產生由個別的允許位決定
  • -(IE.6) :保留
  • ET2(IE.5):定時2溢出中斷充許(8052用)
  • ES (IE.4):串行口中斷充許(ES=1充許,ES=0禁止)
  • ET1(IE.3):定時1中斷充許
  • EX1(IE.2):外中斷INT1中斷充許
  • ET0(IE.1):定時器0中斷充許
  • EX0(IE.0):外部中斷INT0的中斷允許

中斷的自然優先級 :

中斷函數編號

中斷名稱

中斷標志位

中斷使能位

中斷向量地址

默認優先級

0

外部中斷0

IE0

EX0

03H

1(最高)

1

定時器T0中斷

TF0

ET0

0BH

2

2

外部中斷1

IE1

EX1

13H

3

3

定時器T1中斷

TF1

ET1

1BH

4

4

UART中斷(串口)

T1/R1

ES

23H

5

(7)TCON——定時器/計數器控制寄存器

字節地址為88H,可以位尋址。

位序號

D7

D6

D5

D4

D3

D2

D1

D0

位符號

TF1

TR1

TF0

TR0

IE1

IT1

IE0

IT0

位地址

8FH

8EH

8DH

8CH

8BH

8AH

89H

88H

TF1: 定時器1溢出標志位,當定時器1計滿溢出時,由硬件將TF1置1,并申請中斷;進入中斷服務程序后,由硬件自動清零。

TR1: 定時器1運行控制位: TR=1表示啟動定時器,需要配合GATE和INT1。

  • 當GATE=1,且INT1為高電平時,TR1置1啟動定時器。
  • 當GATE=0時,TR1置1啟動定時器1。

TF0: 定時器0溢出標志位,功能和用法同TF1.

TR0: 定時器0運行控制位,功能和用法同TR1.

IE1: 外部中斷1請求標志位.

  • IT1=0時,為電平觸發方式,每個機器周期的S5P2采樣INT1引腳,若INT1腳為高電平,則置1;否則IE1清0.
  • IT1=0時,為跳變沿觸發方式,當第一個機器周期采樣到INT1為低電平時,將IE1置1,表示外部中斷1正在向CPU請求中斷.當CPU響應,轉向中斷服務程序時,IE1由硬件清零.

IT1: 外部中斷1觸發方式選擇位.

  • IT1=0時,為電平觸發方式,引腳INT1上的低電平有效.
  • IT1=1時,為跳變沿觸發方式,引腳INT1上的電平從高到低的負跳變有效.

IE0: 外部中斷0請求標志位,功能和用法同IE1.

IT0: 外部中斷0觸發方式選擇位,功能和用法同IT1.

(8) TMOD寄存器:定時器/計數器工作方式寄存器

TMOD寄存器: 定時器/計數器工作方式寄存器.字節地址為89H,不能位尋址.

位序號

D7

D6

D5

D4

D3

D2

D1

D0

位符號

GATE

C/T

M1

M0

GATE

C/T

M1

M0

控制的定時器

定時器1

定時器0

 

 

 

 

 

 

GATE: 門控制位

  • GATE=0時,定時器/計數器啟動與停止僅受TCON寄存器中的TRX(X=0/1)來控制.
    GATE=1時,定時器/計數器啟動與停止由TCON寄存器中的TRX(X=0/1)和外部中斷引腳(INT0或INT1)上的電平狀態共同控制.

C/T ‾ overline{T}T: 定時器模式和計數器模式選擇位

  • C/T ‾ overline{T}T=1時為計數器模式
    C/T ‾ overline{T}T=0時為定時器模式

M1,M0: 工作方式選擇位

定時器T0有4種工作方式:方式0,方式1,方式2,=方式3= 。

設置定時器T1為方式3會讓它進入關閉狀態。通常情況下,T0不運行于工作方式3,只有在T1處于工作方式2,并不要求中斷的條件下才可能使用。這時,T1往往用作串行口波特率發生器,TH0用作定時器,TL0作為定時器或計數器。

定時器T1有3種工作方式:方式0,方式1,方式2。

(9) SUBF寄存器: 串行數據緩沖器(一個接收一個發送)

當發送使用時,就采用SBUF=XXX; (XXX為需要傳送的數據)

當接收使用時,采用XXX=SBUF;

(10) SCON寄存器: 串行口控制寄存器

它用于控制串行通信的方式選擇、接收和發送,指示串口的狀態。SCON既可以字節尋址,也可以位尋址。

D7

D6

D5

D4

D3

D2

D1

D0

SM0

SM1

SM2

REN

TB8

RB8

TI

RI

9FH

9EH

9DH

9CH

9BH

9AH

99H

98H

SM0, SM1:串行口工作方式控制位。

SM0

SM1

工作方式

功能

波特率

0

0

方式0

8位同步移位寄存器

晶振頻率/12

0

1

方式1

10位UART

可變

1

0

方式2

11位UART

晶振頻率/64或晶振頻率/32

1

1

方式3

11位UART

可變

工作方式0:串行口為同步移位寄存器的輸入輸出方式。主要用于擴展并行輸入或輸出口。數據由RXD(P3.0)引腳輸入或輸出,同步移位脈沖由TXD(P3.1)引腳輸出。發送和接收均為8位數據,低位在先,高位在后。波特率固定為fosc/12。

工作方式1:方式1是10位數據的異步通信口。TXD為數據的發送引腳,RXD是數據的接受引腳。傳送一幀數據的格式為1位起始位,8位數據位,1位停止位。

方式2或方式3:方式2或方式3時,為11位數據的異步通信口,TXD為數據發送引腳,RXD為數據接收引腳。起始位1位、數據位9位(含附加的第九位,發送時為SCON中的TB8,接收時為SCON中的RB8)、停止位1位,一幀數據為11位。方式2的波特率固定為晶振頻率的1/32或1/64。方式3的波特率由定時器T1的溢出率決定。

SM2:多機通信控制位。

多機通信是工作于方式2和方式3,即SM2主要用于方式2和方式3。當串行口工作于方式2或3,以及SM2=1時,只有當接收到第9位數據(RB8)為1時,才把接收到的前8位數據送入SBUF,且置位RI發出中斷申請,否則會將接收到的數據放棄。當SM2=0時,就不管第9位數據是0還是1,都會將數據送入SBUF,并發出中斷申請。

REN:允許接受位。

REN=1:允許接收
REN=0:禁止接收

TB8:發送數據位8.

在方式2和方式3中,TB8是要發送的——即第9位數據位。在多機通信中同樣亦要傳輸這一位,并且它代表傳輸的地址還是數據,TB8=0為數據,TB8=1時為地址。

RB8:接收數據位8(一般配置為0)。

在方式2和方式3中,RB8存放接收到的第9位數據,用以識別接收到的數據特征。

TI:發送中斷標志位。

可尋址標志位。方式0時,發送完第8位數據后,由硬件置位,其它方式下,在發送或停止位之前由硬件置位,因此,TI=1表示幀發送結束,TI可由軟件清“0”。

RI:接收中斷標志位。

可尋址標志位。接收完第8位數據后,該位由硬件置位,在其他工作方式下,該位由硬件置位,RI=1表示幀接收完成。在配置串口初始化程序的時候,我們一般只用配置高四位,如果我們選擇工作方式1,那么就是SCON=0X50;(SM0=0,SM1=1,SM2=0,REN=1)

原文作者:
https://kernel.0voice.com/

原文地址:
https://kernel.0voice.com/forum.php?mod=viewthread&tid=1997&extra=page%3D1(版權歸原文作者所有,侵權聯系刪除)

分享到:
標簽:Linux
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定