STC15F2K60S2实现流水灯
P0口输出,LED灯共阳极,因此I/O口输出低电平(共阴极自行修改)
以下是两三个简易代码:
方案一:左右移+左右流水+间隔闪烁
#include <REGX52.H>
unsigned char code seg[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0x00,0x00,0x55,0x55,0xaa,0xaa};
void DelayMs(unsigned int t);
main()
{
unsigned char i; //定义一个无符号字符型
while(1)
{
P0=0xFE; //第1个LED亮
for(i=0;i<8;i++)
{
DelayMs(1000);
P0 <<=1;
}
P0=0x7F; //第8个LED亮
for(i=0;i<8;i++)
{
DelayMs(1000);
P0 >>=1;
}
P0=0xFE; //第1个LED亮
for(i=0;i<8;i++)
{
DelayMs(1000);
P0 <<=1;
P0 |=0x01; //第1个LED亮
}
P0=0x7F; //第8个LED亮