找回密码
 立即注册
查看: 531|回复: 2

冲哥视频第34集PWM配置代码可精简吗?

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-02 06:28:49

24

主题

108

回帖

452

积分

中级会员

积分
452
发表于 2024-2-28 14:56:42 | 显示全部楼层 |阅读模式
void PWMA_Init(void) //PWMA的初始化
{
//1.时钟源选择  这里不改,默认22.1184mhz
//2.时基单元选择
PWMA_PSCRH = 0; //1分频
PWMA_PSCRL = 0;
PWMA_ARRH  = (u8)(PWM_ARR>>8);
PWMA_ARRL  = (u8)(PWM_ARR);
PWMA_CCR1H  = (u8)(PWM_CCR>>8);
PWMA_CCR1L  = (u8)(PWM_CCR);
//3.输入输出的引脚配置
PWMA_ENO = 0X00; //使能PWM1n通道输出
PWMA_ENO |= 0X02;
PWMA_PS =0x00; //选择PWM1P60引脚输出
PWMA_PS |= (2<<0);
//4.输入输出模式设置
PWMA_CCER1 = 0X00;
PWMA_CCMR1 = 0X68; //pwm模式1 配置置位输出
PWMA_CCER1 = 0x04; //开启输出比较通道
PWMA_BKR = 0X80; //使能主输出
PWMA_CR1 |= 0X01; //启动计数器
}
PWMA_ENO = 0X00;
PWMA_ENO |= 0X02;
直接写成PWMA_ENO = 0X02; 行不行呢?
下面一句PWMA_CCER1 = 0X00;直接删除行不行?
STC32G的芯片还没到货,暂时不能实验

回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:135
  • 最近打卡:2024-12-25 10:15:05

47

主题

1350

回帖

8058

积分

荣誉版主

冲哥视频教程和各种开源资料QQ交流群884047237,可群

积分
8058
QQ
发表于 2024-2-28 16:11:02 | 显示全部楼层
1.直接写成PWMA_ENO = 0X02; 行不行呢?
--- 可以这么写,通道多了的话这么写容易搞混~

2.下面一句PWMA_CCER1 = 0X00;直接删除行不行?
---不能,原因见下图
截图202402281610516105.jpg
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-02 06:28:49

24

主题

108

回帖

452

积分

中级会员

积分
452
发表于 2024-2-28 16:30:10 | 显示全部楼层
哦 谢谢解答
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 06:32 , Processed in 0.107305 second(s), 61 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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