OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5244|回复: 8

能问一下大佬们为什么我这个按键控制pwm的程序中按键没用呢?我改了好几天了,刚学...

[复制链接]

4

主题

10

帖子

0

精华

新手上路

积分
31
金钱
31
注册时间
2021-1-7
在线时间
6 小时
发表于 2021-2-19 20:03:05 | 显示全部楼层 |阅读模式
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "pwm.h"
#include "key.h"




int main(void)
{
        u16 led0pwmval=300;
  u8 k;       
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
        delay_init(168);  
        LED_Init();                               
        KEY_Init();
        uart_init(115200);
        TIM14_PWM_Init(900,0);          
   while(1)
        {
                k=KEY_Scan(0);               
            if(k)
{               
  switch(k)
        {
                case KEY0_PRES:
                led0pwmval=led0pwmval-35;
                TIM_SetCompare1(TIM14,led0pwmval);
                   break;
               
                case KEY2_PRES:
                led0pwmval=led0pwmval+35;
                TIM_SetCompare1(TIM14,led0pwmval);
                break;
               
                case KEY1_PRES:
                                        LED1=!LED1;
                                        break;

                        }
                }else delay_ms(10);
        }
        }

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

177

帖子

0

精华

高级会员

Rank: 4

积分
774
金钱
774
注册时间
2019-11-27
在线时间
87 小时
发表于 2021-2-22 09:43:46 | 显示全部楼层
回复 支持 反对

使用道具 举报

3

主题

177

帖子

0

精华

高级会员

Rank: 4

积分
774
金钱
774
注册时间
2019-11-27
在线时间
87 小时
发表于 2021-2-22 09:44:50 | 显示全部楼层
if (k>=0)还可以理解
回复 支持 反对

使用道具 举报

4

主题

10

帖子

0

精华

新手上路

积分
31
金钱
31
注册时间
2021-1-7
在线时间
6 小时
 楼主| 发表于 2021-2-22 11:03:28 | 显示全部楼层
Cheng0717 发表于 2021-2-22 09:44
if (k>=0)还可以理解

加了也不对
回复 支持 反对

使用道具 举报

3

主题

177

帖子

0

精华

高级会员

Rank: 4

积分
774
金钱
774
注册时间
2019-11-27
在线时间
87 小时
发表于 2021-2-22 15:49:27 | 显示全部楼层
不用if语句看看
回复 支持 反对

使用道具 举报

13

主题

250

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2251
金钱
2251
注册时间
2019-8-7
在线时间
364 小时
发表于 2021-2-22 16:29:05 | 显示全部楼层
用DEBUG看看能不能出PWM波先
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
271
金钱
271
注册时间
2018-7-13
在线时间
92 小时
发表于 2021-2-22 16:32:54 | 显示全部楼层
加几个断点,debug调试一下
不会debug就在一些改变pwm比较值的前后加printf提示看看程序跑没跑进去函数
函数跑到了还没反应看看pwm通道选没选对
排除下,找找问题出在哪
回复 支持 反对

使用道具 举报

3

主题

177

帖子

0

精华

高级会员

Rank: 4

积分
774
金钱
774
注册时间
2019-11-27
在线时间
87 小时
发表于 2021-2-23 13:41:42 | 显示全部楼层
你这样看看行不行
20210222095.png
个人CSDN 首页https://blog.csdn.net/qq_41930631
回复 支持 反对

使用道具 举报

3

主题

177

帖子

0

精华

高级会员

Rank: 4

积分
774
金钱
774
注册时间
2019-11-27
在线时间
87 小时
发表于 2021-2-23 13:43:08 | 显示全部楼层
duty 占空比
Fre  改变的频率
个人CSDN 首页https://blog.csdn.net/qq_41930631
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-13 23:42

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表