千家信息网

基于i.MX6UL实现PWM脉冲计数

发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,1.适用范围本文档介绍了基于i.MX6UL实现PWM脉冲计数的基本实现原理。2.客户需求2.1 基本需求基本需求为在i.MX6UL上利用PWM输出固定频率的脉冲波形,并严格控制该频率下的脉冲输出个数。
千家信息网最后更新 2025年12月02日基于i.MX6UL实现PWM脉冲计数

1.适用范围

本文档介绍了基于i.MX6UL实现PWM脉冲计数的基本实现原理。


2.客户需求

2.1 基本需求

基本需求为在i.MX6UL上利用PWM输出固定频率的脉冲波形,并严格控制该频率下的脉冲输出个数。应用程序调用系统接口设置PWM输出的频率和脉冲输出个数,之后PWM启动脉冲输出,当输出指定的脉冲个数后,产生中断提示应用程序。此时应用程序再次设置最新的PWM输出频率和脉冲个数,循环往复工作。

2.2 参数需求

  • PWM频率范围 :最小0Hz,最大25KHz;

  • 计数个数范围:最小0,最大60000。


3.原理简介

由于i.MX6UL的PWM脉冲输出本身不具备计数功能,所以采用了PWM+EPIT结合使用的方式。

EPIT(Enhanced Period Interrupt Timer)为i.MX6UL实现的高精度周期性中断定时器,其和PWM采用的是同一个时钟源。

基本思路为:当应用程序设置PWM计数值时启动PWM输出,将PWM计数值换算为EPIT的定时周期,并启动EPIT开始计时,当定时周期到时产生中断, 在EPIT中断中禁用PWM输出,此时PWM脉冲输出的个数也应该达到理论输出个数。

3.1 用户调用流程

用户调用流程如图 3-1所示。

3-1用户调用流程

3.2 ControlLib库实现

3.2.1 ControlOpen操作

打开PWM设备、EPIT设备,设置PWM设备和EPIT工作的默认频率。将PWM设备与EPIT设备关联,以使EPIT中断中可以禁用对应的PWM脉冲输出。

3.2.2 ControlClose操作

关闭PWM设备、EPIT设备。

3.2.3 ControlSet操作

按照如下公式,根据用户设置的PWM频率和计数数值,换算为EPIT定时的数值。



之后设置PWM工作的频率,启动PWM输出;设置EPIT定时时长,启动EPIT定时。

3.2.4 ControlEventWait操作

调用EPIT设备提供的接口,阻塞等待定时器到期后的中断。

3.3 参数有效范围

3.3.1 PWM频率范围

  • PWM输出的最大频率为50KHz,最小为25Hz。

  • PWM占空比默认为50%,目前暂不支持调整。

3.3.2 计数有效范围

PWM脉冲计数理论最大值为0xFFFFFFFF,但计数值Count实际受以下关系制约:


Freq为PWM实际设置的输出频率,当Freq减小时,Count最大可计数值随之减小。


4.测试结果

当设置50KHz频率,20次输出时,示波器抓到如图 4-1所示波形。

4-1 50KHz,输出20


当设置25KHz频率,33次输出时,示波器抓到如图 4-2所示波形。

4-2 25KHz,输出33


当设置10KHz频率,60次输出时,示波器抓到如图 4-3所示波形。

4-3 10KHz,输出60

输出 频率 脉冲 设备 个数 范围 最大 应用程序 用户 程序 需求 如图 应用 最小 周期 流程 示波器 工作 有效 原理 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 软件开发发展优势 手机软件开发费用是多少 四川大学的网络安全是一流学科吗 昊威网络技术有限责任公司 数据库以后能干什么 新闻系统数据库建表 北京酷划在线网络技术公司 access设计农业数据库 地图软件开发最新官方版 大学班级班会会议记录网络安全 武汉大专软件开发实习工资 成都web前端软件开发哪家好 csgo韩服服务器目前 外文数据库检索作者名字 徐汇区专业软件开发厂家哪个好 公安某部招聘网络安全人才 西二旗数据库公司 成绩差女孩子学软件开发怎么样 支付宝删除人脸数据库 jquery城市数据库 桌面软件开发使用什么技术 谷歌个人软件开发收回 河北服务器机柜维修 一般纳税人用哪个软件开发票 南通软件开发诚信服务 网络安全宣传周主题活动小学 网络技术岗 数据库中用什么表示实体 软件开发自学可以找到工作吗 支付宝删除人脸数据库
0