想自行车后面装一个LED胸牌做的显示屏,这样夜晚骑车安全点。自己不会写。因为胸牌内置程序不能改,只能用单片机控制自动切换字体了。
这程序要求如下:
开关打开,LED屏和单片机同时上电,LED屏初始化后,自动显示“小心尾随”。
下面为单片机需要的程序:
单片机上电后,输入高电平,输出高电平。//LED屏显示“小心尾随”字不变。
(1)当刹车时:输入低电平,单片机输出低电平350毫秒。//(此时等于手动按了下胸牌的切换键,LED屏显示“刹车.....)
(2)当一直刹车时:输入一直是低电平,单片机在步骤(1)输出低电平350毫秒后保持输出高电平。//(此时LED屏会一直显示“刹车....”)
(3)当松开刹车时:输入高电平,单片机输出低电平350毫秒后恢复输出高电平,然后再次输出低电平350毫秒。//(此时LED屏跳过内置的滚动播放内容后显示“小心尾随”)
(4)再次刹车时和松开刹车时,程序又从以上(1)至(3)循环。
————————————————————————————————————————————————————————————————
是的,硬件我自己会搞,但不会编程,想编来骑自行车。买了个STC15W204S单片机,特别是那个延时不会弄。帮我看下下面自己糊弄的这个程序。
#include <reg52.h>
#define uint unsigned int
sbit key = P3^4;
sbit led = P3^5;
初始输入端口和输出端口电平
/******************主程序**********************/
void main()
{
while(1)
{
if(key=0) //刹车
{
led=0; //输出低电平,PNP三极管开启,LED显示“刹车”
delay(350);
}
if(key=1); //松开手挚
{
led=0; //输出低电平,PNP三极管开启,LED显示“勿靠近”
delay(350);
}
if(key=0) //再次刹车
{
led=0;
delay(350);
led=0; //连续两次输出低电平,连续两次开关PNP三极管,LED跳过闪烁程序后再次显示“刹车”
delay(350);
}
}
}
void delay_1ms(uint 350)
{
uint i,j;
for(i=0;i<350;i++)
for(j=0;j<120;j++);
}
|