STM32簡易交通燈設(shè)計(定時可調(diào))
//按鍵key1 設(shè)置紅燈時間
按鍵key2 設(shè)置綠燈時間
按鍵key3設(shè)置黃燈時間
按鍵key2 設(shè)置綠燈時間
按鍵key3設(shè)置黃燈時間
#include
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "stdlib.h"
static int G=0,R=0,Y=0; //設(shè)置綠,紅,黃燈時間變量
#include "lcd.h"
#include "key.h"
#include "time.h"
//----------- 按鍵函數(shù)----------
void scan_key1()
{
static u8 i,j;
if(key1==0)
{
if(i==0)
{
j++;
if(j>3)
{
i=1;j=0;
R++;
if(R>20)R=0;
printf("key1 is inputed ");
}
}
}
else
{
i=j=0;
}
}
void scan_key2()
{
static u8 i,j;
if(key2==0)
{
if(i==0)
{
j++;
if(j>3)
{
i=1;j=0;
G++;
if(G>20)G=0;
printf("key2 is inputed. ");
}
}
}
else
{
i=j=0;
}
}
void scan_key3()
{
static u8 i,j;
if(key3==1)
{
if(i==0)
{
j++;
if(j>3)
{
i=1;j=0;
Y++;
if(Y>20)Y=0;
printf("key3 is inputed. ");
}
}
}
else
{
i=j=0;
}
}
//各指示燈顯示秒數(shù)函數(shù)
void LED_RED(u8 k)
{
LCD_ShowNum(120,55,k,2,16);
}
void LED_YELLOW(u8 k)
{
LCD_ShowNum(120,145,k,2,16);
}
void LED_GREEN(u8 k)
{
LCD_ShowNum(120,235,k,2,16);
}
關(guān)鍵詞:
STM32交通燈設(shè)計定時可
評論