1、用精确定时的方法,设置流水灯运行时的时间间隔,延时时间为500MS。2、#include"reg51.h"首先写出单片机的头函数。3、#include"intrins.h"输入位移函数。4、unsignedintcount=0,led;定义函数。5、输入主函数,定...
用定时器定时的方法控制8个LED流水灯,使流水灯循环流动点亮,时间间隔为1秒.1设置IE和TMOD的值2编写程序-...方法有很多的,给你一个,你可以调试一下,你可以通过不同的晶振去计算定时器初值,如果你懂定时器这部分很好...
voiddelay(unsignedintz);voidmain(){unsignedinta;unsignedcharb=0xfe;for(a=0;a<8;a++){P1=b;//P1口接8个LED灯delay(200);b=_crol_(b,1);}}voiddelay(unsignedintz){unsigned...
这个流水灯是很普通的一种花样,假设LED接P1口,程序如下:ORG0000HLJMPMAIN0RG000BHLJMPT0ISRORG0030HMAIN:MOVTMOD,#01HMOVTH0,#HIGH(65536-50000);50毫秒定时MOVTL0,#LOW(65536-50000)SET...
我们把实验代码插入单片机,然后点击界面左下角的开始按钮,就可以运行电路。05如图所示,八个流水灯依次点亮。
MOVR2,#8;左移次数MOVA,#0FEH;A的初始值,即P0.0的L0点亮SETBCLOOP:MOVP0,ALCALLDELAYRLCA;左移流水灯(带进位的左移),即亮点向P0口的高位移动DJNZR2,LOOPMOVR2,#8;右移...
假设P1接8个LED,高电平时LED点亮,主程序如下:voidmain(void){uchari;while(1){for(i=0;i<7;i++){P1=1<<i;delay_ms(500);}for(i=0;i<7;i++){P1=0x80>>i;delay_ms(500);}}}...
如果用单片机,用一组io口,比如51单片机的p0口,让其左位移或右位移,或者进行加减运算好了。另外可以直接拿计数器4017和555实现流水灯,在第9脚接个二极管到15脚,让其进行复位,这样也可以实现8个LED轮流循环...
}}//主程序voidmain(){uints;while(1){P0=0xfe;DelayMS(150);for(s=8;s>1;s--){P0=_crol_(P0,1);//P0的值向左循环移动DelayMS(150);}P0=0x00;DelayMS(150);p0=0xff;DelayMS(150);...
流程:1.点亮1个灯;2.延时100毫秒3.灭第一个灯,点亮第二个灯;4延时100毫秒;。。。依次类推,直到灭第8个灯,再返回到1,重新开始。