单片机TMOD说明
单片机英文缩写
INC 增量-Incremect ['inkrimənt] n. 增加DNC 减量-Decrement['dekrimənt] n. 渐减,减少,减少量[计算机] 递减SJMP 短转移-Short jumpLJMP 长转移-Long jumpCJNE 比较转移-Compare jump not equalityAJMP 绝对转移-Absolute jump ['æbsəlu:t] a. 绝对的,完全的n. 绝对NOP 空操作-No operationXCH 交换-ExchangeADD 加法-AdditionMUL 乘法-MultiplicationDIV 除法-DivisionRL 左环移-Rotate left [rəu'teit] v. (使)旋转RLC 进位左环移-Rotate left carryRR 右环移-Rotate rightRRC 进位右环移-Rotate right carryPC 程序计数器 progammer counterACC 累加器 accumulate [ə'kju:mjuleit]v. 积聚,堆积PSW 程序状态字 progammer status word ['steitəs] n. 地位,身份,情形,状况SP 堆栈指针 stack point [stæk]n. 堆叠,堆DPTR 数据指针寄存器 data point register ['redʒistə]v. 记录,登记n.记录IP 中断优先级 interrupt priority [prai'ɔriti] n. 优先权,优先顺序,优先IE 中断使能 interrupt enableTMOD 定时器工作方式寄存器 timer mode[məud] n. 方式,样式ALE 变更 alterPSEN 程序存储器使能 progammer saving enable (选择外部程序存储器的意思) EA 允许所有中断 enable all interruptPROG 程序 progammeSFR 特殊功能寄存器 special funtion registerTCON 定时器控制 timer controlPCON 电源控制 power controlMSB 最高有效位 most significant bit[sig'nifikənt]adj. 有意义的,有效的LSB 最低有效位 last significant bit last [lɑ:st]adj. 最后的most [məust] n. 最多,最大CY 进位(标志) carry ['kæri]n. 进位,超位v. 携带AC 辅助进位 assistant carry [e=sistent]形:助理的;辅助的OV 溢出 overflowORG 起始来源 originally [ə'ridʒənəli]adv. 本来,原来,最初DB 字节定义 define byteEQU 等于 equalDW 字定义 define wordE 使能 enableOE 输出使能 output enableRD 读 readWR 写 writerel 相对量 relatively ['relətivli] adv. 比较地,相对地中断部分:INT0 中断0 interrupt 0T0 定时器0 timer 0TF1 定时器1 标志 timer1 flagIE1 外部中断请求 interrupt exterior [eks'tiəriə] n. adj.外部,表面 [计算机] 外部的IT1 外部中断触发方式 interrupt touch [tʌtʃ] n. 触觉,接触,ES 串行使能 enable serialET 定时器使能 enable timerEX 外部使能(中断) enable exteriorPX 外部中断优先级 priority exteriorPT 定时器优先级 priority timerPS 串口优先级 priority serialXTAL 外部晶体振荡器 External Crystal Oscillator['kristl] a. 清澈透明的,晶体的n. 水晶 ['ɔsileitə] n. 摆,钟摆CLKOUT 时钟输出 Clock outBUSWDITH 总线宽度Vref 参考电压 Voltage Reference.. ['refrəns] n. 参考,出处,参照RESET 复位,重启 ['ri:set] 重新设定ACH:HSO 高速输出 High Speed OutputHIS 高速输入 High Speed InputINST 指令 Instruction [in'strʌkʃən] n. 说明,须知,指令,教学READY 就绪,总线中的就绪信号或引脚NMI 不可屏蔽的中断请求 No Mask Interruput [mɑ:sk] n. 口罩,假面具,掩饰RXD 接收串行数据 Receive DataTXD 发送串行数据 Transmit DataEA 外部存储器地址允许 External Address EnableBHE 存储器的高位允许 Bank High Enable如在80286系统中RAM的组织为16位的,分为高8位和低8位数据,分别的控制信号为BHE和BLEALE 地址信号锁定允许 Address Latch Enable[lætʃ] n. 门闩v. 上闩常和锁存器使用来分离地址/数据复用端口的地址和数据信寄存器部分:DPL DPH 数据指针寄存器的低8位和高8位SCON 串行口控制 serial control ['siəriəl] n. 序列,串列SBUF 串行数据缓冲 serial buffer ['bʌfə] n. 缓冲,缓冲区F0: 用户自定义标志位RS1 RS0 工作寄存器组选择位 register selectP 奇偶校验位 parity ['pæriti]奇偶性IE:EA CPU开/关中断控制位 Enable All InterruptET1 定时器2溢出中断允许位 Enable TimerES 串行口中断允许位 Enable Serial PortEX 外部中断1的中断允许位 Enable ExternalIP:PS 串口优先级 Priority SerialPT 定时器优先级 Priority TimerPX 外部中断优先级 Priority ExternalSCON:RI 串行口接收中断请求标志位 Receive InterruptTI 串行口发送中断请求标志位 Transmit InterruptTCON:TF1 定时器1溢出中断请求标志 Timer1 Overflow FlagTR1 定时器1启动控制位 Timer1 RunIE1 外部中断1请求标志位 Interrupt EdgeIT1 外部中断1触发方式选择位 Interrupt Type8051引脚:(9)RST 复位,重启 RESETP3:(10,p3.0) RXD 接收串行数据 Received eXchange Data(11,p3.1) TXD 发送串行数据 Transmit eXchange Data(12,p3.2) INT0 中断0 interrupt 0(13,p3.3) INT1 中断1 interrupt 1(14,p3.4) T0 定时器0 timer 0(15,p3.5) T1 定时器1 timer 1(16,p3.6) RD 外部数据存储器(RAM)的读信号 ReaD(17,p3.7) WR 外部数据存储器(RAM)的写信号 WRite(18,19) XTAL2,XTAL1 外部晶体振荡器(29) PSEN 程序存储器(ROM)使能 Program Store Enable(30) ALE 地址锁存 Address Latch Enable(31) EA 外部程序存储器(ROM)地址允许 External Address Enable。
51单片机定时器设置及应用
m:根据实际定时所确定的计数次数
二、方式 1
TMOD =0x01 TH0=(65536-m)/256; TL0=(65536-m)%256;
m:根据实际定时所确定的计数次数
三、方式 2
TMOD=0x02 TH0=256-m; TL0=256-m; m:根据实际定时所确定的计数次数
TMOD=0x02; //设定 T0 的长度和状态:8 位自动重装定时 TH0=256-10; //10us 定时,备份计数器的初值 TL0=256-10; //10us 定时,计数器的初值 EA=1; //系统开放中断 ET0=1; //允许 T0 中断 TR0=1; //启动 T0 for(;;); // 等待中断产生 } void T0_ISR( ) interrupt 1 { P10=~P10; //P1.0 每 10us 取反一次 }
ET0:定时/计数器 T0 中断允许控制位 ET0=1,允许 T0 中断 ET0=0,禁止 T0 中断
51 单片机中断系统结构图
51 单片机定时/计数器 C 语言应用模板 /************ 设置 T0 为 16 位定时器,定时 50ms,系统采用 12MHz 晶振。 ************/ #include <reg52.h> void main( )
TF1、TF0:定时/计数器溢出中断标志位,由系统自动置位或清零,用户不能写入数据。 TF1=1,表示 T1 溢出 TF0=1,表示 T0 溢出
TR1:T1 的启动或停止控制位。 TR1=1,启动 T1;TR1=0,停止 T1;
TR0:T0 的启动或停止控制位 TR0=1,启动 T0;TR0=0,停止 T0;
(完整版)单片机模块中的缩写英文及中文全称
单片机缩写的英文全称及中文名称(利于理解)PC = progammer counter //程序计数器ACC = accumulate //累加器PSW = progammer status word //程序状态字SP = stack point //堆栈指针DPTR = data point register //数据指针寄存器IP = interrupt priority //中断优先级IE = interrupt enable // 中断使能TMOD = timer mode //定时器方式(定时器/计数器控制寄存器)ALE = alter (变更,可能是)PSEN = progammer saving enable //程序存储器使能(选择外部程序存储器的意思) EA = enable all(允许所有中断)完整应该是enable all interruptPROG = progamme (程序)SFR = special funtion register //特殊功能寄存器TCON = timer control //定时器控制PCON = power control //电源控制MSB = most significant bit//最高有效位LSB = last significant bit//最低有效位CY = carry //进位(标志)AC = assistant carry //辅助进位OV = overflow //溢出ORG = originally //起始来源DB = define byte //字节定义EQU = equal //等于DW = define word //字定义E = enable //使能OE = output enable //输出使能RD = read //读WR = write //写中断部分:INT0 = interrupt 0 //中断0INT1 = interrupt 1//中断1T0 = timer 0 //定时器0T1 = timer 1 //定时器1TF1 = timer1 flag //定时器1 标志(其实是定时器1中断标志位)IE1 = interrupt exterior //(外部中断请求,可能是)IT1 = interrupt touch //(外部中断触发方式,可能是)ES = enable serial //串行使能ET = enable timer //定时器使能EX = enable exterior //外部使能(中断)PX = priority exterior //外部中断优先级PT = priority timer //定时器优先级PS = priority serial //串口优先级寄存器部分:SFR:special funtion register //特殊功能寄存器(片内RAM 80H~FFH) ACC:accumulate //累加器PSW:progammer status word //程序状态字SP:stack point//堆栈指针DPL,DPH:DPTR(data point register //数据指针寄存器)的低8位和高8位IE:interrupt enable // 中断使能IP:interrupt priority //中断优先级PCON:power control //电源控制SCON:serial control//串行口控制SBUF:serial buffer//串行数据缓冲TCON:timer control //定时器控制TMOD:timer mode //定时器方式PSW:CY:carry (psw.7) //进位(标志)AC:auxiliary carry (psw.6) //辅助进位F0:(psw.5) //用户自定义标志位RS1,RS0:register select (psw.4,psw.3)//工作寄存器组选择位OV:overflow (psw.2) //溢出P:parity(psw.0) //奇偶校验位IE:EA:Enable All Interrupt //CPU开/关中断控制位ET1:Enable Timer //定时器2溢出中断允许位ES:Enable Serial Port //串行口中断允许位EX:Enable External //外部中断1的中断允许位IP:PS:Priority Serial //串口优先级PT:Priority Timer //定时器优先级PX:Priority External //外部中断优先级SCON:RI:Receive Interrupt//串行口接收中断请求标志位TI:Transmit Interrupt//串行口发送中断请求标志位TCON:TF1:Timer1 Overflow Flag //定时器1溢出中断请求标志TR1:Timer1 Run//定时器1启动控制位IE1:Interrupt Edge //外部中断1请求标志位IT1:Interrupt Type//外部中断1触发方式选择位8051引脚:RST:RESET(9)//复位,重启P3:RXD:Received eXchange Data(10,p3.0)//接收串行数据TXD:Transmit eXchange Data(11,p3.1)//发送串行数据INT0:interrupt 0 (12,p3.2)//中断0INT1:interrupt 1(13,p3.3)//中断1T0:timer 0 (14,p3.4)//定时器0T1:timer 1 (15,p3.5)//定时器1RD:ReaD(16,p3.6)//外部数据存储器(RAM)的读信号WR:WRite(17,p3.7)//外部数据存储器(RAM)的写信号XTAL2,XTAL1:External Crystal Oscillator (18,19) //外部晶体振荡器PSEN:Program Store Enable (29) //程序存储器(ROM)使能ALE:Address Latch Enable(30) //地址锁存EA:External Address Enable(31) //外部程序存储器(ROM)地址允许其它:OE:output enable //输出使能MSB = most significant bit//最高有效位LSB = last significant bit//最低有效位ORG = originally //起始来源DB = define byte //字节定义EQU = equal //等于DW = define word //字定义CLKOUT:Clock out,时钟输出BUSWDITH:总线宽度Vref:参考电压(带ADC的单片机中有的)HSO:High Speed Output,高速输出HSI:High Speed Input:高速输入INST:Instruction,指令READY就绪,总线中的就绪信号或引脚NMI:No Mask Interruput (Input):不可屏蔽的中断请求(输入)BHE:Bank High Enable:存储器的高位允许,如在80286系统中RAM的组织为16位的,分为高8位和低8位数据,分别的控制信号为BHE和BLE51外部引脚缩写英文解释中文解释RST(9)Reset复位信号引脚RxD(10--P3.0)Receive Data串口接收端TxD(11--P3.1)Transmit Data串口发送端INT0(————)(12--P3.2)Interrupt0外部中断0信号输入引脚INT1(————)(13--P3.3)Interrupt1外部中断1信号输入引脚T0(14--P3.4)Timer0定时/计数器0输入信号引脚T1(15--P3.5)Timer1定时/计数器1输入信号引脚WR(———)(16--P3.6)write写信号引脚RD(———)(17--P3.7)read读信号引脚PSEN(—————)(29)progammer saving enable外部程序存储器读选通信号ALE(30)Address Latch Enable地址锁存允许信号EA(———)(31)enable外部ROM选择信号51内部寄存器SFR special funtion register特殊功能寄存器ACC accumulate累加器APSW progammer status word程序状态字CY(PSW.7)carry进位标志位AC(PSW.6)assistant carry辅助进位标志位OV(PSW.2)overflow溢出标志位PC progammer counter程序计数器DPTR data point register数据指针寄存器SP stack point堆栈指针TCON timer control定时器控制寄存器TF1(TCON.7)Timer1 flag T1中断标志位TR1(TCON.6)Timer1 Run T1运行控制位TF0(TCON.5)Timer0 flag T0中断标志位TR0(TCON.4)Timer0 Run T0运行控制位IE1(TCON.3)Interrupt1 exterior外部中断1中断标志位IT1(TCON.2)Interrupt1 touch外部中断1 触发方式选择位IE0(TCON.1)Interrupt0 exterior外部中断0中断标志位IT0(TCON.0)Interrupt0 touch0-电平触发1-下降沿触发IE(A8H)interrupt enable中断允许寄存器EA(IE.7)enable all interrupt中断总允许位ES(IE.4)enable serial串行口中断允许位ET1(IE.3)enable timer 1T1中断允许位EX1(IE.2)enable exterior 1外部中断1中断允许位ET0(IE.1)enable timer 0T0中断允许位EX0(IE.0)enable exterior 0外部中断0中断允许位IP(B8H)interrupt priority中断优先级寄存器PS(IP.4)priority serial串口优先级标志位PT1(IP.3)priority timer 1定时器1优先级标志位PX1(IP.2)priority exterior 1外部中断1优先级标志位PT0(IP.1)priority timer 0定时器0优先级标志位PX0(IP.0)priority exterior 0外部中断0优先级标志位PCON(87H)power control电源控制和波特率选择TMOD(89H)timer mode定时器方式控制寄存器MSB = most significant bit//最高有效位LSB = last significant bit//最低有效位OE = output enable //输出使能。
51单片机特殊功能寄存器
51单片机特殊功能寄存器一、中断控制寄存器IE功能解释:1、EA:中断总开关,如果它等于0,则所有中断不允许。
2、X:无效位;3、ET2:定时器2中断允许;4、ES:串行口中断允许;5、ET1:定时器1中断允许;6、EX1:外部中断1中断允许;7、ET0:定时器0中断允许;8、EX0:外部中断0中断允许;二、中断标志及外部中断方式选择寄存器TCON功能解释1、TF1:定时器/计数器1(T1)的溢出中断标志。
当T1从初值开始加1计数到计数满,产生溢出时,由硬件使TF1置“1”,直到CPU响应中断时有硬件复位;2、TR1:T1的运行控制位,该位置1或清0用来实现启东计数或停止计数;3、TF0:定时器/计数器0(T0)的溢出标志位,其作用同TF1;4、TR0:T0的运行控制位,该位置1或清0用来实现启东计数或停止计数;5、IE1:外部中断1中断请求标志位,如果IT1 = 1,则外部中断1引脚P3.1上的电平有1变0时,IE1由硬件置位,外部中断1请求中断。
在CPU响应该中断时由硬件清0;6、IT1:外部中断源1触发方式控制位,边沿/电平触发模式。
7、IE0:外部中断0中断请求标志位,功能同IE1;8、IT0:外部中断源0触发方式控制位,边沿/电平触发模式。
三、定时器方式控制寄存器TMOD高4位(D7-D4)用于定时器1,低四位(D3-D0)用于定时器0;1、Gate:定时器/计数器运行控制位,用来确定外部中断请求引脚(INT0,INT1)是否参与T0或T1的操作控制。
当Gate=0时,只要定时器控制寄存器TCON中的TR0(或TR1)被置1时,T0(或T1)被允许开始计数;当Gate=1时,不仅要TCON中的TR0或TR1置位,还需要P3口的P3.2或P3.3引脚为高电平,才允许计数;2、C/T:定时器方式或计数器方式选择位。
C/T = 1时,为计数器方式;C/T = 0时为定时器模式。
3、M1,M0:定时器四种工作方式选择位:4、四、UART控制寄存器SCON功能解释:1、SMO,SM1:串行口操作方式选择位,两个选择位对应四种状态。
最全的单片机专业术语英文缩写全称
MCS-51指令(1)数据传送类指令(7种助记符)助记符英文注释功能MOV Move 对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送MOVC Move Code 读取程序存储器数据表格的数据传送MOVX Move External RAM 对外部RAM的数据传送XCH Exchange 字节交换XCHD Exchange low-order Digit 低半字节交换PUSH Push onto Stack) 入栈POP Pop from Stack) 出栈(2)算术运算类指令(8种助记符)ADD Addition 加法ADDC Add with Carry 带进位加法SUBB Subtract with Borrow 带借位减法DA Decimal Adjust 十进制调整INC Increment 加1DEC Decrement 减1MUL Multiplication、Multiply 乘法DIV Division、Divide 除法(3)逻辑运算类指令(10种助记符)ANL And Logic 逻辑与ORL OR Logic 逻辑或XRL Exclusive-OR Logic 逻辑异或CLR Clear 清零CPL Complement 取反RL Rotate left 循环左移RLC Rotate Left throught the Carry flag 带进位循环左移RR Rotate Right 循环右移RRC Rotate Right throught the Carry flag 带进位循环右移SWAP Swap 低4位与高4位交换(4)控制转移类指令(17种助记符)ACALL Absolute subroutine Call 子程序绝对调用LCALL Long subroutine Call 子程序长调用RET Return from subroutine 子程序返回RETI Return from Interruption 中断返回JMP Jump IndirectSJMP Short Jump 短转移AJMP Absolute Jump 绝对转移LJMP Long Jump 长转移CJNE Compare and Jump if Not Equal 比较不相等则转移DJNZ Decrement and Jump if Not Zero 减1后不为0则转移JZ Jump if Zero 结果为0则转移JNZ Jump if Not Zero 结果不为0则转移JC Jump if the Carry flag is set 有进位则转移JNC Jump if Not Carry 无进位则转移JB Jump if the Bit is set) B位为1则转移JNB Jump if the Bit is Not set B位为0则转移JBC Jump if the Bit is set and Clear the bit 位为1则转移,并清除该位NOP No Operation 空操作(5)位操作指令(1种助记符)SETB Set Bit 置位伪指令助记符英文注释功能ORG OriginDB Define ByteDW Define WordEQU EqualDA TA DataXDATA External DataBIT BitEND End51外部引脚缩写英文解释中文解释RST (9)Reset 复位信号引脚RxD (10--P3.0) Receive Data 串口接收端TxD (11--P3.1) Transmit Data 串口发送端INT0(————) (12--P3.2)Interrupt0 外部中断0信号输入引脚INT1(————) (13--P3.3)Interrupt1 外部中断1信号输入引脚T0 (14--P3.4) Timer0 定时/计数器0输入信号引脚T1 (15--P3.5) Timer1 定时/计数器1输入信号引脚WR(———) (16--P3.6)write写信号引脚RD(———) (17--P3.7)read 读信号引脚PSEN(—————) (29)progammer saving enable 外部程序存储器读选通信号ALE (30)Address Latch Enable 地址锁存允许信号EA(———) (31)enable 外部ROM选择信号51内部寄存器SFR special funtion register 特殊功能寄存器ACC accumulate 累加器APSW progammer status word 程序状态字CY (PSW.7) carry 进位标志位AC (PSW.6) assistant carry 辅助进位标志位OV (PSW.2) overflow 溢出标志位PC progammer counter 程序计数器DPTR data point register 数据指针寄存器SP stack point 堆栈指针TCON timer control 定时器控制寄存器TF1 (TCON.7)Timer1 flag T1中断标志位TR1 (TCON.6)Timer1 Run T1运行控制位TF0 (TCON.5)Timer0 flag T0中断标志位TR0 (TCON.4)Timer0 Run T0运行控制位IE1 (TCON.3)Interrupt1 exterior 外部中断1中断标志位IT1 (TCON.2)Interrupt1 touch 外部中断1 触发方式选择位IE0 (TCON.1)Interrupt0 exterior 外部中断0中断标志位IT0 (TCON.0)Interrupt0 touch 0-电平触发1-下降沿触发IE (A8H)interrupt enable 中断允许寄存器EA (IE.7) enable all interrupt 中断总允许位ES (IE.4) enable serial 串行口中断允许位ET1 (IE.3)enable timer 1 T1中断允许位EX1 (IE.2)enable exterior 1 外部中断1中断允许位ET0 (IE.1)enable timer 0 T0中断允许位EX0 (IE.0)enable exterior 0 外部中断0中断允许位IP (B8H)interrupt priority 中断优先级寄存器PS (IP.4) priority serial 串口优先级标志位PT1 (IP.3) priority timer 1 定时器1优先级标志位PX1 (IP.2) priority exterior 1 外部中断1优先级标志位PT0 (IP.1) priority timer 0 定时器0优先级标志位PX0 (IP.0) priority exterior 0 外部中断0优先级标志位PCON (87H) power control 电源控制和波特率选择TMOD (89H)timer mode 定时器方式控制寄存器MSB = most significant bit//最高有效位LSB = last significant bit//最低有效位OE = output enable //输出使能MCS-51指令(1)数据传送类指令(7种助记符)助记符英文注释功能MOV Move 对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送MOVC Move Code 读取程序存储器数据表格的数据传送MOVX Move External RAM 对外部RAM的数据传送XCH Exchange 字节交换XCHD Exchange low-order Digit 低半字节交换PUSH Push onto Stack) 入栈POP Pop from Stack) 出栈(2)算术运算类指令(8种助记符)ADD Addition 加法ADDC Add with Carry 带进位加法SUBB Subtract with Borrow 带借位减法DA Decimal Adjust 十进制调整INC Increment 加1DEC Decrement 减1MUL Multiplication、Multiply 乘法DIV Division、Divide 除法(3)逻辑运算类指令(10种助记符)ANL And Logic 逻辑与ORL OR Logic 逻辑或XRL Exclusive-OR Logic 逻辑异或CLR Clear 清零CPL Complement 取反RL Rotate left 循环左移RLC Rotate Left throught the Carry flag 带进位循环左移RR Rotate Right 循环右移RRC Rotate Right throught the Carry flag 带进位循环右移SWAP Swap 低4位与高4位交换(4)控制转移类指令(17种助记符)ACALL Absolute subroutine Call 子程序绝对调用LCALL Long subroutine Call 子程序长调用RET Return from subroutine 子程序返回RETI Return from Interruption 中断返回JMP Jump IndirectSJMP Short Jump 短转移AJMP Absolute Jump 绝对转移LJMP Long Jump 长转移CJNE Compare and Jump if Not Equal 比较不相等则转移DJNZ Decrement and Jump if Not Zero 减1后不为0则转移JZ Jump if Zero 结果为0则转移JNZ Jump if Not Zero 结果不为0则转移JC Jump if the Carry flag is set 有进位则转移JNC Jump if Not Carry 无进位则转移JB Jump if the Bit is set) B位为1则转移JNB Jump if the Bit is Not set B位为0则转移JBC Jump if the Bit is set and Clear the bit 位为1则转移,并清除该位NOP No Operation 空操作(5)位操作指令(1种助记符)SETB Set Bit 置位伪指令助记符英文注释功能ORG OriginDB Define ByteDW Define WordEQU EqualDA TA DataXDATA External DataBIT BitEND End51外部引脚缩写英文解释中文解释RST (9)Reset 复位信号引脚RxD (10--P3.0) Receive Data 串口接收端TxD (11--P3.1) Transmit Data 串口发送端INT0(————) (12--P3.2)Interrupt0 外部中断0信号输入引脚INT1(————) (13--P3.3)Interrupt1 外部中断1信号输入引脚T0 (14--P3.4) Timer0 定时/计数器0输入信号引脚T1 (15--P3.5) Timer1 定时/计数器1输入信号引脚WR(———) (16--P3.6) write 写信号引脚RD(———) (17--P3.7) read 读信号引脚PSEN(—————) (29)progammer saving enable 外部程序存储器读选通信号ALE (30)Address Latch Enable 地址锁存允许信号EA(———) (31) enable 外部ROM选择信号51内部寄存器SFR special funtion register 特殊功能寄存器ACC accumulate 累加器APSW progammer status word 程序状态字CY (PSW.7) carry 进位标志位AC (PSW.6) assistant carry 辅助进位标志位OV (PSW.2) overflow 溢出标志位PC progammer counter 程序计数器DPTR data point register 数据指针寄存器SP stack point 堆栈指针TCON timer control 定时器控制寄存器TF1 (TCON.7)Timer1 flag T1中断标志位TR1 (TCON.6)Timer1 Run T1运行控制位TF0 (TCON.5)Timer0 flag T0中断标志位TR0 (TCON.4)Timer0 Run T0运行控制位IE1 (TCON.3)Interrupt1 exterior 外部中断1中断标志位IT1 (TCON.2)Interrupt1 touch 外部中断1 触发方式选择位IE0 (TCON.1)Interrupt0 exterior 外部中断0中断标志位IT0 (TCON.0)Interrupt0 touch 0-电平触发1-下降沿触发IE (A8H)interrupt enable 中断允许寄存器EA (IE.7) enable all interrupt 中断总允许位ES (IE.4) enable serial 串行口中断允许位ET1 (IE.3)enable timer 1 T1中断允许位EX1 (IE.2)enable exterior 1 外部中断1中断允许位ET0 (IE.1)enable timer 0 T0中断允许位EX0 (IE.0)enable exterior 0 外部中断0中断允许位IP (B8H)interrupt priority 中断优先级寄存器PS (IP.4) priority serial 串口优先级标志位PT1 (IP.3) priority timer 1 定时器1优先级标志位PX1 (IP.2) priority exterior 1 外部中断1优先级标志位PT0 (IP.1) priority timer 0 定时器0优先级标志位PX0 (IP.0) priority exterior 0 外部中断0优先级标志位PCON (87H) power control 电源控制和波特率选择TMOD (89H)timer mode 定时器方式控制寄存器MSB = most significant bit//最高有效位LSB = last significant bit//最低有效位OE = output enable //输出使能AC(alternating current) 交流(电)A/D(analog to digital) 模拟/数字转换ADC(analog to digital convertor) 模拟/数字转换器ADM(adaptive delta modulation) 自适应增量调制ADPCM(adaptive differential pulse code modulation) 自适应差分脉冲编码调制ALU(arithmetic logic unit) 算术逻辑单元ASCII(American standard code for informationinterchange) 美国信息交换标准码AV(audio visual) 声视,视听BCD(binary coded decimal) 二进制编码的十进制数BCR(bi-directional controlled rectifier)双向晶闸管BCR(buffer courtier reset) 缓冲计数器BZ(buzzer) 蜂鸣器,蜂音器C(capacitance,capacitor) 电容量,电容器CATV(cable television) 电缆电视CCD(charge-coupled device) 电荷耦合器件CCTV(closed-circuit television) 闭路电视CMOS(complementary) 互补MOSCPU(central processing unit)**处理单元CS(control signal) 控制信号D(diode) 二极管DAST(direct analog store technology) 直接模拟存储技术DC(direct current) 直流DIP(dual in-line package) 双列直插封装DP(dial pulse) 拨号脉冲DRAM(dynamic random access memory) 动态随机存储器DTL(diode-transistor logic) 二极管晶体管逻辑DUT(device under test) 被测器件DVM(digital voltmeter) 数字电压表ECG(electrocardiograph) 心电图ECL(emitter coupled logic) 射极耦合逻辑EDI(electronic data interchange) 电子数据交换EIA(Electronic Industries Association) 电子工业联合会EOC(end of conversion) 转换结束EPROM(erasable programmable read only memory) 可擦可编程只读存储器EEPROM(electrically EPROM) 电可擦可编程只读存储器ESD(electro-static discharge) 静电放电FET(field-effect transistor) 场效应晶体管FS(full scale) 满量程F/V(frequency to voltage convertor) 频率/电压转换FM(frequency modulation) 调频FSK(frequency shift keying) 频移键控FSM(field strength meter) 场强计FST(fast switching shyster) 快速晶闸管FT(fixed time) 固定时间FU(fuse unit) 保险丝装置FWD(forward) 正向的GAL(generic array logic) 通用阵列逻辑GND(ground) 接地,地线GTO(Sate turn off thruster) 门极可关断晶体管HART(highway addressable remote transducer) 可寻址远程传感器数据公路HCMOS(high density COMS) 高密度互补金属氧化物半导体(器件)HF(high frequency) 高频HTL(high threshold logic) 高阈值逻辑电路HTS(heat temperature sensor) 热温度传感器IC(integrated circuit) 集成电路ID(international data) 国际数据IGBT(insulated gate bipolar transistor) 绝缘栅双极型晶体管IGFET(insulated gate field effect transistor) 绝缘栅场效应晶体管I/O(input/output) 输入/输出I/V(current to voltage convertor) 电流-电压变换器IPM(incidental phase modulation) 附带的相位调制IPM(intelligent power module) 智能功率模块IR(infrared radiation) 红外辐射IRQ(interrupt request) 中断请求JFET(junction field effect transistor) 结型场效应晶体管LAS(light activated switch)光敏开关LASCS(light activated silicon controlled switch) 光控可控硅开关LCD(liquid crystal display) 液晶显示器LDR(light dependent resistor) 光敏电阻LED(light emitting diode) 发光二极管LRC(longitudinal redundancy check) 纵向冗余(码)校验LSB(least significant bit) 最低有效位LSI(1arge scale integration) 大规模集成电路M(motor) 电动机MCT(MOS controlled gyrator) 场控晶闸管MIC(microphone) 话筒,微音器,麦克风min(minute) 分MOS(metal oxide semiconductor)金属氧化物半导体MOSFET(metal oxide semiconductor FET) 金属氧化物半导体场效应晶体管N(negative) 负NMOS(N-channel metal oxide semiconductor FET) N 沟道MOSFETNTC(negative temperature coefficient) 负温度系数OC(over current) 过电流OCB(overload circuit breaker) 过载断路器OCS(optical communication system) 光通讯系统OR(type of logic circuit) 或逻辑电路OV(over voltage) 过电压P(pressure) 压力FAM(pulse amplitude modulation) 脉冲幅度调制PC(pulse code) 脉冲码PCM(pulse code modulation) 脉冲编码调制PDM(pulse duration modulation) 脉冲宽度调制PF(power factor) 功率因数PFM(pulse frequency modulation) 脉冲频率调制PG(pulse generator) 脉冲发生器PGM(programmable) 编程信号PI(proportional-integral(controller)) 比例积分(控制器)PID(proportional-integral-differential(controller))比例积分微分( 控制器) PIN(positive intrinsic-negative) 光电二极管PIO(parallel input output) 并行输入输出PLD(phase-locked detector) 同相检波PLD(phase-locked discriminator) 锁相解调器PLL(phase-locked loop) 锁相环路PMOS(P-channel metal oxide semiconductor FET) P 沟道MOSFETP-P(peak-to-peak) 峰--峰PPM(pulse phase modulation) 脉冲相位洲制PRD(piezoelectric radiation detector) 热电辐射控测器PROM(programmable read only memory) 可编只读程存储器PRT(platinum resistance thermometer) 铂电阻温度计PRT(pulse recurrent time) 脉冲周期时间PUT(programmable unijunction transistor) 可编程单结晶体管PWM(pulse width modulation) 脉宽调制R(resistance,resistor) 电阻,电阻器RAM(random access memory) 随机存储器RCT(reverse conducting thyristor) 逆导晶闸管REF(reference) 参考,基准REV(reverse) 反转R/F(radio frequency) 射频RGB(red/green/blue) 红绿蓝ROM(read only memory) 只读存储器RP(resistance potentiometer) 电位器RST(reset) 复位信号RT(resistor with inherent variability dependent) 热敏电阻RTD(resistance temperature detector) 电阻温度传感器RTL(resistor transistor logic) 电阻晶体管逻辑(电路)RV(resistor with inherent variability dependent on the voltage) 压敏电阻器SA(switching assembly) 开关组件SBS(silicon bi-directional switch) 硅双向开关,双向硅开关SCR(silicon controlled rectifier) 可控硅整流器SCS(safety control switch) 安全控制开关SCS(silicon controlled switch) 可控硅开关SCS(speed control system) 速度控制系统SCS(supply control system) 电源控制系统SG(spark gap) 放电器SIT(static induction transformer) 静电感应晶体管SITH(static induction thyristor) 静电感应晶闸管SP(shift pulse) 移位脉冲SPI(serial peripheral interface) 串行外围接口SR(sample realy,saturable reactor) 取样继电器,饱和电抗器SR(silicon rectifier) 硅整流器SRAM(static random access memory) 静态随机存储器SSR(solid-state relay) 固体继电器SSR(switching select repeater) 中断器开关选择器SSS(silicon symmetrical switch) 硅对称开关,双向可控硅SSW(synchro-switch) 同步开关ST(start) 启动ST(starter) 启动器STB(strobe) 闸门,选通脉冲T(transistor) 晶体管,晶闸管TACH(tachometer) 转速计,转速表TP(temperature probe) 温度传感器TRIAC(triodes AC switch) 三极管交流开关TTL(transistor-transistor logic) 晶体管一晶体管逻辑TV(television) 电视UART(universal asynchronous receiver transmitter) 通用异步收发器VCO(voltage controlled oscillator) 压控振荡器VD(video decoders) 视频译码器VDR(voltage dependent resistor) 压敏电阻VF(video frequency) 视频V/F(voltage-to-frequency) 电压/频率转换V/I(voltage to current convertor) 电压-电流变换器VM(voltmeter) 电压表VS(vacuum switch) 电子开关VT(visual telephone) 电视电话VT(video terminal) 视频终端总线:指能为多个部件服务的信息传送线,在微机系统中各个部件通过总线相互通信。
单片机中常用寄存器的功能介绍
1.定时器/计数器控制寄存器TCON定时器/计数器控制寄存器TCON的地址为88H,可以位读写,控制T0、T1的启动和停止计数,同时包含了T0、T1是否溢出的状态。
其功能如下:TCON.7TCON.6TCON.5TCON.4TCON.3TCON.2TCON.1TCON.0TF1TR1TF0TR0IE1IT1IE0IT0⑴TF1是定时器T1的溢出申请位。
定时器T1被允许计数以后,从初值开始加1计数,当产生溢出时置TF1=1,向CPU请求中断。
到CPU响应该中断后才由硬件自动清0,也可以由查询程序清0(软件清零)。
⑵TF0是定时器T0的溢出申请位。
其作用类同于TF1。
TF0实际上是T0中断触发器的一个输出端。
⑶IE1是外部中断INT1请求标志位。
当CPU检测到在INT1管脚上出现低电平或脉冲下降沿的外部中断信号时,由硬件置位IE1=1,请求中断。
CPU响应中断并运行中断服务程序后,如脉冲边沿触发方式,则IE1位被硬件自动清0。
⑷IT1是外部中断INT1请求控制位,由程序来置1或清0。
IT1=0时,外部中断INT1被设置为电平触发方式,当INT1输入低电平时,置位IE1,申请中断,直到该中断被CPU响应。
同时,在该中断服务程序执行完之前,外部中断源有效电平必须被撤消,否则将产生另一次中断。
IT1=1时,外部中断1为边沿触发方式,CPU如果采样高电平到低电平跳变,则硬件自动对IE1置1,申请中断。
CPU响应中断后,IE1由硬件自动清0。
⑸IE0是外部中断INT0请求标志位。
⑹IT0是外部中断INT0触发方式控制位。
定时器计数器结构框图2.定时器/计数器方式寄存器TMOD选择定时器/计数器T0、T1的功能和工作方式,字节地址为89H。
TMOD D7D6D5D4D3D2D1D089H GATE C/T M1M0GATE C/T M1M0说明:M1、M0:工作方式选择位,用于对T0的四种工作方式,T1的三种工作方式进行选择。
51单片机的专用寄存器
51单片机的专用寄存器21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SFR存储空间中,地址空间为80H-FFH,在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址)。
在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。
在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。
这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下(其中带*号的为52系列所增加的特殊功能寄存器):MCS-51单片机的特殊功能寄存器带“*”的在51系列是没有的。
分别说明如下:1、ACC---是累加器,通常用A表示这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。
它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。
自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。
该标志常用作程序分枝转移的判断条件。
2、B--一个寄存器在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。
3、PSW-----程序状态字。
这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。
它的各位功能请看下表:下面我们逐一介绍各位的用途CY:进位标志。
8051中的运算器是一种8位的运算器,我们知道,8位运算器只能表示到0-255,如果做加法的话,两数相加可能会超过255,这样最高位就会丢失,造成运算的错误,怎么办?最高位就进到这里来。
51系列单片机寄存器详解
AUXR:辅助寄存器字节地址=8EH,不可位寻址- - - WDIDLE DISRTO - - DISALEWDIDLE:WTD在空闲模式下的禁止/允许位当WDIDLE=0时,WDT在空闲模式下继续计数当WDIDLE=1时,WDT在空闲模式下暂停计数DISRTO:禁止/允许WDT溢出时的复位输出当DISRTO=0时,WDT定时器溢出时,在RST引脚输出一个高电平脉冲当DISRT0=1时,RST引脚为输入脚DISALE :ALE禁止/允许位当DISALE=0时,ALE有效,发出恒定频率脉冲当DISALE=1时,ALE仅在CPU执行MOVC和MOVX类指令时有效,不访问外寄存器时,ALE不输出脉冲信号AUXR1:辅助寄存器1字节地址A2,不可位寻- - - -- - - DPSDPS:数据指针寄存器选择位当DPS=0时,选择数据指针寄存器DPRT0DPRT1时,选择数据指针寄存器DPS 当=PSW:程序状态字CY——进位标记AC——半进位标记F0——用户设定标记RS1、RS0——4个工作寄存器区的选择位。
VO——溢出标记P——奇偶校验标记PCON:电源控制器及波特率选择寄存器字节地址=87H,不可位寻址SMOD - - POF GF1 GF0 PD IDLSMOD——波特率倍增位GF1、GF0——用户通用标记PD——掉电方式控制位,PD=1时进入掉电模式IDL——空闲方式控制位,IDL=1时进入空闲方式在AT89S51中PCON.4是电源断电标记位POF,上电是为1IE:中断允许控制寄存器EA:中断允许总控制位当EA=0时,中断总禁止。
当EA=1时,中断总允许后中断的禁止与允许由各中断源的中断允许控制位进行设置。
EX0( EX1):外部中断允许控制位当EX0( EX1)=0 禁止外中断当EX0( EX1)=1 允许外中断ET0(EX1):定时/计数中断允许控制位当ET0(ET1)=0 禁止定时(或计数)中断当ET0(ET1)=1 允许定时(或计数)中断ET2:定时器2中断允许控制位,在AT89S52、AT89C52中ES:串行中断允许控制位当ES=0 禁止串行中断当ES=1 允许串行中断IP:中断优先级控制寄存器PX0——外部中断0优先级设定位PT0——定时中断0优先级设定位PX1——外部中断1优先级设定位PT1——定时中断1优先级设定位PS——串口中断优先级设定位优先级设定位2PT2——定时器SCON:串行口控制寄存器SM0、SM1:串行口工作方式选择位SM2:多机通信控制位REN:允许/禁止串行口接收的控制位TB8:在方式2和方式3中,是被发送的第9位数据,可根据需要由软件置1或清零,也可以作为奇偶校验位,在方式1中是停止位。
自己总结 - 51单片机特殊功能寄存器详述
51单片机特殊功能寄存器一:IE(中断允许控制寄存器):IE(字节地址:A8H)寄存器格式:D7D6D5D4D3D2D1D0 IE EA X ET2ES ET1EX1ET0EX0位地址AFH ADH ACH ABH AAH A9H A8HIE各位功能说明:EA(IE.7)中断允许总控制位X(IE.6)保留位ET2(IE.5)定时器/计数器T2中断响应控制位ES(IE.4)串口中断响应控制位ET1(IE.3)定时器/计数器T1中断响应控制位EX1(IE.2)外部中断INT1中断响应控制位ET0(IE.1)定时器/计数器T0中断响应控制位EX0(IE.0)外部中断INT0中断响应控制位中断优先级控制(1为高级;0为低级)默认顺序:INT0T0INT1T1Ri Ti中断号n中断源中断向量8n+3 0外部中断0(INT0)0003H1定时器0(T0)000BH2外部中断1(INT1)0013H3定时器1(T1)001BH4串行口(Ri、Ti)0023H二:TMOD(定时器方式控制寄存器):TMOD(字节地址:89H,不可位寻址)寄存器格式:定时器/计数器1定时器/计数器0D7D6D5D4D3D2D1D0 TMOD GATE C/T M1M0GATE C/T M1M0三:TCON(定时器控制)TCON (字节地址:88H )寄存器格式:D7D6D5D4D3D2D1D0TCON TF1TR1TF0TR TR00IE1IT1IE0IT0位地址8FH8EH8DH8CH8BH8AH89H88H四:SCON(串口控制寄存器)SCON(字节地址:98H)寄存器格式:D7D6D5D4D3D2D1D0 SCON SM0SM1SM2REN TB8RB8TI RI 位地址9FH9EH9DH9CH9BH9AH99H98HSCON各位功能说明:SM0、SM1确定串行通信的工作方式SM0SM1工作方式功能说明波特率00方式0移位寄存器方式Fosc/1201方式18位UART方式可变10方式29位UART方式Fosc/64或Fosc/3211方式39位UART方式可变SM2方式0时,应置0。
51单片机空闲和掉电模式详解
51单片机空闲和掉电模式应用我们知道单片机内部有一个电源管理寄存器PCON,这个寄存器的最低两位,IDL和PD这两位分别用来设定是否使单片机进入空闲模式和掉电模式。
1. 空闲模式当单片机进入空闲模式时,除CPU处于休眠状态外,其余硬件全部处于活动状态,芯片中程序未涉及到的数据存储器和特殊功能寄存器中的数据在空闲模式期间都将保持原值。
但假若定时器正在运行,那么计数器寄存器中的值还将会增加。
单片机在空闲模式下可由任一个中断或硬件复位唤醒,需要注意的是,使用中断唤醒单片机时,程序从原来停止处继续运行,当使用硬件复位唤醒单片机时,程序将从头开始执行。
让单片机进入空闲模式的目的通常是为了降低系统的功耗,举个很简单的例子,大家都用过数字万用表,在正常使用的时候表内部的单片机处于正常工作模式,当不用时,又忘记了关掉万用表的电源,大多数表在等待数分钟后,若没有人为操作,它便会自动将液晶显示关闭,以降低系统功耗,通常类似这种功能的实现就是使用了单片机的空闲模式或是掉电模式。
以STC89系列单片机为例,当单片机正常工作时的功耗通常为4mA~7mA,进入空闲模式时其功耗降至2mA,当进入掉电模式时功耗可降至0.1μA以下。
2. 休眠-掉电模式当单片机进入掉电模式时,外部晶振停振、CPU、定时器、串行口全部停止工作,只有外部中断继续工作。
使单片机进入休眠模式的指令将成为休眠前单片机执行的最后一条指令,进入休眠模式后,芯片中程序未涉及到的数据存储器和特殊功能寄存器中的数据都将保持原值。
可由外部中断低电平触发或由下降沿触发中断或者硬件复位模式换醒单片机,需要注意的是,使用中断唤醒单片机时,程序从原来停止处继续运行,当使用硬件复位唤醒单片机时,程序将从头开始执行。
【例】:开启两个外部中断,设置低电平触发中断,用定时器计数并且显示在数码管的前两位,当计到5时,使单片机进入空闲(休眠)模式,同时关闭定时器,当单片机响应外部中断后,从空闲(休眠)模式返回,同时开启定时器。
51单片机寄存器 详解
一、TMOD工作方式寄存器工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T0,高四位用于T1。
其格式如下:GATE:门控位。
GATE=0时,只要用软件使TCON中的TR0或TR1为1,就可以启动定时/计数器工作;:定时/计数模式选择位。
=0为定时模式;=1为计数模式。
M1M0:工作方式设置位。
定时/计数器有四种工作方式,由M1M0进行设置。
二、TCON定时/计数器控制寄存器TCON的低4位用于控制外部中断。
TCON的高4位用于控制定时/计数器的启动和中断申请。
其格式如下:▪TF1(TCON.7):T1溢出中断请求标志位。
T1计数溢出时由硬件自动置TF1为1。
CPU 响应中断后TF1由硬件自动清0。
T1工作时,CPU可随时查询TF1的状态。
所以,TF1可用作查询测试的标志。
TF1也可以用软件置1或清0,同硬件置1或清0的效果一样。
▪TR1(TCON.6):T1运行控制位。
TR1置1时,T1开始工作;TR1置0时,T1停止工作。
TR1由软件置1或清0。
所以,用软件可控制定时/计数器的启动与停止。
▪TF0(TCON.5):T0溢出中断请求标志位,其功能与TF1类同。
▪TR0(TCON.4):T0运行控制位,其功能与TR1类同。
三、IE中断允许寄存器CPU对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。
▪ET0(IE.1),定时/计数器T0中断允许位;▪EX1(IE.2),外部中断0允许位;▪ET1(IE.3),定时/计数器T1中断允许位;▪ES(IE.4),串行口中断允许位;▪EA (IE.7),CPU中断允许(总允许)位。
▪EX0(IE.0),外部中断0允许位;四、51单片机共5个中断源0. INT0:外部中断0,由P3.2端口引入,低电平或下降沿引起。
1. T0:定时器0(计数器0)中断,由T0计数器计满引起。
2. INT1:外部中断1,由P3.3端口引入,低电平或下降沿引起。
51单片机中断代码解释
51单片机中断代码解释一、引言51单片机是一种广泛使用的微控制器,具有丰富的中断功能。
中断是单片机在执行程序过程中,由于某种原因需要暂停当前的任务,转而处理更为紧急的事件。
处理完该事件后,再返回到之前被中断的程序继续执行。
本文将对51单片机的中断代码进行详细解释,包括中断概念、中断源、中断寄存器和寄存器功能与赋值说明等方面。
二、中断概念中断是一种计算机系统中处理优先级更高任务的方式。
当某个事件发生时,CPU会暂时停止当前任务的执行,转而处理该事件。
处理完该事件后,CPU会返回到之前被中断的程序继续执行。
三、中断源51单片机有多种中断源,包括外部中断0、外部中断1、定时器0、定时器1等。
每个中断源都可以独立地开启或关闭,并且可以设置优先级。
四、中断寄存器51单片机与中断相关的寄存器主要有:1.ICON(中断允许控制寄存器):用于控制中断的开启和关闭。
可以通过设置ICON寄存器的相关位来启用或禁用某个中断。
2.INT0/INT1(外部中断0/1控制寄存器):用于控制外部中断0和外部中断1的触发方式、触发边沿和触发方式等。
3.TMOD(定时器模式控制寄存器):用于设置定时器的模式和工作方式。
4.TH0/TH1(定时器0/1计数器高8位寄存器):用于存储定时器的计数值。
5.TL0/TL1(定时器0/1计数器低8位寄存器):用于存储定时器的计数值。
五、寄存器功能与赋值说明1.ICON寄存器:o EA:全局中断允许位,设置为1时允许所有中断,设置为0时禁止所有中断。
o ET0:定时器0中断允许位,设置为1时允许定时器0中断,设置为0时禁止定时器0中断。
o ET1:定时器1中断允许位,设置为1时允许定时器1中断,设置为0时禁止定时器1中断。
o EX0:外部中断0允许位,设置为1时允许外部中断0,设置为0时禁止外部中断0。
o EX1:外部中断1允许位,设置为1时允许外部中断1,设置为0时禁止外部中断1。
2.INT0/INT1寄存器:o IT0/IT1:外部中断0/1触发方式选择位,设置为0时选择下降沿触发,设置为1时选择低电平触发。
51单片机寄存器详解
定时器/计数器的方式寄存器TMODTMOD是一个8位的特殊功能寄存器,对应的地址是89H,不可位寻址。
TMOD:工作方式控制寄存器寄存器地址89H,不可位寻址。
位序 B7 B6 B5 B4 B3 B2 B1 B0位符号GATE C/T M1 M0 GATE C/T M1 M0GATE——门控位当=0时,以运行TR0(或TR1)启动或禁止定时器、计数器当=1时,以TR0*/INT0(或TR1*/INT1)启动或禁止定时器、计数器GATE=0 以TR0(TR1)启动定时器GATE=1 以INT0(INT1)启动定时器C/T=0 定时/计数工作方式选择位M1M0——工作方式选择位T2MOD:工作方式控制寄存器寄存器地址0C9H,不可位寻址------T2OE DCENT2OE:定时器2输出允许位,当=1时,P1.0/T2引脚输出连续脉冲信号DCEN:当=1时,T2配置成向上向下计数器A 主要完成三个功能:*确T0计数溢出标志位当计数器计数溢出时,该位置“1”。
使用查询方式时,此位作为状态位供cpu查询,但应注意在查询该位有效后应以软件方法及时将该位清“0”。
使用中断方式时,此位作为中断申请标志位,进入中定选择定时器还是计数器;*选择何种工作方式;*是否借用外中断控制定时器和计数器的启停;B TMOD的低4位是控制T0的字段(T0--P3.4 定时器/计数器0外部事件脉冲输入端)TMOD的高4位是控制T1的字段(T1--P3.5定时器/计数器1外部事件脉冲输入端)C 控制字的格式和含义a、 GATE(TMOD.7)分为两种情况:GATE=0,定时器的启停和INT1无关,只取决于TR0;GATE=1,定时器的启停不仅要由TR0来控制,而且要INT1引脚的控制,只有二者都为高电平时定时器才开始工作; b、 C/T(TMOD.6) 分为两种情况:C/T=0,用作定时器;C/T=1,用作计数器; d、 M1(TMOD.5),M0(TMOD.4)用M1,M0来控制定时器/计数器的4种工作方式:*方式0:M1=0,M0=0.13位定时/计数方式*方式1:M1=0,M0=1.16位定时/计数器*方式2,M1=1,M0=0.8位初值自动重新装入的8位定时/计数器*方式3,M1=1,M0=1.仅适用于T0,分为两个8位计数器,T1停止计数定时器/计数器控制寄存器TCONTCON是一个8位的特殊功能寄存器,对应的地址为88H,可为寻址。
51单片机定时器总结
51 单片机定时器总结
1.定时器TMOD 寄存器
C/T 这一位用来控制定时器工作方式。
本来T 上面有一横表示低电平有效。
c 为计数,也即是及外部脉冲的个数,也会是定时器溢出及中断。
GATE 这一位用来设定外部中断脉冲是否可启动定时器。
意思就是当GATE=1 时,定时器的启动有二个位控制,即TR0 和int0(这是对定时器0 来说的,T1 的话上二位就是1)。
定时器只有在上二位都是一的情况下才会启动。
我们就可以利用这个功能来测量脉冲的宽度。
我们知道在其他单片机中我们测脉冲宽度可以利用外部中断在上升沿河下
降沿各读取一次定时器值来测定。
但51 单片机没有上升沿中断,也就没有办法测出高电平宽度。
现在我们可以这样做,令TR0=1,GATE=1,这时定时器的启动只有INT0 控制。
当INT0 为高电平时定时器启动,为低电平时定时器关闭。
我们设置下降沿中断,在中断中就可以读取高电平所占的时间了。
但是这样做只能得到高电平时间按。
要想得到脉冲周期,可以再开一个定时器,另外一个就正常工作,这样就可以得到脉冲周期。
也就可以求出脉冲宽
度了。
T0 的工作方式3 相信很少人记得,我还没有用过,但是我感觉做起码在我们需要用到的时候,还知道有这个功能。
方式3 可以把T0 当作二个独立的
计数器使用。
在高级应用中肯定会有用吧。
51单片机定时器设置
51单片机定时器设置51单片机,也被称为8051微控制器,是一种广泛应用的嵌入式系统。
它具有4个16位的定时器/计数器,可以用于实现定时、计数、脉冲生成等功能。
通过设置相应的控制位和计数初值,可以控制定时器的启动、停止和溢出等行为,从而实现精确的定时控制。
确定应用需求:首先需要明确应用的需求,包括需要定时的时间、计数的数量等。
根据需求选择合适的定时器型号和操作模式。
设置计数初值:根据需要的定时时间,计算出对应的计数初值。
计数初值需要根据定时器的位数和时钟频率进行计算。
设置控制位:控制位包括定时器控制寄存器(TCON)和中断控制寄存器(IE)。
通过设置控制位,可以控制定时器的启动、停止、溢出等行为,以及是否开启中断等功能。
编写程序代码:根据需求和应用场景,编写相应的程序代码。
程序代码需要包括初始化代码和主循环代码。
调试和测试:在完成设置和编程后,需要进行调试和测试。
可以通过观察定时器的状态和输出结果,检查定时器是否按照预期工作。
计数初值的计算要准确,否则会影响定时的精度。
控制位的设置要正确,否则会导致定时器无法正常工作。
需要考虑定时器的溢出情况,以及如何处理溢出中断。
需要考虑定时器的抗干扰能力,以及如何避免干扰对定时精度的影响。
需要根据具体应用场景进行优化,例如调整计数初值或控制位等,以达到更好的性能和精度。
51单片机的定时器是一个非常实用的功能模块,可以用于实现各种定时控制和计数操作。
在进行定时器设置时,需要注意计数初值的计算、控制位的设置、溢出处理以及抗干扰等问题。
同时需要根据具体应用场景进行优化,以达到更好的性能和精度。
在实际应用中,使用51单片机的定时器可以很方便地实现各种定时控制和计数操作,为嵌入式系统的开发提供了便利。
在嵌入式系统和微控制器领域,51单片机因其功能强大、使用广泛而备受。
其中,定时器中断功能是51单片机的重要特性之一,它为系统提供了高精度的定时和计数能力。
本文将详细介绍51单片机定时器中断的工作原理、配置和使用方法。
51单片机常用寄存器详解
P0 = 0x80;P1 = 0x90;P2 = 0xA0;P3 = 0xB0;PSW = 0xD0;PSW寄存器,全称——程序状态字标志寄存器,是一个8位寄存器。
该寄存器用来存放运算结果的一些特征,如有无进位、借位等。
使用汇编编程是PSW寄存器很有用,但在C语言编程时,编译器会自动控制该寄存器,很少人为操作,仅作了解即可。
D7 D6 D5 D4 D3 D2 D1 D0CY AC F0 RS1 RS0 OV —— P①CY——进位标志位,他表示运算是否有进位(或借位)。
如果操作结果在最高位有进位(加法)或者借位(减法),则该位为1,否则为0.②AC——辅助进位标志,又称半进位标志,它指两个8位数运算低四位是否有半进位,即低四位相加(或相减)是否进位(或借位),如有AC为1,否则为0.③F0——由用户使用的一个状态标志位,可用软件来使它置1或清0,也可由软件来测试它,以控制程序的流向。
④RS1、RS0——四组工作寄存器选择控制位,在汇编语言中这两位用来选择4组工作寄存器区中的哪一组为当前工作寄存区。
⑤OV——溢出标志位,反应带符号数的运算结果是否有溢出。
有溢出时,此位为1,否则为0.⑥P——奇偶标志位,反应累加器ACC内容的奇偶性,如果ACC内中的运算结果有偶数个1,则P为0,否则为1.ACC = 0xE0;B = 0xF0;SP = 0x81;DPL = 0x82;DPH = 0x83;PCON = 0x87;电源管理寄存器,不能位寻址。
PCON用来管理单片机的电源部分,包括上电复位检测、掉电模式、空闲模式等。
单片机复位时PCON全部被清0.为序号D7 D6 D5 D4 D3 D2 D1 D0位符号SMOD SMOD0 LVDF P0F GF1 GF0 PD IDL①SMOD——该位与串口通信波特率有关。
SMOD=0:串口方式为1、2、3时,波特率正常。
SMOD=1:串口方式为1、2、3时,波特率加倍。
单片机指令表汇总
51单片机指令表汇总51单片机是一种广泛应用的微控制器,其指令集是进行编程的基础。
下面将51单片机的指令表进行汇总,以帮助初学者更好地理解其指令集。
一、数据传输指令1、MOV指令:将源操作数的内容传送到目标操作数。
2、XCH指令:将两个操作数的内容互换。
3、MOVC指令:从外部存储器将数据传送到目标操作数。
4、MOVX指令:将外部存储器中的数据传送到目标操作数。
5、PUSH指令:将数据压入堆栈。
6、POP指令:从堆栈中弹出数据。
二、算术运算指令1、ADD指令:将两个操作数相加,并将结果存放在目标操作数中。
2、SUB指令:从目标操作数中减去源操作数,并将结果存放在目标操作数中。
3、MUL指令:将两个操作数相乘,并将结果存放在目标操作数中。
4、DIV指令:将目标操作数除以源操作数,并将结果存放在目标操作数中。
5、ANL指令:对目标操作数和源操作数进行按位与运算,并将结果存放在目标操作数中。
6、ORL指令:对目标操作数和源操作数进行按位或运算,并将结果存放在目标操作数中。
7、XRL指令:对目标操作数和源操作数进行按位异或运算,并将结果存放在目标操作数中。
8、CPL指令:对目标操作数进行按位取反运算,并将结果存放在目标操作数中。
9、INC指令:将目标操作数加1。
10、DEC指令:将目标操作数减1。
11、ASR指令:将目标操作数右移n位,最高位用符号位补齐。
12、LSR指令:将目标操作数右移n位,最低位用0补齐。
13、ROL指令:将目标操作数循环左移n位,最高位移入最低位。
14、ROR指令:将目标操作数循环右移n位,最低位移入最高位。
单片机汇编指令表一、概述在单片机的世界里,汇编语言扮演着举足轻重的角色。
它是一种低级语言,能够直接与硬件进行交互,提供高效的代码执行效率。
下面,我们将详细列出一些常见的单片机汇编指令,以及它们的功能。
二、指令表1、MOV指令:用于将数据从一个寄存器移动到另一个寄存器。
例如,MOV R1, R2将把 R2的内容移动到 R1中。
51单片机TMOD和TCON设置
51单片机TMOD和TCON设置
TMOD 示意表格
下面的表格列出了TMOD各个位的名字,点击下面的1和0就可以给各个位置1或者置0,控制两个定时器/计数器的工作方式。
程序
由于TMOD是不能位寻址的,所以只能直接往里面送数。
MOV TMOD,#00H;
程序说明
GATE=0用TR0和TR1来控制T1和T0的启动,GA TE=1则用外部中断来控制。
C/T为0表示定时器模式。
为1表示计数器模式,对T0或T1的外部负跳变脉冲计数。
M1M0用来选择T0和T1的工作方式。
TCON示意表格
下面的表格列出了TCON各个位的名字,点击下面的1和0就可以给各个位置1或者置0。
其中IE0、IE1不用软件设置。
TF0、TF1在定时器溢出的时候由硬件置1,响应中断的时候硬件清零,但是也
可以用软件清零。
程序
点击按钮就会将相应的语句设置为灰色背景。
SETB IT0; 外部中断0引脚负跳变有效
CLR IT0; 外部中断0低电平有效,将IE0置1,否则将IE0清零。
SETB IT1 ; 外部中断1引脚负跳变有效
CLR IT1 ; 外部中断1低电平有效,将IE1置1,否则将IE1清零。
CLR TF0 ; TF0表示计时器0溢出,只有在查询方式的时候才需要用这句软件清零CLR TF1 ; TF1表示计时器1溢出,只有在查询方式的时候才需要用这句软件清零SETB TR1 ; 开启定时器1
CLR TR1 ; 关闭定时器1
SETB TR0 ; 开启定时器0
CLR TR0 ; 关闭定时器0。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机定时器工作模式TMOD设置
TMOD:定时器/计数器模式控制寄存器(TIMER/COUNTER MODE CONTROL REGISTER)定时器/计数器模式控制寄存器TMOD是一个逐位定义的8位寄存器,但只能使用字节寻址,其字节地址为89H。
其格式为:
TMOD结构图
===================================================================== ============
其中低四位定义定时器/计数器T0,高四位定义定时器/计数器T1,各位的说明:
Ⅰ,GATE——门控制。
●GATE=1时,由外部中断引脚INT0、INT1来启动定时器T0、T1。
当INT0引脚为高电平时TR0置位,启动定时器T0;
当INT1引脚为高电平时TR1置位,启动定时器T1。
●GATE=0时,仅由TR0,TR1置位分别启动定时器T0、T1。
Ⅱ,C/T——功能选择位
C/T=0时为定时功能,C/T=1时为计数功能。
置位时选择计数功能,清零时选择定时功能。
Ⅲ,M0、M1——方式选择功能
由于有2位,因此有4种工作方式
================================================================ M1M0 工作方式计数器模式 TMOD(设置定时器模式)
0 0 方式0 13位计数器 TMOD=0x00
0 1 方式1 16位计数器 TMOD=0x01
1 0 方式
2 自动重装8位计数器 TMOD=0x02
1 1 方式3 T0分为2个8位独立计数器,T1为无中断重装8位计数器TMOD=0x03
单片机定时器0设置为工作方式1为TMOD=0x01;定时器1设置工作方式1时TMOD=0x10
没有用到的定时器一般设置为0
================================================================
初始化定时器0
TH0=(65535-50000)/256;Tl0=(65535-50000)%256;
在51单片机中,如果你的定时器0选择的是“方式一”,则表示定时器0的计数器从0开始加到50000,其中每加一次的时间为你的晶振频率的倒数。
如12MHz,则每加一个数的时间为 1*12/12000000 秒。
你的公式中是加50000次,即50000*1*12/12000000 = 50MS。
注:数值只能从0加到65535,否则就会溢出。
如果需要定时的时间长,可在定时器中断函数中,使用全局变量计数。
如使用你的公式进行定时器初始化,想要实现1S的定时,则等到全局变量从0加至20时,即定时器0发生20次中断,就可以了。