工业控制 | 能源技术 | 汽车电子 | 通信网络 | 安防监控 | 智能电网 | 移动手持 | 无线技术 | 家用电器 | 数字广播 | 消费电子 | 应用软件 | 其他方案

电路设计->微机单片机电路图->单片机综合电路图->采用AT89C51单片机设计八路LED跑马灯的实验

采用AT89C51单片机设计八路LED跑马灯的实验

发布人:dolphin 时间:2012-07-25 收藏

  现在让我们开始做第一个实验:八路发光二极管轮流点亮的实验,也就是通常所说的跑马灯实验,首先让我们来完成必须的硬件部分,我们需要焊接上8个发光二极管和8个限流电阻,可以参考下面的原理图和实物图像进行操作,需要注意的是LED是有极性的,引脚长的为正极,引脚短的为负极,负极和电阻一侧连接,如果接错那么相应的那一路可能在实验中不会点亮了,在焊接前要看仔细哦.

LED跑马灯实验的原理图

  下面我们来完成软件编程设计,这里我们没有采用高深的编程技巧,而是用了最笨、最直接的向端口送数的办法来实现,一来程序比较简单,没必要玩深沉,而且初学者看起来直观易懂。

ORG 0000H
START:MOV P1,#01111111B;最下面的LED点亮
LCALL DELAY;延时1秒
MOV P1,#10111111B;最下面第二个的LED点亮
LCALL DELAY;延时1秒
MOV P1,#11011111B;最下面第三个的LED点亮 (以下省略)
LCALL DELAY
MOV P1,#11101111B
LCALL DELAY
MOV P1,#11110111B
LCALL DELAY
MOV P1,#11111011B
LCALL DELAY
MOV P1,#11111101B
LCALL DELAY
MOV P1,#11111110B
LCALL DELAY
MOV P1,#11111111B;完成第一次循环点亮,延时约0.25秒
AJMP START;反复循环

;延时子程序,12M晶振延时约250毫秒
DELAY:
MOV R4,#2
L3: MOV R2 ,#250
L1: MOV R3 ,#250
L2: DJNZ R3 ,L2
DJNZ R2 ,L1
DJNZ R4 ,L3
RET

END

AT89C51简介  

  AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM―Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。



评论

技术专区