0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

英创信息技术ESM335x输出脉冲计数介绍

英创信息技术 来源:英创信息技术 作者:英创信息技术 2020-02-04 10:30 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

ESM335x的PWM1和PWM2除了可用于产生标准的PWM信号外还支持输出脉冲计数功能,输出脉冲计数的工作原理是驱动程序每输出一个PWM波就产生一个中断并计数,当计数达到用户设定的脉冲个数后,驱动程序自动停止PWM输出,由于系统响应中断有一定的延时,所以驱动程序对输出脉冲的最高频率限制在5KHz。

应用程序通过打开PWM设备("PWM1:"或"PWM2:")使用脉冲计数功能,下面是示例代码:

#include "stdafx.h"

#include "bsp_drivers.h"

int _tmain(int argc, _TCHAR* argv[])

{

HANDLEhPWM;

PWM_INFO pwm_info;

DWORDdwBytes;

BOOL bRc;

hPWM = CreateFile( TEXT("PWM1:"),

GENERIC_READ|GENERIC_WRITE,

FILE_SHARE_READ|FILE_SHARE_WRITE,

NULL,

OPEN_EXISTING,

FILE_FLAG_RANDOM_ACCESS,

NULL);

pwm_info.dwNum = 0;//PWM输出模式

pwm_info.dwFreq = 100000;//频率范围1Hz~50MHz

pwm_info.dwDuty = 500;//占空比50%, 单位0.1%

pwm_info.dwPol = 1;//极性

bRc = WriteFile( hPWM, &pwm_info, sizeof( PWM_INFO), &dwBytes, NULL );

pwm_info.dwFreq = 0;//频率参数为0,停止PWM输出

bRc = WriteFile( hPWM, &pwm_info, sizeof( PWM_INFO), &dwBytes, NULL );

pwm_info.dwNum = 3;//PWM脉冲计数输出模式

pwm_info.dwFreq = 5000;//频率范围1Hz~5KHz

pwm_info.dwDuty = 500;//占空比50%, 单位0.1%

pwm_info.dwPol = 1;//极性,无输出时IO保持为高电平

//脉冲输出完成或超时后WriteFile函数返回, dwBytes返回实际输出的脉冲个数

bRc = WriteFile( hPWM, &pwm_info, sizeof( PWM_INFO), &dwBytes, NULL );

CloseHandle( hPWM );

return 0;

}

上面代码中的pwm_info用于设置PWM参数,其定义如下:

typedef struct

{

/*PWM频率,单位:Hz,PWM模式输出频率范围1Hz~50MHz,脉冲计数模式频率范围1Hz~5KHz

= 0: 停止PWM输出*/

DWORDdwFreq;

DWORDdwDuty;/*占空比, 单位:0.1%, 范围:0 - 1000*/

DWORD dwPol;/*PWM极性, =0:高电平有效, =1:低电平有效*/

DWORDdwNum;/*输出脉冲个数, =0:连续的PWM输出*/

} PWM_INFO, *PPWM_INFO;

当参数设置dwFreq=5000, dwDuty=500, dwPol=1, dwNum=3时,输出的波形如下:

只有当PWM脉冲信号输出时,其对应的IO才会被驱动为高电平或低电平,其余时间PWM引脚为高阻输入状态,由于ESM335x主板上GPIO上拉电阻的作用,在没有脉冲输出时,PWM引脚为上拉输入状态(高电平)。如果实际使用,时希望PWM平时保持为低电平,则需要在PWM信号上增加反向器,比如增加一级非门。

在PWM引脚上增加1K欧的下拉电阻,同时将设置dwPol=0,也可以保证PWM引脚在没有输出时保持为低电平,下图是在PWM引脚上增加了下拉电阻,同时参数设置为dwFreq=5000, dwDuty=500, dwPol=0, dwNum=3时输出的波形:

利用反向电路或增加下拉电阻,这两种方法都可以保证PWM信号在ESM335x上电启动过程中和没有脉冲输出时保持为低电平。

