蓝桥杯-单片机系列(一)
蓝桥杯单片机教程。
前言
本文主要介绍蓝桥杯(单片机)LED灯的使用,及各种点灯的实现方法。
一、点灯的原理
从原理图中,我们不难看出LED是共阳的。因此,我们只需把LED左端电平拉低,即可点亮LED灯。
二、使用步骤
1.点灯
代码如下(示例):将LED电平拉低
void main(void)
{
P2=0XA0;P0=0X00;P2=0X80;P0=0XFF; //初始化程序,以后讲解
P00=0; //拉低电平,点亮LED灯
P01=0;
P02=0;
while(1);
}
2.LED灯闪烁
代码如下(示例):先建立一个延时函数
void Delay1s(unsigned int s) //@11.0592MHz
{
unsigned char i, j;
unsigned int k;
for(k=0;k<1000*s;k++)
{
_nop_();
_nop_();
_nop_();
i = 11;
j = 190;
do
{
while (--j);
} while (--i);
}
}
代码如下:LED灯闪烁
void main(void)
{
P2=0XA0;P0=0X00;P2=0X80;P0=0XFF; //初始化程序,以后讲解
P00=0;
P01=0;
P02=0;
while(1)
{
P00=0;
P01=0;
P02=0;
Delay1s(2);
P00=1;
P01=1;
P02=1;
Delay1s(2);
}
}
3.简易流水灯的实现
void main(void)
{
P2=0XA0;P0=0X00;P2=0X80;P0=0XFF; //初始化程序,以后讲解
while(1)
{
P0=0XFE;
Delay1s(1);
P0=0XFD;
Delay1s(1);
P0=0XFB;
Delay1s(1);
P0=0XF7;
Delay1s(1);
P0=0XEF;
Delay1s(1);
P0=0XDF;
Delay1s(1);
P0=0XBF;
Delay1s(1);
P0=0X7F;
Delay1s(1);
P0=0XFF;
Delay1s(1);
}
}
3.流水灯进阶版
void main(void )
{
P2=0XA0;P0=0X00;P2=0X80;P0=0XFF; ///初始化程序,以后讲解`在这里插入代码片`
while(1)
{
unsigned char i;
for(i=0;i<=7;i++)
{
P0=~(1<<i);
Delay1s(1);
}
}
}
总结
本文主要讲解了LED灯的点亮,LED灯闪烁及流水灯的实现。