|
制作流水灯,原理电路见图,8个发光二极管LED0~LED7经限流电阻分别接至P1口的P1.0~P1.7引脚上,阳极共同接高电平。编写程序来控制发光二极管由上至下的反复循环流水点亮,每次点亮一个发光二极管。试将Keil C51调试结果和Proteus仿真结果截图提交。
参考程序:
#include <reg51.h>
#include <intrins.h> //包含移位函数_crol_( )的头文件
#define uchar unsigned char
#define uint unsigned int
void delay(uint i) //延时函数
{
uchar t;
while (i--)
{
for(t=0;t<120;t++);
}
}
void main( ) //主程序
{
P1=0xfe; //向P1口送出点亮数据
while (1)
{
delay( 500 ); //500为延时参数,可根据实际需要调整
P1=_crol_(P1,1) ; // 函数_crol_(P1,1)把P1中的数据循环左移1位
}
}
|
-
1.png
(89.04 KB, 下载次数: 45)
|