PWM脉冲通常用来控制步进电机,脉冲频率决定电机转速,脉冲个数控制电机的角位移。步进电机在启动过程中,需要控制脉冲从一个较低的频率逐渐增加到电机正常工作时的频率,电机在停止时也有一个相应的减速过程。在使用ESM335x的PWM驱动步进电机时,可以多次调用WriteFile函数,然后每次修改PWM脉冲频率来实现步进电机的加速和减速过程。需要注意的是在即便应用程序连续不断的调用WriteFile函数,在每次调用之间都会有几十到几百微秒不等的延时。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6107

    浏览量

    36947
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    龙芯中科助力2025教育信息技术应用创新大赛成功举办

    2025年11月13日-15日,由中国教育技术协会主办、浙江大学与中国教育技术协会网络安全专业委员会联合承办,中国电子工业标准化技术协会信息技术应用创新工作委员会、浙江高校信
    的头像 发表于 11-21 16:23 592次阅读

    定时器实现步进电机的正反脉冲计

    的外部时钟模式 B 和挂起模式,实现步进电机的正反脉冲计数。 注:本应用笔记对应的代码是基于雅特力提供的V2.x.x 板级支持包(BSP)而开发,对于其他版本BSP,需要注意使用上的区别。 支持
    发表于 09-10 16:40

    由倍讯科技研制的CCLinkIE转ModbusTCP网关,可达成与脉冲计数器的连接

    本研究案例展示三菱可编程逻辑控制器(PLC)在工业自动化控制中的实际应用。应用时,将三菱PLC与脉冲计数器相连,实现控制与数据采集功能。采用CCLinkIE到ModbusTCP的网关转换方式,解决不
    的头像 发表于 08-26 16:58 481次阅读
    由倍讯科技研制的CCLinkIE转ModbusTCP网关,可达成与<b class='flag-5'>脉冲计数</b>器的连接

    佛瑞亚如何通过信息技术推动业务增长

    在数字化、信息化的浪潮下,信息技术已经不仅是后台工具,更成为驱动企业发展的关键力量。本期Women Inspiring Mobility,我们采访了佛瑞亚中国区信息技术总监马瑛,了解她和团队如何将
    的头像 发表于 07-29 14:00 724次阅读

    飞腾主板为信产业发展提高硬实力

    信息技术飞速发展的当下,信产业已成为我国实现科技自立自强、保障国家信息安全的关键领域。信,即信息技术应用创新,其核心目标是实现
    的头像 发表于 07-22 18:20 554次阅读

    DEKRA德凯成为沙特通信和信息技术设备技术法规认证机构

    近日,DEKRA德凯成功获得沙特标准、计量和质量组织(SASO)认可,正式成为沙特通信和信息技术设备技术法规(Technical Regulation for Communications
    的头像 发表于 07-15 14:27 722次阅读

    开疆智能CCLinkIE转ModbusTCP网关连接脉冲计数器配置案例

    本案例是三菱PLC通过CCLinkIE转ModbusTCP网关连接脉冲计数器的配置案例,具体配置如下。 配置过程: 首先设置从站通讯参数 主要设置IP地址,工作模式以及端口号(Modbus默认502
    的头像 发表于 06-25 17:49 367次阅读
    开疆智能CCLinkIE转ModbusTCP网关连接<b class='flag-5'>脉冲计数</b>器配置案例

    经过光耦之后,脉冲计数功能为什么不能实现?

    设置PA0为普通定时器,复用推挽输出,但是发现信号经过光耦之后高电平不到2V,不能进行脉冲计数,如果设置成中断输入,高电平是3.3V,请问这是啥原因?现有的电路能否实现脉冲计数功能?
    发表于 06-17 06:08

    科普|信是什么?一文读懂“信息技术应用创新”战略

    什么是信?信,即“信息技术应用创新”,是国家推动IT系统自主可控、安全可控的重要战略工程。它不仅是技术层面的创新,更承载着保障国家网络安全、推动产业升级和实现数字主权的重任。简单来
    的头像 发表于 06-13 10:06 6285次阅读
    科普|信<b class='flag-5'>创</b>是什么?一文读懂“<b class='flag-5'>信息技术</b>应用创新”战略

    增量式编码器原理介绍

    增量式编码器是一种将位移信息转换成周期性电信号,再将电信号转换成脉冲计数的装置。
    的头像 发表于 03-03 10:21 2029次阅读
    增量式编码器原理<b class='flag-5'>介绍</b>

    龙芯中科荣获2024年度信息技术应用创新工作委员会卓越贡献成员单位

    近日,中国电子工业标准化技术协会信息技术应用创新工作委员会(以下简称“信工委会”)在北京召开2024年度工作总结座谈会暨信“大比武”总结大会。中国工程院院士、信
    的头像 发表于 01-23 10:50 981次阅读

    芯盛智能荣获2024年信息技术应用创新工作委员会卓越贡献成员单位

    日前,中国电子工业标准化技术协会信息技术应用创新工作委员会(以下简称 “信工委会”)2024 年度总结座谈会于北京隆重举行。此次会议对在信工作中作出突出贡献的成员单位予以表彰。江苏
    的头像 发表于 01-20 09:56 927次阅读

    飞腾助力首届教育信息技术应用创新大赛圆满落幕

    近日,由中国教育技术协会主办,教育部教育管理信息中心教育信实验室、公安部第三研究所、中国电子工业标准化技术协会信工委会支持,北京航空航天
    的头像 发表于 12-24 09:57 768次阅读

    有方科技参编的信息技术团体标准发布

    近日,有方科技参编的《信息技术产品供应链成熟度 共性指标 第1部分:企业背景评价》《信息技术产品供应链成熟度 共性指标 第2部分:技术掌控评价》《信息技术产品供应链成熟度 共性指标 第
    的头像 发表于 12-23 10:44 899次阅读

    龙芯中科助力2024首届教育信息技术应用创新大赛成功举办

    近日,2024首届教育信息技术应用创新大赛在北京航空航天大学成功举办。本次大赛由中国教育技术协会主办,教育信实验室、公安部第三研究所、中国电子工业标准化技术协会信
    的头像 发表于 12-19 17:02 818次阅读