一 : 定时器 / 计数器方式选择 : TMOD 地址 (89H) 不可位寻址

D7    D6    D5    D4    D3    D2    D1    D0

GATE  C/T   M1    M0    GATE  C/T   M1    M0

GATE : 门控制位 GATE="0" 时于外部中断无关 GATE="1" 时无外部中断才允许启动。即( INT0/1 = 1 时)

C/T : 定时、计数 方式选择位。 C/T=0 时为定时方式 C/T=1 时计数方式

M1M0 : M0M1=00 时为方式 0 , M1M0=10 时为方式 1 , M1M0=11 时为方式 3

二 : 中断标志与中断控制寄存器 : TCON 地址( 88H )可位寻址

D7    D6    D5    D4    D3    D2    D1    D0

TF1   TR1   TF0   TR0   IE1   IT1   IE0   IT0

TR1 、 TR0 是 T1 、 T0 的启动控制位,置 1 起动。置 0 停止定时 / 计数器。

TF1 、 TF0 是 T1 、 T0 的溢出标志位,溢出时由硬件置 1 , CPU 响应中断后由硬件清0 软件查询时由软件清 0

IT0 、 IT1 为外部中断 0 、 1 的触发控制位 IT0/1 = 0 时为电平触发= 1 时下降沿触发

IE0 、 IE1 为外部中断 0 、 1 请求标志,当有中断信号时由硬件置 1 ,完成中断时由硬件清 0

三 : 中断允许控制寄存器 : IE 地址( A8H )可位寻址

D7    D6    D5    D4    D3    D2    D1    D0

EA    ―    ―    ES    ET1   EX1   ET0   EX0

EA : 总控位, EA="0" 时关所有中断。 EA="1" 时所有中断请求均被开放。

ES : 串行口, ES="1" 时开, ES="0" 时关串行中断

ET1 、 ET0 定时计数 = 1 时开 = 0 时关 EX1 、 EX0 外部中断= 1 时开= 0 时关

四 : 中断优先级控制寄存器 IP 地址 (B8H) 可位寻址 

D7    D6    D5    D4    D3    D2    D1    D0

―    ―    ―    PS    PT1   PX1   PT0   PX0

PS: 串口 PT1/0 定时 / 计数器 PX1/0 外部中断 = 1 高优先 = 0 低优先

五 : 串行控制寄存器 SCON 地址 (98H) 可位寻址

D7    D6    D5    D4    D3    D2    D1    D0

SM0   SM1   SM2   REN   TB8   RB8   TI    RI

SM0/1 是串行工作方式选择位,共四种工作方式见表

SM0 SM1 工作方式 说明 波特率

0 0 方式 0 同步移位寄存器 Fosc/12

0 1 方式 1 10 位异步收发 由定时器控制

1 0 方式 2 11 位异步收发 Fosc/32/64

1 1 方式 3 11 位异步收发 由定时器控制

SM2 : 是多机通信控制位,主要用于 2 和 3 。仅用于接收。

对于方式 2 和 3:

    若 SM2=1 ,允许多机通信,只有当接收到第 9 位数( RB8 )为 1 时,才接收前 8 位数送入 SBUF ,并向 RI 位产生中断请求,否则前 8 位数丢弃。

    SM2=0 时,无论 RB8 是 0/1 都将前 8 位数装入 SBUF 中并产生中断请求。在方式 0 进不用 SM2 时必须设为 0 。

在方式 1 时,若 SM2=1 时则只有接收到有效停止位时 RI 才置 1 。 REN 允许接收位, REN = 1 允许接收,否则不允许。

TB8: 为发送的第 9 位数(在方式 2 、 3 时),可用作校验位,在多机通信中,用 TB8 的状态表示主机发送的是地址还是数据。 TB8=1 时表示地址。= 0 时表示数据。

RB8: 是接收数据第 9 位(方式 2 、 3 )还代表接收数据的特征,可能是校验或地址 / 数据标志

