BeagleBone Black板第十一课: PWM子系统简介
2014-09-10 10:22
190 查看
BBB板第十一课: PWM子系统简介
查看多达4000多页的AM335X 英文手册,找到其中的15章节PWMSS,我英文学不好,翻译其中的意思真难,建议高手帮翻译一下那4000多页的手册贡献给大家。
在这里简单说下几个专业名词:
PWMMSS全称Pulse-Width Modulation Subsystem 脉冲宽度调制子系统,由eHRPWM、eCAP和eQEP三个模块组成,简单的说就是三种工作模式。
下面的图为PWM子系统图(来自4000多页的手册)
1、eHRPWM全称Enhanced High Resolution PulseWidth Modulator 增强型高分辨率脉冲宽度调制,只有驱动输出功能
2、eCAP全称Enhanced Capture 增强型捕捉,能够在用户空间通过SYSFS接口进行控制,具有输入输出特性,有专用的捕捉输入引脚,通过设置GPIO的模式为eCAP0_in_PWM0_out,具体哪些引脚要查询引脚功能图,同时具有四个32位的时基计数器(估计就是那TIMER4-7我们前面实验只是在eHRPWM模式下,所以用不上)
A、组成4模块eCAP0-3
B、32bit 时间基准寄存器
C、4个32bit时间标志寄存器
D、2bit 计数器使模块在一个循环内,可连续捕捉4个事件,每个捕捉事件的边沿脉冲可以设置为上升沿或下降沿。
E、 利用2bit 计数器可以使模块工作在one-shot状态,既捕捉完4个事件后停止捕捉,或者在连续状态即循环捕捉,循环事件数量可以设置1~4。一个循环最多可以记录4个捕捉事件的发生,这四个捕捉事件可以设置为上升沿捕捉或者下降沿捕捉,每个捕捉时间加载到
CAP1~4寄存器,以求取脉冲的周期和占空比。
F、 相关事件可以触发中断,如果相应中断使能的话。
G、 当模块不做捕捉模块使用时,可以做APWM模块使用,即多出了2个PWM引脚。
但是只能输出不对称PWM,即APWM,同时与EPWM模块间连接有同步信号,可以进行移相PWM输出。
3、eQEP 全称Enhanced Quadrature Encoder Pulse 增强型正交编码脉冲,也具有输入的特性,设置GPIO引脚模式为eQEP2A_in或eQEP2B_in
4、参考手册里面还讲到一些控制实例,比如控制三相电机这些,建议大家慢慢研究。
查看多达4000多页的AM335X 英文手册,找到其中的15章节PWMSS,我英文学不好,翻译其中的意思真难,建议高手帮翻译一下那4000多页的手册贡献给大家。
在这里简单说下几个专业名词:
PWMMSS全称Pulse-Width Modulation Subsystem 脉冲宽度调制子系统,由eHRPWM、eCAP和eQEP三个模块组成,简单的说就是三种工作模式。
下面的图为PWM子系统图(来自4000多页的手册)
1、eHRPWM全称Enhanced High Resolution PulseWidth Modulator 增强型高分辨率脉冲宽度调制,只有驱动输出功能
2、eCAP全称Enhanced Capture 增强型捕捉,能够在用户空间通过SYSFS接口进行控制,具有输入输出特性,有专用的捕捉输入引脚,通过设置GPIO的模式为eCAP0_in_PWM0_out,具体哪些引脚要查询引脚功能图,同时具有四个32位的时基计数器(估计就是那TIMER4-7我们前面实验只是在eHRPWM模式下,所以用不上)
A、组成4模块eCAP0-3
B、32bit 时间基准寄存器
C、4个32bit时间标志寄存器
D、2bit 计数器使模块在一个循环内,可连续捕捉4个事件,每个捕捉事件的边沿脉冲可以设置为上升沿或下降沿。
E、 利用2bit 计数器可以使模块工作在one-shot状态,既捕捉完4个事件后停止捕捉,或者在连续状态即循环捕捉,循环事件数量可以设置1~4。一个循环最多可以记录4个捕捉事件的发生,这四个捕捉事件可以设置为上升沿捕捉或者下降沿捕捉,每个捕捉时间加载到
CAP1~4寄存器,以求取脉冲的周期和占空比。
F、 相关事件可以触发中断,如果相应中断使能的话。
G、 当模块不做捕捉模块使用时,可以做APWM模块使用,即多出了2个PWM引脚。
但是只能输出不对称PWM,即APWM,同时与EPWM模块间连接有同步信号,可以进行移相PWM输出。
引脚编号 | 工作模式 | 名 称 | 引脚编号 | 工作模式 | 名 称 |
P9_28 | Mode4 | eCAP2_in/PWM2_out | P9_42 | Mode0 | eCAP0_in/PWM0_out |
3、eQEP 全称Enhanced Quadrature Encoder Pulse 增强型正交编码脉冲,也具有输入的特性,设置GPIO引脚模式为eQEP2A_in或eQEP2B_in
4、参考手册里面还讲到一些控制实例,比如控制三相电机这些,建议大家慢慢研究。
相关文章推荐
- BeagleBone Black板第十课:测试PWM功能
- BeagleBone Black板第八课:建立Eclipse编程环境
- ssh简介和Windows端利用putty让beaglebone black通过USB连接外网
- 结构简介:input子系统
- 【十八掌●武功篇】第十一掌:HUE简介、基本安装配置
- Beaglebone Black(8)运用Python来进行控制IO,ADC,PWM
- Linux 文件系统剖析: Linux SCSI 子系统剖析 分层 SCSI 架构简介
- BeagleBone Black板第五课:Shell脚本编程实验
- 协议[I2C]_I2C子系统之at24c02简介
- Linux 文件系统剖析: Linux SCSI 子系统剖析 分层 SCSI 架构简介
- BeagleBone Black板第六课:C++编程控制GPIO基础
- BeagleBoardPWM用python做PWM
- 在Beaglebone Black板上使用Yocto移植Qt5
- 基于BBB的4轮移动轮式机器人系统设计与实现(三)--BeagleBone Black PWM 驱动
- PWM简介
- SylixOS日志子系统简介
- soc camera 子系统简介
- BeagleBone Black板第七课:GPIO编程控制
- Linux内核分析(四)----进程管理|网络子系统|虚拟文件系统|驱动简介
- STM32 PWM简介及呼吸灯实验