[综合信息] 初始化后修改Pulse值为何无效?

[复制链接]
337|64
突然下起雨 发表于 2026-6-25 19:13 | 显示全部楼层
不建议用while空循环做硬件延时,系统滴答定时器做毫秒/微秒延时,兼容性和时序精度高很多,适合U8G2底层
grfqq325 发表于 2026-6-25 20:53 | 显示全部楼层
移植总结:1.重写匹配开发板的GPIO延时回调;2.校准SPI时钟参数;3.规范复位引脚上电时序;4.精简工程去除冗余文件
xixi2017 发表于 2026-7-2 08:28 | 显示全部楼层
绝大多数驱动(步进电机、PWM 发生器、伺服脉冲、定时器脉冲)存在缓存寄存器 vs 装载寄存器机制
小熊01 发表于 2026-7-2 14:01 | 显示全部楼层
检查Pulse引脚配置,确保设置正确,或尝试重新启动单片机。
明日视界 发表于 2026-7-3 16:30 | 显示全部楼层
结构体和寄存器初始化是初始设置,一旦硬件启动,再改也无用,就像手机开机设置一样,开完机再改也不会生效。
LinkMe 发表于 2026-7-5 15:27 | 显示全部楼层
可能是硬件配置或数据映射没更新,重新映射结构体成员到硬件寄存器。
dreamCar 发表于 2026-7-6 16:54 | 显示全部楼层
脉冲参数在结构体中固定,需通过硬件寄存器调整。
理想阳 发表于 2026-7-8 21:26 | 显示全部楼层
通过库函数更改占空比既规范又稳定。
Moon月 发表于 2026-7-9 12:50 | 显示全部楼层
修改ccr寄存器即可调整PWM高电平时间,就像调节灯光开关时间一样直接简单。
哪吒哪吒 发表于 2026-7-11 07:48 | 显示全部楼层
调整CCR寄存器可控制PWM高电平时长,类似调整灯光亮暗。
小明的同学 发表于 2026-7-12 11:53 | 显示全部楼层
初始化函数覆盖了你的修改(90% 场景根源),Pulse 是只读变量 / 硬件只读寄存器,中断 / 后台线程持续覆盖变量
稳稳の幸福 发表于 2026-7-12 15:11 | 显示全部楼层
修改无效 = 改了内存变量,但底层硬件寄存器没同步更新,或模式锁死、缓存未刷新。
AIsignel 发表于 2026-7-13 10:08 | 显示全部楼层
调整PWM占空比时,直接调用库函数自动修改CCR寄存器值即可。
digit0 发表于 2026-7-13 16:19 | 显示全部楼层
通过修改CC寄存器的值,可以调整PWM信号高电平持续时间,就像调节灯光亮度一样。
未来AI 发表于 2026-7-14 14:13 | 显示全部楼层
硬件直接把脉冲值的地址占用了。你改代码里的数,它根本看不见,电机就不转。这就像它直接盯着那块内存,想让它转,得用指针去操作才行。
AutoMotor 发表于 2026-7-17 13:06 | 显示全部楼层
咱们一开始就把硬件值写进去了,后面只改代码里的结构体变量,不用频繁去操作硬件寄存器,这样写程序既省事又不容易出错!
gejigeji521 发表于 2026-7-17 15:14 | 显示全部楼层
初始化后定时器 / 脉冲通道已启动,未停止直接改参数
21mengnan 发表于 2026-7-19 16:55 | 显示全部楼层
修改 CCR / 占空比寄存器后,未使能重载 / 更新事件
MintMilk 发表于 2026-7-20 07:42 | 显示全部楼层
检查单片机编程,确认寄存器读写无误,确保操作时关闭中断防止模式锁死,同时刷新缓存数据。
线稿xg 发表于 2026-7-21 10:27 | 显示全部楼层
寄存器初始化后不再变动,不依赖于实时数据。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部
0