《定时单片机汇编课件》由会员分享,可在线阅读,更多相关《定时单片机汇编课件(14页珍藏版)》请在金锄头文库上搜索。
1、单片机原理及应用定时器工作方式寄存器定时器工作方式寄存器TMOD用于用于T1用于用于T0GATEC/TM1M0GATEC/TM1M0门控位门控位计数计数/定时选择位定时选择位“1”-计数计数“0”-定时定时M1M0:工作方式选择位:工作方式选择位00:方式:方式0-13位计数器位计数器01:方式:方式1-16位计数器位计数器10:方式:方式2-两个两个8位计数器位计数器 自动重装初值自动重装初值11:方式:方式3-仅仅T0可用可用复习复习TMODTMOD不可位寻址!不可位寻址!不可位寻址!不可位寻址!定时单片机汇编单片机原理及应用定时定时/ /计数器应用步骤计数器应用步骤 合理选择定时合理选择
2、定时/ /计数器计数器工作方式工作方式 计算定时计算定时/ /计数器定时计数器定时初值初值( (按上述公式计算按上述公式计算) ) 编制应用程序编制应用程序 定时定时/ /计数器的初始化计数器的初始化 包括定义包括定义TMODTMOD、写入定时初值、设置中断系统、启动定、写入定时初值、设置中断系统、启动定时时/ /计数器运行等。计数器运行等。 正确编制定时正确编制定时/ /计数器中断服务程序计数器中断服务程序 注意注意是否需要重装是否需要重装定时初值,若需要连续反复使用原定定时初值,若需要连续反复使用原定时时间,且未工作在方式时时间,且未工作在方式2 2,则应在中断服务程序中重装定,则应在中断
3、服务程序中重装定时初值。时初值。定时单片机汇编单片机原理及应用【例例】试试用用T1T1方方式式2 2编编制制程程序序,在在P1.0P1.0引引脚脚输输出出周周期期为为400400 S S的脉冲方波,已知的脉冲方波,已知fosc=12MHZfosc=12MHZ。解:解:计算定时初值计算定时初值 T1 T1初值初值=2=28 8-200-200 s s/1/1 s s=256200=56=38H=256200=56=38H TH1=38H TH1=38H;TL1=38HTL1=38H 设置设置TMODTMOD: 0 0 0 0 1010 00000000 B=20H B=20H T0 T0控制位,
4、与控制位,与T1T1无关无关 T1 T1方式方式2 2 T1 T1定时器定时器 T1 T1启动与启动与 无关无关定时单片机汇编单片机原理及应用 编制程序编制程序如下:如下: ORGORG0000H0000H ; ;复位地址复位地址LJMPLJMPMAINMAIN ; ;转主程序转主程序ORGORG001BH001BH ;T1;T1中断入口地址中断入口地址LJMPLJMPIT1IT1 ; ;转转T1T1中断服务程序中断服务程序 ORGORG0100H0100H ; ;主程序首地址主程序首地址MAIN:MAIN: MOVMOVTMODTMOD,#20H,#20H ; ;置置T1T1定时器方式定时器
5、方式2 2MOVMOVTL1,#38HTL1,#38H ; ;置定时初值置定时初值MOVMOVTH1,#38HTH1,#38H ; ;置定时初值备份置定时初值备份MOVMOVIPIP,#00001000B,#00001000B; ;置置T1T1高优先级高优先级MOVMOVIE,#0FFHIE,#0FFH ; ;全部开中全部开中SETBSETBTR1TR1 ;T1;T1运行运行SJMPSJMP$ $ ; ;等待等待T1T1中断中断 ORG 0200HORG 0200H ;T1;T1中断服务程序首地址中断服务程序首地址IT1:IT1: CPL P1.0 CPL P1.0 ; ;输出波形取反首地址输
6、出波形取反首地址RETI RETI ; ;中断返回中断返回定时单片机汇编单片机原理及应用定时定时定时定时/ /计数器及中断系统综合应用计数器及中断系统综合应用计数器及中断系统综合应用计数器及中断系统综合应用设设设设MCS-51MCS-51单单单单片片片片机机机机系系系系统统统统时时时时钟钟钟钟频频频频率率率率CLKCLK为为为为6MH6MHZ Z,请请请请编编编编出出出出利利利利用用用用定定定定时时时时/ /计计计计数数数数器器器器T0T0在在在在P P1.01.0引引引引脚脚脚脚上上上上产产产产生生生生周周周周期期期期为为为为2 2秒秒秒秒,占占占占空空空空比为比为比为比为50%50%的方波
7、信号的程序的方波信号的程序的方波信号的程序的方波信号的程序(1)主程序)主程序 任务:任务: 1)T0工作方式的设定:工作方式的设定: 选择方式选择方式1(16位方式)位方式) (最大定时(最大定时131ms) 2) 定定 时时 常常 数数 的的 设设 定定 : TC=216-100ms/2s =15536=3CB0H下一页定时单片机汇编单片机原理及应用2)定时常数的设定:)定时常数的设定: TC=216-100ms/2s =15536=3CB0H 即:即:TH0应装应装3CH,TL0应装应装B0H。3)中断管理:中断管理: 允许允许T0中断,开放总中断中断,开放总中断 即:即:IE应装应装1
8、0000010B。 4)启动定时器启动定时器T0: SETB TR0 5)设置软件计数器初值:设置软件计数器初值:(如使用(如使用R7) 即即R7应装应装0AH 6)动态停机:动态停机:SJMP $下一页定时单片机汇编单片机原理及应用主程序如下:主程序如下:MAIN:MOV TMOD,#01H;设定T0为方式1MOV TH0,#3CH ;装入定时常数高8位MOV TL0,#0B0H ;装入定时常数低8位MOV IE,#82H;开放T0中断SETB TR0;启动T0MOV R7,#0AH;设置软件计数器SJMP $下一页定时单片机汇编单片机原理及应用(2)中断服务程序)中断服务程序 任任务务:1
9、)恢恢复复T0常常数数; 2)软软件件计计数数器器减减1; 3)判判断断软软件件计计数数器器是是否否为为0。为为0时时,改改变变P1.0状状态态,并并恢恢复软件计数器初值;不为复软件计数器初值;不为0时中断返回。时中断返回。程序如下:程序如下:TOINT:MOVTL0,#0B0H ;恢复定时常数MOV TH0,#3CH ;DJNZ R7,NEXTCPLP1.0 MOV R7,#0AHNEXT:RETI下一页定时单片机汇编单片机原理及应用完整程序如下:完整程序如下:完整程序如下:完整程序如下:ORG 0000H AJMP MAINORG 000BH AJMPTOINTORG 0030H MAIN
10、:MOVTMOD,#01HMOV TH0,#3CH MOV TL0,#0B0HMOV IE,#82HSETBTR0MOV R7,#0AH下一页定时单片机汇编单片机原理及应用SJMP$TOINT:MOVTL0,#0B0HMOV TH0,#3CHDJNZR7,NEXTCPL P1.0MOV R7,#0AHNEXT:RETIEND返回本章首页定时单片机汇编单片机原理及应用1、MCS5l单片机的堆栈区是设置在()中。A、片内、片内ROM区区B、片外、片外ROM区区C、片内、片内RAM区区D、片外、片外RAM区区2、进位标志Cy在()中A、累加器、累加器B、算逻运算部件、算逻运算部件ALUC、程序状态字
11、寄存器、程序状态字寄存器PSWD、DPTR3、8051单片机共有()个中断优先级A、2B、3C、4D、54、单片机在与外部I/O进行数据传送时,将使用()指令。A、MOVXB、MOVC、MOVCD、视具体、视具体I/O口器件而定口器件而定5、当需要从MCS-51单片机程序存储器取数据时,采用的指令为()。A、MOVA,R1B、MOVCA,A+DPTRC、MOVXA,R0D、MOVXA,DPTR练习题练习题C CC CA AA A定时单片机汇编单片机原理及应用、下面的说法正确的是()。A、数据传送指令执行后,源操作数中的内容会丢失。、数据传送指令执行后,源操作数中的内容会丢失。B、数据传送指令对
12、、数据传送指令对PSW一定没有影响。一定没有影响。C、对外、对外RAM操作只能使用操作只能使用MOVX指令。指令。D、十进制调整指令放在、十进制调整指令放在SUBB指令后面也能得到正确结果。指令后面也能得到正确结果。、对某单元的部分位取反,应采用下面哪种逻辑操作()。A A、ANLBANLB、ORLCORLC、CPLDCPLD、XRLXRL、有一位共阳极LED显示器,要使它不显示,它的字段码()A、7DHB、82HC、FFHD、00HCC定时单片机汇编单片机原理及应用、访问外部存储器或其它接口芯片时,作数据线和低8位地址线的是()A、P0口口B、P1口口C、P2口口D、P0口和口和P2口口5、
13、MCS-51单片机的复位信号是()有效。A、高电平、高电平B、低电平、低电平C、脉冲、脉冲D、下降沿、下降沿、51单片机复位后,PC与SP的值为()。A、0000H,00HB、0000H,07HC、0003H,07HD、0800H,00H、51单片机的XTAL1和XTAL2引脚是()引脚。A A、外接定时器、外接定时器、外接定时器、外接定时器BB、外接串行口、外接串行口、外接串行口、外接串行口CC、外接中断、外接中断、外接中断、外接中断DD、外接晶振、外接晶振、外接晶振、外接晶振 在MCS-51单片机中,当晶振频率采用4MHZ时,一个机器周期等于()微秒。A、3B、4C、5D、6AABDA定时单片机汇编单片机原理及应用编程实现把内编程实现把内RAM以以30H为起点地址的为起点地址的8个数送到以个数送到以2000H为起点地址的外为起点地址的外RAM区域中区域中LOOP:MOV A,R0LOOP:MOV A,R0MOVXDPTR,AINCAINCDPTRMOVR0,#30HMOVDPTR,#2000HMOVR7,#08HDJNZR7,LOOPSJMP$定时单片机汇编