标题: 求助大佬,51单片机用按键控制输出pwm波 [打印本页]

作者: 天天学习真好    时间: 2020-4-4 09:28
标题: 求助大佬,51单片机用按键控制输出pwm波
构想是四个按键控制四个输入口。其中俩个按键分别控制两档不同的频宽,而且这两个按键不能同时被按下。另外俩个按键控制俩档不同的时间间隔,这俩个按键也不能同时按下。但是控制频宽和控制时间间隔的按键之间可以任意组合。 接触单片机不久,希望大家给点提示。

作者: wulin    时间: 2020-4-4 21:54
给你一个按键思路
void keyscan()       
{
        static bit sign=0;        //按键自锁标志
        static unsigned char count=0;//消抖计数变量       
        num=P1&0x0f;//P1.0~P1.3为4个按键
        if(num!=0x0f)
        {
                if(++count=250&&sign==0)
                {
                        count=1;
                        switch(num)
                        {
                                case 0x0e: /*任务1*/ break;//单键
                                case 0x0d: /*任务2*/ break;//单键
                                case 0x0b: /*任务3*/ break;//单键
                                case 0x07: /*任务4*/ break;//单键
                                case 0x05: /*任务5*/ break;//组合键
                                case 0x0a: /*任务6*/ break;//组合键
                                default: break;
                        }
                }
                else
                {
                        count=0;
                        count=0;
                }
        }
}
作者: 芝士平天下    时间: 2020-4-6 21:42
wulin 发表于 2020-4-4 21:54
给你一个按键思路
void keyscan()       
{

为何else那里写了2次count = 0?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1