加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
### PWM的配置方法

### 预分频器的作用

预分频器(Prescaler)在配置PWM时的作用是减少进入定时器计数器的时钟频率。由于微控制器的系统时钟通常很高(例如72MHz),直接用这么高的频率作为定时器的时钟可能不适合所有应用,因为这会限制定时器的最大计数范围,从而限制了PWM信号的频率。通过设置预分频器的值,可以将系统时钟分频,得到一个较低但稳定的时钟频率,这样就可以生成更长周期的PWM信号,适用于需要低速PWM的场合。


### 自动重装载寄存器的作用
自动重装载寄存器(Automatic Reload Register, ARR)在配置PWM时决定了定时器计数器的最大计数值。当计数器从0计数到ARR的值时,它会自动重新加载ARR的值,继续计数。这个过程形成了PWM信号的周期。通过调整ARR的值,可以改变PWM信号的周期,即信号高低电平交替出现的时间间隔。



### 预分频器和自动重装载寄存器的组合效果
预分频器和自动重装载寄存器共同工作,决定了PWM信号的频率和周期。具体来说,系统时钟经过预分频器分频后,到达定时器计数器的频率会降低,计数器从0计数到ARR设定的值所需的时间就是PWM信号的一个周期。在这个周期内,通过设置捕获/比较寄存器(CCR)的值,可以进一步决定PWM信号的高电平持续时间,从而改变占空比。


### 简单比喻
想象一下,预分频器像是一个减速带,它减慢了进入定时器的时钟速度。自动重装载寄存器则像是一个设定好的终点线,定时器计数器每次跑到这个终点都会被重置,开始新的一轮计数。PWM信号的高低电平就像是赛车在赛道上的位置,通过调整终点线的位置(ARR值)和减速带的大小(Prescaler值),可以控制赛车在赛道上的停留时间,从而改变赛车的平均速度,这就好比是调整PWM信号的占空比和频率。



裸机版本很多功能没能实现,操作系统版本的功能基本都能实现,这两个项目以学习为主,后续实际的项目我会放在其他仓库

空文件

简介

能源综合综合实验期末作品案例,代码不是很稳定,里面有RTC时钟和温度传感器的库文件,以及超声波传感器,有需要的可以用来做代码移植,主用于学习,实际项目会复杂的多 展开 收起
C 等 2 种语言
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化