
//实现功能:本程序实现在P1口模拟一个流水霓虹灯程序
//*********************************************************
#include <reg51.h>
#define p_out P1 //宏定义输出的i/o口为P1
//******************时间延迟函数**********************
//描 述:用指令实现延时一段时间
//入口参数:int i,为时间延迟参数
//****************************************************
void delay_time(int i)
{
while(i)
i--
}
//******************主函数***************************
//描 述:实现在P1口模拟一个流水灯程序
//****************************************************
void main(void)
{unsigned char i=0 //初始化一个局部变量为0
p_out=0xff //初始化将要输出的i/o口,输出高电平,熄灭所有灯
while(1)
{
for(i=0i<8i++)
{
p_out=~(1<<i)//点亮一个灯,
delay_time(50000) //延迟一段时间
p_out=0xff//熄灭所有灯
}
}
}
//**************************************
#include <reg52.h>#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
uint i,j,tuchar Temp
void main()
{
while(1)
{
for(j=0j<8j++)
{
Temp = (Temp<<1)
Temp_YiWei = Temp
for(i=0i<7-ji++)
{
P1 = Temp_YiWei
Temp_YiWei = _crol_(Temp_YiWei,1)
for(t=40000t>0t--) //延时函数 自己调试调试
P1 = Temp_YiWei
}
}
P1 = 0x00 //全亮
for(t=5000t>0t--) //延时函数 自己调试调试
P1 = 0xFF //全亮
}
}
灯会亮,是因为引脚两端有电压差。如果电压差为0,则灯灭。单片机的引脚只有两个属性:高电平和低电平。将灯一端引脚接高电平,另一端引脚接单片机引脚,则可通过单片机引脚的电平高低情况控制灯的亮灭。推荐你到www.verycd.com下载单片机的视频教程,里面有霓虹灯的源代码欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)