单片机音响技术网
首页 | 热销产品 | 单片机入门 | 下载中心 | 技术文章 | Protel专区 | 电子制作 | 购物指南 | 发货查询 | 本站淘宝
动画01 当前位置:本站首页技术文章
文章搜索
pix
本站推荐产品
  • 单片机音响软件专业开发板
  • 详细介绍
  • TOPAV-2008单片机开发板 598元
pix
pix
pix
单片机技术文章精选
pix

控制8个LED闪烁发光

单片机音响技术网 文章浏览次数:1020

程序如下:

MAIN: MOV P1,#0FFH (1)

CALL DELAY (2)

MOV P1,#00H (3)

CALL DELAY (4)

JMP MAIN (5)


DELAY:MOV R7,#250 (6)

D1: MOV R6,#250 (7)

D2: DJNZ R6,D2 (8)

DJNZ R7,D1 (9)

RET (10)


END (11)

程序分析:

(1).将立即数0FFH送到P1口,即让P1口的LED全熄灭.(P1.0~P1.7)

(2).调用延时子程序.

(3)将立即数00H送到P1口,即让P1口的LED全亮(P1.0~P1.7)

(4).调用延时子程序

(5).跳转到主程序

(6).延时子程序开始,将立即数250传送给寄存器R7.

(7).将立即数250传送给寄存器R6.

(8).将R6中的内容减一后判断,若为0则程序向下执行;若不为0则跳转到D2处(即本行)执行.

(9).将R7中的内容减一后判断,若为0则程序向下执行,若不为0则跳转到D1处执行.

(10).返回调用子程序处.

(11).程序结束.


程序分析

P1是P1.0~P1.7全体的代表,一个符号P1表示了以P1.开头的8个引脚。MOV指令的用途是数据传递,即把0FFH送到P1端口和把00H送到P1端口,那么0FFH和00H又分别代表什么含义呢?0FFH用二进制表示就是11111111B,而00H用二进制表示就是00000000B。因此,送0FFH就是让所有P1.X引脚输出高电平,即让LED全灭,而送00H就是让LED全亮。

程序中的数字FFH前面有一个0,这是汇编软件所要求的,对于十六进制而言,除了0~9这10个数字外,还用了A~F作为基本数字。如果用来表示数字的第一个字符不是0~9这10个阿拉伯数字中的一个,就要在它前面加一个0,表示这是一个数字,而不是字符。


摘录:半键纵横;   责任编辑:mcu51av 2007-11-10

上一篇:单片机控制单个LED闪烁发光
下一篇:按键控制LED亮/暗的汇编程序

pix

关于我们 | 联系我们 | 友情链接 | 网站地图 | 点击给我留言
Copyright © 2007 - 2008 单片机音响技术网 All rights reserved. 站长统计