TI: 发关中断标志位 RI: 接收中断标志位。 由软件清 0 。串行接收必须满足 REN="1",RI=0.

 

六:电源控制 寄存器 PCON 地址( 87H ) SMOD =1 时波特率提高 1 倍, MOV PCON, #80H

中断控制寄存器TCON:

TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0

TF:定时器/计数器 溢出标志位(F:FULL)

TR:定时器/计数器运行标志位(R:RUN)

IE:外部中断请求标志位

IT:外部中断触发方式标志位

中断允许寄存器IE:

EA — — ES ET1 EX1 ET0 EX0

EA:中断允许标志位

ES: 传星口中断允许标志位

ET:定时器/计数器溢出允许标志位

EX:外部中断允许标志位

定 时器/计数器工作方式寄存器TMOD

GATE C/T M1 M0 GATE C/T M1 M0

GATE:定时器/计数器工作开关

C/T:计数器/定时器控制位

M1 M0:定时器/计数器工作方式(00、01、10、11四种)

0 0    13 位定时器/计数器

0 1    16位定时器/计数器

1 0    具有自动重装初值的8位定时器/计数器

1 1    方式3仅适用于T0,分为2个8位计数器

不论哪种工作方式,机器周期都是晶振频率除以12;

16位定时器的最大值是65536;

13位定时器的最大值是8192;

TH=(初值/256);

TL=(初值%256);

TCON的清零需要程序员在程序中清零,即TF0=0;

中断服务程序 写法:

void 函数名(void) interrupt n using n

Interrupt n 中n有0-5共六种:

外部中断0、定时器0、外部中断1、定时器1、串行口、定时器2

Using n中n有0-3共四组寄存器。

IP 中断优先级控制寄存器 在51中IP.0--IP.4依次控制INT0、T0、INT1、T1、UART中断的优先级,高三位不用

IE 中断使能控制器 IE.7是所有中断的总开关EA,IE.0--IE.4依次控制INT0、T0、INT1、T1、UART中断功能的开放或关断

P0、P1、P2、P3 这四个寄存器用于读写51单片机的四个I/O端口

SBUF 串行数据缓冲器 将数据写入SBUF,单片机就自动将数据从UART口发送出去

SCON 串行口功能控制器 最高两位SM0、SM1控制串行口工作模式;第5位SM2通常用于多机通信中区分地址帧和数据帧;第4位REN是控制串口接收数据的使能位;第3位TB8 和第2位RB8分别是在串口的相关工作模式下要发送的和接收到的第9位数据;次低位TI和最低位RI分别标识一个发送或接收过程已结束,这两个标志位都会 触发串口中断

TH0、TL0 定时器T0的计数单元的高8位和低8位

TH1、TL1 定时器T1的计数单元的高8位和低8位

TMOD 定时/计数器工作模式控制器 低4位和高4位的内容对应相同,分别控制T0和T1的工作模式,次低位和最低位控制对应定时/计数器的工作模式;最高位控制定时/计数器的计数是否由外中 断口线参与控制;次高位控制对应的定时器/计数器工作在定时方式还是对相应口线的脉冲进行计数的方式

TCON 定时/计数器控制字 TCON.0和TCON.2分别是外中断INT0和INT1的触发方式选择位IT0和IT1;TCON.1和TCON.3分别是外中断INT0和INT1 的中断触发标志位IE0和IE1;TCON.4和TCON.6分别是T0和T1的计数开关TR0和TR1;TCON.5和TCON.7分别是T0和T1的 中断触发标志位TF0和TF1

PCON 电源模式控制器 最高位SMOD用于串行口通信的波特率加倍,低4位用于选择不同的低功耗模式,比如空闲模式、掉电模式、时钟停止模式等,但具体每一位的用法没有找到相关 资料

 

51寄存器 - yangjintian2002 -我的博客

posted on 2010-06-01 09:29  灰太狼大王  阅读(990)  评论(0编辑  收藏  举报