永发信息网

PWM信号51单片机信号

答案:2  悬赏:50  手机版
解决时间 2021-02-27 04:10
  • 提问者网友:聂風
  • 2021-02-26 04:32
#include
sbit Port=P2^1; //定义电机接口
sbit scankey1=P2^2; //定义按键输入口
sbit scankey2=P2^3; //定义按键输入口

void delay1ms(unsigned char ); //延时函数声明

void count_30()
{
Port=0;
delay1ms(6);
Port=1;
delay1ms(14);
}
void count_75()
{
Port=0;
delay1ms(15);
Port=1;
delay1ms(5);
}


int main(void)
{
bit c=0,d=0;
while(1)
{
if(scankey1==0)
{
delay1ms(10);
if(scankey1==1)
{
c=~c;
}
}
if(c==1)
{
count_30();
}


if(scankey2==0)
{
delay1ms(10);
if(scankey2==1)
{
d=~d;
}
}
if(d==1)
{
count_75();
}

}
}

void delay1ms(unsigned char x)
{
unsigned char i,j;
for(i=0;i for(j=0;j<120;j++);
}

为什么不按一下scankey1,count_30启动,在按一下停止,之后就得按很多次才启动或者关闭,scankey2也是一样
最佳答案
  • 五星知识达人网友:佘樂
  • 2021-02-26 04:38
if(scankey1==0)
{
delay1ms(10);
if(scankey1==0)// 原本if(scankey1==1)
全部回答
  • 1楼网友:大漠
  • 2021-02-26 04:55
你的问题 按键三只 用中断功能 实现 加速 减速 停止 方法是用pwm来实现 得到按钮的中断信息 改变 pwm 占空比 就是改变定时器就可以实现的
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