P0作输出口,接8只发光二极管,编写程序实现二极管循环点亮
二极管为共阳极连接时,即二极管正极已接通电源,单片机输出接阴极,所以单片机输出为低电平有效。
所以为实现二极管轮流点亮,单片机的输出应为:0FEH,0FDH,0FBH,....0FEH,每输出一种状态,需要延时0.1us.文章来源:https://www.toymoban.com/news/detail-736750.html
ORG 0000H
MOV A,#0FEH
NEXT:MOV P0,A
MOV R1,#184
DEL1:MOV R2,250
DEL2:DJNZ R2.DEL2
DJNZ R1,DEL1
RL A
STMP NEXT
END
最后在解释一下为什么需要延时:文章来源地址https://www.toymoban.com/news/detail-736750.html
单片机的处理速度是很快的,有的时候为了让我们便于观察需要加入延时,例如一个指示灯的亮灭,如果不加入延时是看不出来的,再有就是键盘去抖动,一般按键都有20ms左右的抖动,为了更好的检测防止干扰,也需要延时一段时间在进行判断,总之延时的作用在不同的情况下也不同。
到了这里,关于汇编语言实现C51单片机点亮流水灯的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!