找回密码
 立即注册
查看: 1182|回复: 4

各位大佬好,关于8H1K调整占空比的问题,谢谢各位大佬了

[复制链接]
  • 打卡等级:偶尔看看I
  • 打卡总天数:10
  • 最近打卡:2025-03-20 11:16:04
已绑定手机

6

主题

15

回帖

110

积分

注册会员

积分
110
发表于 2024-12-22 17:46:14 | 显示全部楼层 |阅读模式

我刚刚开始学习 8H系列单片机 ,看手册看的晕头转向 尝试自己写了这么一段代码 意图输出一个简单的PWM。 目前的状况是 可以在预设的3个引脚上输出3路PWMA。但是想输出第四路 既P1.6的 PWM4P 却无法输出(已检查P.16口正常工作 )。 并且 在程序中 直接写入3个寄存器尝试更改PWM频率 以此改变 RGB灯的颜色 失败。 请各位大佬帮忙看看问题到底出在哪里 谢谢了。

写入寄存器操作如下:

PWMA_CCR1=1200;
PWMA_CCR2=0;
PWMA_CCR3=0;

			delay_ms(5000);

			PWMA_CCR1=0;
			PWMA_CCR2=0;
			PWMA_CCR3=0;

PWM设置代码如下

// PWM初始化
void PWMA_config(void) {
// 扩展寄存器访问使能
P_SW2 |= 0x80;

// 配置全局参数
PWMA_PSCR = 0x0000;          // 预分频寄存器, 分频 Fck_cnt = Fck_psc/(PSCR[15:0]+1)
PWMA_DTR  = 24;              // 死区时间配置
PWMA_ARRH = HIGHBYTE(2400);  // 自动重装载寄存器, 控制PWM周期
PWMA_ARRL = LOWBYTE(2400);

// 清除状态寄存器
PWMA_SR1 = 0;
PWMA_SR2 = 0;

// 初始化通道配置
PWMA_CCMR1 = 0x68; // 设置通道1和通道2为PWM模式,并开启预装载功能
PWMA_CCMR2 = 0x68; // 设置通道3为PWM模式,并开启预装载功能
PWMA_CCMR3 = 0x68; // 设置通道4为PWM模式,并开启预装载功能

// 设置初始占空比
PWMA_CCR1 = 0;  // PWM1 占空比
PWMA_CCR2 = 0;  // PWM2 占空比
PWMA_CCR3 = 0; // PWM3 占空比
PWMA_CCR4 = 0; // PWM4 占空比

// 使能通道输出并设置极性(高电平有效)
PWMA_CCER1 = 0x55; // 使能通道1和通道2输出,高电平有效
PWMA_CCER2 = 0x55; // 使能通道3和通道4输出,高电平有效

// 设置PWM输出引脚选择
PWMA_PS = 0x00; // 默认引脚配置,选择P1.x引脚

// 使能PWM输出引脚
PWMA_ENO |= 0x15; // 仅仅使能 P1.0 P1.2 P1.4 PWMP输出

// 使能主输出
PWMA_BKR = 0x80;

// 开始计时
PWMA_CR1 |= 0x81; // 使能计数器,允许自动重装载寄存器缓冲,边沿对齐模式,向上计数

// 产生一次更新事件
PWMA_EGR = 0x01;

}

回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:423
  • 最近打卡:2025-05-01 07:10:25
已绑定手机

76

主题

4833

回帖

8343

积分

超级版主

DebugLab

积分
8343
发表于 2024-12-22 19:22:53 | 显示全部楼层

ENO4P没开呀
截图202412221922172679.jpg

截图202412221922496442.jpg

DebugLab
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:10
  • 最近打卡:2025-03-20 11:16:04
已绑定手机

6

主题

15

回帖

110

积分

注册会员

积分
110
发表于 2024-12-22 20:14:20 | 显示全部楼层

谢谢大佬   在这段代码中 以前这个寄存器是设置4路P引脚输出的,前三路正常输出,但是第四路不行,,后来我后来才改成 这样把1.6 1.7 屏蔽掉了。。。。  现在是 PWM的占空比 在程序里怎么都改不了 很奇怪,请问大佬知道这是为什么吗
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-05-02 10:07:51

73

主题

5883

回帖

1万

积分

超级版主

积分
12079
发表于 2024-12-22 23:31:12 | 显示全部楼层
请下载附件,解压缩,直接下载HEX文件测试。

STC8H系列-高级PWM范例程序下载,2024/1/3 更新
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=1779
(出处: 国芯技术交流网站)
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:10
  • 最近打卡:2025-03-20 11:16:04
已绑定手机

6

主题

15

回帖

110

积分

注册会员

积分
110
发表于 2025-1-9 19:46:30 | 显示全部楼层
谢谢梁工  ,依旧只能输出3路PWM  。3路也够用了, 以后慢慢研究吧。
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 13:22 , Processed in 0.128160 second(s), 74 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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