|
本帖最后由 一束光的旅程 于 2018-5-7 13:30 编辑
机械人一个,现在自学单片机。自己画了一个板子的原理图。想实现LED灯闪烁次数的调节。按键KS按下,灯开始闪烁,按动TJ,闪烁次数增加。
先编了一个小程序,但是不能实现闪烁次数的增加。
请各位大神指点一下。谢谢啦
程序如下:
#include <reg51.h>
#include <stdio.h>
sbit KS=P0^0;
sbit PWM=P1^0;
sbit TJ=P3^2;
#define uint unsigned int
uint a;
void delays_ms(uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=115;j>0;j--);
}
void main(void)
{
uint x;
P0=0xFF;
P1=0x00;
if(TJ==0)
{
delays_ms(20);
if(TJ==0);
{
a++;
}
while(!TJ);
}
if(KS==0)
{
delays_ms(20);
if(KS==0)
{
for(x=a;x>0;x--)
{
delays_ms(200);
PWM=1;
delays_ms(200);
PWM=0;
}
while(!KS);
}
}
}
|
|