ARM 裸机编程 PWM篇

本文详细介绍了Exynos4412芯片中脉冲宽度调制(PWM)的功能,包括其五个32位计时器的特性,如何通过预分频器和时钟分频器进行时钟管理,以及PWM输出的实现原理和占空比的调整方法。文章还解释了相关寄存器的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介

PWM
Pulse Width Modulation,脉冲宽度调制

Exynos 4412的PWM
Exynos 4412具有五个32位脉宽调制(PWM)计时器。这些计时器为ARM子系统生成内部中断。

此外,计时器0、1、2和3包括PWM功能,该功能可驱动外部I / O符号 。计时器0中的PWM具有可选的死区发生器功能,以支持大电流设备。定时器4是内部定时器,不带输出引脚。

定时器使用APB-PCLK作为源时钟。定时器0和1共享一个可编程的8位预分频器,可为PCLK提供第一级分频。定时器2、3和4共享不同的8位预分频器每个定时器都有自己的专用时钟分频器,该时钟分频器提供第二级时钟分频(预分频器除以2. 4.8。或16)。

每个定时器都有其32位递减计数器,定时器时钟驱动该计数器。定时器计数缓冲寄存器(TCNTBn)加载递减计数器的初始值。如果递减计数器达到零,它将生成时间中断请求,以通知CPU定时器操作已完成。

如果计时器递减计数器达到零,则相应的TCNTBn的值会自动重新加载到递减计数器中,以开始下一个周期。但是,如果定时器停止运行(例如,通过在定时器运行模式期间将TCONn的定时器使能位清零),则TCNTBn的值不会重新加载到计数器中。

PWM功能使用TCMPBn寄存器的值。如果递减计数器值与定时器控制逻辑中的比较请求器的值匹配,则定时器控制逻辑将更改输出电平。因此,比较寄存器确定PWM输出的开启时间或关闭时间。

每个定时器都是双缓冲区结构,具有TCNTBn和TCMPBn寄存器,以允许定时器参数在周期的中间进行更新。在当前定时器周期完成之前,新值不会生效。

占空比
就是输出的PWM中,高电平保持的时间,与该PWM的时钟周期的时间成正比

在这里插入图片描述

相关寄存器

TCFG0

在这里插入图片描述

TCFG1

在这里插入图片描述

TCNTB

在这里插入图片描述

TCMPB

在这里插入图片描述

TCON

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值