找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4456|回复: 1
打印 上一主题 下一主题
收起左侧

用单片机定时器0实现P1.0的LED的亮灭功能(利用定时器的中断实现1秒长时间定时)

[复制链接]
跳转到指定楼层
楼主
ID:71407 发表于 2014-12-31 14:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;51单片机入门程序17
;工程名称:用定时器0实现P1.0的LED的亮灭功能(利用定时器的中断实现1秒长时间定时)
;编写日期:2009.7.4
;编写者:蓝柳柳
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ORG 0000H
AJMP QQ
ORG 000BH ;定时器0中断入口地址
AJMP QQQ  ;跳转到定时器中断服务程序
ORG 30H
QQ:
    MOV   P1,#11111111B   ;熄灭掉P1端口的LED
    MOV   R7,#00000000B   ;软件计数器清零
    MOV   TMOD,#00000001B ;定时器0工作方式1
    MOV   TH0,#3CH
    MOV   TL0,#0B0H       ;初值
    SETB   EA             ;定时器0中断条件
    SETB   ET0            ;定时器0中断条件
    SETB   TR0            ;启动定时器0
LOOP:AJMP   LOOP          ;定时时单片机可以在做自己的事情
QQQ:
    INC   R7              ;软件计数器加1
    MOV   A,R7            ;R7里的数送到A,这个语句可以省略
CJNE   A,#20,TR ;A里的数到20了没,定时中断够20次了没,到了顺序运行
               ;让LED亮起来,没到20跳转到TR继续定时,直到定20次够1秒为止
TCL:
    CPL   P1.0            ;
    MOV   R7,#0           ;软件计数器清零
TR:
    MOV   TH0,#3CH
    MOV   TL0,#0B0H       ;定时器重新定初值
    RETI                ;中断服务程序返回,返回到LOOP处
END     
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩

相关帖子

回复

使用道具 举报

沙发
ID:72462 发表于 2015-1-23 21:23 | 只看该作者
为什么是汇编?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表