delay.h
#include<reg51.h>
void delay_ms(unsigned int factor) //延时n*1ms
{
unsigned int i,j;
for(i=factor;i>0;i--)
for(j=111;j>0;j--); //";"相当于空语句,此处循环执行空语句
}
main.c
#include<delay.h> //包含自己定义的头文件
unsigned char table[30]={0xfe,0xfb,0xef,0xbf,0x3f,0x9f,0xcf,0xe7,0xf3,0xf9,0xfc,0xf8,0x1f,0xf8,
0x1f,0xaa,0x55,0xaa,0x55,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0xff
}; //将欲显示的数据存入数组,用查表的方式实现流水灯
void main()
{
unsigned char i; //声明变量i
for(;;) //反复执行下面的语句
{
for(i=0;i<30;i++)
{
P2=table[i]; //将欲显示的数据送入端口寄存器P2
delay_ms(500); //延时500ms
}
}
}
Keil uVision4实例 51单片机控制流水灯效果
Keil uVision4实例 51单片机控制流水灯效果,设计内容:宏定义、自定义函数、位移函数,循环。创建项目:51单片机控制流水灯效果。添加包含51头文件。包含移位标准库函数头文件。使用预处理指令,完成宏定义:用“uchar”替换unsigned char #define uchar unsigned char 设置灯的相关变量: unsigned char LED;...
按键点灯程序,按一下按键灯亮(一直亮),再按一下灭,51单片机。
1、首先打开编程软件Keil uVision4,新建一个工程文件,在菜单栏中Project—— New uVision Project..。2、然后选择单片机型号是 Atmel 公司的 AT89c52,单击OK。3、再单击工具栏上新建按钮,新建一个文档,然后再点击保存,输入保存的路径,输入名字。4、右键单击将这个文件添加到到工程文件夹中。5、打...
谁帮我看下51单片机流水灯怎么不能正常流水闪亮
你程序最后的运行结果是不是所有LED都亮了,如果是这样的话,就是可能你P0口没有加上拉电阻,单片机P0不加上拉电阻的话,是输出不了高电平的。还有,楼主以后问程序问题的同时,最好也把硬件电路图给出,这样大家也才好回答。。。希望可以帮到你。。。
keil软件中有段这样的程序大家帮忙看下!!!
temp 过渡作用。。用来存储P1口的高低电平状态 0xfe=1111 1110 你的P1口是led的话就是 1111 1110 让最后一个LED灯亮 下边那句是是一个左移函数,你的这个程序实现的是左移流水灯效果 (temp,1)控制一次左移一个LED灯
单片机流水灯程序
include <reg51.h> include<intrins.h> define uchar unsigned char uchar j,temp;void delay(unsigned int ms){ uchar t;while(ms--)for(t=0;t<123;t++);} void main(){ P1=0xff;delay(500);temp=0xfe; \/\/有点怪,led接在P2.3~P2.6 for(j=0;j<4;j++){ P1=temp;delay(...
单片机左右来回流水灯程序,两个两个的灯亮?能用keil生成.hex文件。_百...
LOOP:MOV P0,A CALL DELAY RR A JMP LOOP DELAY: ;延时程序 MOV R3,#20 D1:MOV R4,#20 D2:R5,#248 DJNZ R5,DJNZ R4,D2 DJNZ R2,D1 RET 这只是2个灯右移程序,如果达到你想要的效果还有计数8次然后进入计数左移动8次,懂基本原理什么都好办哎!纠结!!!
51单片机编程:先循环一遍流水灯,然后熄灭后蜂鸣器响三下停止?_百度知 ...
A:while(1){;}\/\/跑完一遍程序后执行死循环 B:led1=1;Delay1000ms();led1=0;led2=1;Delay1000ms();led2=0;led3=1;Delay1000ms();led3=0;\/\/流水灯 ring=1;Delay1000ms();ring=0;ring=1;Delay1000ms();ring=0;ring=1;Delay1000ms();ring=0;\/\/蜂鸣 goto A;\/\/跳转...
KeiluVision4开发工具V412破解免费版KeiluVision4开发工具V412破解免...
Keil uVision4破解版是由英蓓特公司推出的一款程序开发工具,该款工具的功能就是把高级语言翻译成单片机能识别的语言,并且在新版本中,引入了灵活的窗口管理系统,使开发人员能够使用多台监视器,提供了一个整洁、高效的环境来开发应用程序。keil uvision相关推荐keil uvision5注册机Keil uVision2破解补丁...
我用keil c51编了一个流水灯程序,编译无误却只有第一和第二个灯亮了...
if(a==8) \/\/---执行完for之后,a肯定等于8,所以执行下面的,结果就是第一个灯亮 P1=0xfe;3 我给你改正的,程序:功能是先是第一个灯亮,再是第一个灯灭,亮2,然后2灭,亮3...void time1() interrupt 3 { tt++;if(tt==10){ tt = 0; \/\/---这句表示中断10次换一个灯,不可少 ...
单片机 8个LED灯随机闪烁怎么做?
1、首先在电脑中新建项目:Keil uVision4 51单片机LED闪烁编程,如下图所示。2、然后设计单片机端口与LED灯相连,如下图所示,输入代码。3、接着创建延迟函数,如下图所示,输入以下代码。4、然后创建C语言主函数,如下图所示,输入以下代码。5、接着输入对输出取反,最后调用延迟函数,如下图所示就...