基于单片机的汽车灯
系统设计软件:Proteus8.10和keil4 。proteus8.10版本安装包可在微信公众号下载
系统源代码和仿真等资料可在文末的链接中下载
系统组成:单片机最小系统、八个LED(四个作为汽车左边的车灯、四个作为汽车右边的车灯)、四个独立按键(左转、右转、刹车、紧急)
系统功能:系统可以模拟车灯的操作,初始状态LED为熄灭状态,当按下左转按键,左边的LED从左到右循环点亮,模拟汽车左转。当按下右转按键,右边的LED从右到左循环点亮,模拟汽车右转。当按下刹车按键,所有的LED点亮,模拟汽车刹车。当按下紧急按键,所有的LED以1S的时间间隔做闪烁,模拟汽车紧急情况。
系统可改进:按键的灵敏度稍低,需要多按几下,可以用LCD1602加上1302芯片和DS1820实现测量汽车的温度和显示实时时间等。
具体组成如下图所示:
按下左转按键时:
按下右转按键:
按下刹车按键时:
void main(void)
{
P3=0xff; //初始状态灯熄灭
keyval=0; //键盘初始化为0
Timer0Init(); //定时器初始化
while(1)
{
key_scan(); //调用键盘扫描函数
switch(keyval)
{
case 1:turn_left(); //键值为1,左转
break;
case 2:tern_right(); //键值为2,右转
break;
case 3:brake(); //键值为3,刹车
break;
case 4:pressing(); //键值为4,紧急指示灯
break;
}
}
}