用户手册3-1-2-ehrpwm使用方法_W_第1页
用户手册3-1-2-ehrpwm使用方法_W_第2页
用户手册3-1-2-ehrpwm使用方法_W_第3页
用户手册3-1-2-ehrpwm使用方法_W_第4页
用户手册3-1-2-ehrpwm使用方法_W_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Tronlong,广州创龙 您身边的主板定制专家 eHRPWM 使用方法Revision HistoryDraft DateRevision No.Description2018/5/15V1.01.初始版本。 创托 公司官网: 技术论坛:销售邮箱: 技术邮箱:公司总机:020-8998-6280 技术热线:020-3893-97341/11目录1前言32 eHRPWM 使用方法32.1 修改设备树32.2 编译设备树52.3 编辑 pwm0.sh 脚本62.4 运

2、行脚本7更多帮助11公司官网:销售邮箱:公司总机:020-8998-62802/11技术论坛:技术邮箱:技术热线:020-3893-97341 前言脉冲宽度调制子系统(PWMMSS),由eHRPWM、eCAP 和 eQEP 三个模块组成,增eHRPWM 只有驱动输出功能,eCAP 具有输入输出特性,eQEP 具有输入的特性。 增强高分辨率脉宽调制器(eHRPWM)可以在最小的 CPU 开销下产生复杂的脉宽波形,一个完整的 ePWM 模块由两路 PWM 输出组成,分别

3、是 eHRPWMA 和 eHRPWMB。eHRPWM 常用于做输出 PWM,PWM 常用来做电机控制、LCD 背光亮度调节、开关电源等, AM335x 开发板有 3 组 eHRPWM,如下图所示为 AM335x 的资源图。 图 1本例程介绍使用 eHRPWM 的寄存器实现最基本的 PWM 输出功能。 本次编译生成的设备树文件和脚本文件 pwm0.sh 位于光盘资料”Demoehrpwm”下。 2 eHRPWM 使用方法修改设备树2.1(1) 修改设备树文件 am335x-icev2.dts,添加 pinmux 配置。 Host#vi arch/arm/boot/dts/am335x-icev2

4、.dts公司官网:销售邮箱:公司总机:020-8998-62803/11技术论坛:技术邮箱:技术热线:020-3893-9734图 2ehrpwm0_pins_default: ehrpwm0AB_pins_default pinctrl-single,pins = ;AM33XX_IOPAD(0x994,MUX_MODE1);ehrpwm0_pins_sleep: ehrpwm0AB_pins_sleep pinctrl-single,pins = ;AM33XX

5、_IOPAD(0x994, PIN_OUTPUT_PULLDOWN |图 3在设备树文件 am335x-icev2.dts 中添加节点: &ehrpwm0 status = okay;公司官网:销售邮箱:公司总机:020-8998-62804/11技术论坛:技术邮箱:技术热线:020-3893-9734pinctrl-names = default, sleep; pinctrl-0 = ; pinctrl-1 = ;图 4(2) 修改设备树 am33xx.dtsi

6、,如下图,将 ethrpwm0 的父节点的 status 修改为 okay。 图 5编译设备树2.2请参照用户手册Linux 内核编译方法来编译设备树,将编译生成的设备树重命名为 am335x-icev2.dtb 再拷贝到 SD 系统启动卡的”rootfs/boot”分区。 公司官网:销售邮箱:公司总机:020-8998-62805/11技术论坛:技术邮箱:技术热线:020-3893-9734开发板从 SD 系统启动卡启动, 在”/sys/class/pwm/” 目

7、录下面看到生成了一个 pwmchip0 的目录。 Target#ls /sys/class/pwm/图 6编辑 pwm0.sh 脚本2.3在文件系统的”/home/root/”下新建测试脚本 pwm0.sh,添加如下内容: Target#vi pwm0.sh#!/bin/bashecho 0 /sys/class/pwm/pwmchip0/export echo 1 /sys/class/pwm/pwmchip0/exportecho 10000 /sys/class/pwm/pwmchip0/pwm0/period echo 10000 /sys/class/pwm/pwmchip0/pwm

8、1/period echo 5000 /sys/class/pwm/pwmchip0/pwm0/duty_cycle echo 5000 /sys/class/pwm/pwmchip0/pwm1/duty_cycle echo normal /sys/class/pwm/pwmchip0/pwm0/polarity echo normal /sys/class/pwm/pwmchip0/pwm1/polarity echo 1 /sys/class/pwm/pwmchip0/pwm0/enableecho 1 /sys/class/pwm/pwmchip0/pwm1/enable echo S

9、et ehrpwm0 success!pwm0.sh 说明:echo 0 /sys/class/pwm/pwmchip0/export/申请 pwm channel。echo 100000 /sys/class/pwm/pwmchip0/pwm0/period/设置周期(纳秒为单位)。echo 50000 /sys/class/pwm/pwmchip0/pwm0/duty_cycle/设置占空比 5000/10000。echo normal /sys/class/pwm/pwmchip0/pwm0/polarity/设置极性,默认为 normal, 如果想设置反向极性就设置为”inversed

10、”。根据不同内核版本来设置,有些内核版本是可 能设置为1或者0对应就是 normal 和 inversed。 公司官网:销售邮箱:公司总机:020-8998-62806/11技术论坛:技术邮箱:技术热线:020-3893-9734echo 1 /sys/class/pwm/pwmchip0/pwm0/enable/使能 pwm。 图 7编辑完后保存退出。 2.4 运行脚本执行如下指令赋予脚本权限再运行脚本: Target#chmod +x pwm0.shTarget

11、#./pwm0.sh图 8脚本运行后会打印”Set ehrpwm0 success!”,使用示波器分别测如下 2 个拓展口的信号, 可以观察到占空比为 50%的方波。 公司官网: 技术论坛:销售邮箱: 技术邮箱:公司总机:020-8998-62807/11技术热线:020-3893-9734图 9注意:EHRPWM0A 和 EHRPWM0B 同时输出时需要使用同一个周期值。因为它们使用同一个寄存器来处理两个通道的周期设置。 测试结果如下:如上 pwm0.sh 脚本的

12、配置为 10000ns 的时候,测 EHRPWM0A 和 EHRPWM0B 的输出频率分别为 99.9009KHz 和 99.9043KHz(理论值为 1/(10000/1000000000)=100KHz) 公司官网:销售邮箱:公司总机:020-8998-62808/11技术论坛:技术邮箱:技术热线:020-3893-9734图 10将设置周期为 1000ns 的时候,输出频率分别为 990.1021KHz 和 990.1320KHz(理论值为 1/(1000/1

13、000000000)=1MHz) 公司官网:销售邮箱:公司总机:020-8998-62809/11技术论坛:技术邮箱:技术热线:020-3893-9734 Tronlong lJt; ZDS2022 Digital OscilloscopeE AGLE VI句作2 Chann 叫 200MHz 1GS匐 I几图 11创托 广州创龙 您身边的主仁- 公司官网: 技术论坛:销售邮箱: 技术邮箱:公司总机:020-8998-6280 技术热线:020-3893-973410/11更多帮助销售邮箱: 技术邮箱: 创龙总机:020-8998-6280技术热

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论