51单片机定时汇编程序

51单片机定时汇编程序

ID:16343901

大小:87.50 KB

页数:15页

时间:2018-08-09

51单片机定时汇编程序_第1页
51单片机定时汇编程序_第2页
51单片机定时汇编程序_第3页
51单片机定时汇编程序_第4页
51单片机定时汇编程序_第5页
资源描述:

《51单片机定时汇编程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、;******************;;定时器程序;;采用89c51;;2001.10;;******************;;;******************;伪定义;;******************SLEQU30H;SL存放秒的个位数SHEQU31H;SH存放秒的十位数MLEQU32H;ML存放分的个位数MHEQU33H;MH存放分的十位数HLEQU34H;HL存放时的个位数HHEQU35H;HH存放时的十位数;L0EQU36H;L0~L3:显示数据存储器L1EQU37HL2EQU38HL3EQU39HDSPLYPEQU3AH;显示数据指针(DISP

2、LAY-POINT)PLYTSEQU3BH;显示次数计数器(DISPLAY-TIMES);LPLMODBIT39H;低两位显示方式(LOW-PLAY-MOD)HPLMODBIT3AH;高两位显示方式(HIGH-PLAY-MOD)BRIGHTBIT3BH;DISPLAY子程序参数:亮灭指示位;TCOUNTEQU3CH;时间计数器(TIME-COUNT);ADDRESEQU3DH;加1子程序参数MAXEQU3EH;加1子程序参数IFDECBIT20H;BCD加法子程序参数;R_MODEQU3FH;响铃方式参数;LED4BIT30H;发光管状态位BELLBITP1.7;蜂鸣器

3、SWITCHBITP3.7;继电器FKEYBITP3.0;功能键(S1)MKEYBITP3.1;修改键(S2);WORKINBIT38H;工作状态指示位;;******************;中断入口;;******************ORG0000HSTART:LJMPMAIN;0000H引向主程序LJMPERR;0003HNOPNOPLJMPERR;引向出错处理程序LJMPPGT0;000BH引向中断处理程序PGT0NOPNOPLJMPERR;引向出错处理程序LJMPERR;0013HINT1NOPNOPLJMPERRLJMPERR;001BHT1NOPNOP

4、LJMPERRLJMPERR;0023HNOPNOPLJMPERRLJMPERR;002BHNOPNOP;;************;主程序;;************MAIN:MOVIE,#00H;关中断MOVSP,#57H;设置堆栈指针MOVPSW,#00H;选用寄存器组0MOVTMOD,#11H;设定中断工作方式为T0和T1;MOVA,56HCJNEA,#0AAH,CSTART;判上电复位标志,无标志转冷启动MOVA,57HCJNEA,#55H,CSTART;无标志转冷启动AJMPHSTART;有上电复位标志转热启动NOPNOPLJMPERR;软件陷阱,引向出错处

5、理程序CSTART:MOVP1,#0FFH;冷启动,全面初始化MOVP3,#0FFHMOVTCON,#00H;计时停止MOVTL0,#0B0H;赋中断T0初值MOVTH0,#3CHMOVTCOUNT,#0AH;赋定时器初值MOVR5,#00H;R5为一空单元(备用)MOVR4,#00H;R4为工作模式选择寄存器MOVSL,#00H;定时单元清零MOVSH,#00H;秒MOVML,#00H;MOVMH,#00H;分MOVHL,#00H;MOVHH,#00H;时MOVPLYTS,#64H;赋显示次数初值为100次MOVDSPLYP,#L0;显示指针指向显存单元MOVL0,#

6、0AH;送显示数据"-----"MOVL1,#0AHMOVL2,#0AHMOVL3,#04HSETBLED4;LED4为数码管之间的发光二极管SETBLPLMOD;设定显示方式为闪烁SETBHPLMOD;SETBBRIGHT;允许显示CLRWORKIN;清工作标志,待命AJMPSETUP;转开始工作NOPNOPLJMPERR;软件陷阱HSTART:MOVSCON,#00H;有上电标志,热启动,清串行口控制寄存器MOVIP,#00H;清中断优先控制寄存器SETBFKEY;重设按键SETBMKEYSETBEA;开中断AJMPBEGIN;转向继续工作NOPNOPLJMPERR

7、;软件陷阱SETUP:SETBEA;开中断;MAIN1:ACALLDISPLY;调用显示JBFKEY,JUDGE;按键扫描ACALLKEYDLY;延时消抖动JBFKEY,JUDGE;无键按下转向判断是否到点CLRET0;功能键被按下,则CLRTR0;暂停计时ACALLMENU;调用菜单设置程序BEGIN:SETBWORKIN;置工作标志位,开始工作SETBET0;开中断SETBTR0;开始计时MOVA,R4;移入工作模式选择RLA;指针放大MOVDPTR,#M_TABJMP@A+DPTR;根据工作模式跳转到相应程序段M_TAB:AJMPW

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。