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

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

3天内不再提示

英创信息技术嵌入式工控主板EM9160的PWM功能使用方法

英创信息技术 来源:英创信息技术 作者:佚名 2019-11-01 09:27 次阅读

英创公司新近推出的嵌入式工控主板EM9160是一款专门面向工业智能设备的高性价比ARM9+WinCE平台,该工控主板不仅配置了常规的标准通讯接口,如以太、串口、USB,而且还配置了当前智能控制设备中常用的SPI、I2C以及脉宽调制输出PWM。本文主要介绍EM9160的PWM在性能及使用上的特色,以帮助客户能快速完成自己的产品开发。

EM9160共提供3路PWM脉宽调制输出通道,其基本性能包括:

1、作为对步进电机等对象的控制脉冲,可以按客户要求以一定的频率、占空比,输出设定数目的脉冲,其最高脉冲频率为每秒600个。

2、支持3路脉冲的同步输出,每路可独立设置脉冲频率、占空比、输出的脉冲数目。

3、支持连续的可调占空比的周期性脉冲波形输出,作为DA输出、LCD亮度控制等应用。最高输出频率1MHz。

硬件上,3个PWM通道的引出管脚分别位于EM9160 CN2的33# 、35#及36#,它们与EM9160的SPI接口复用管脚,具体对应关系如下:

EM9160_CN2管脚

SPI接口

PWM输出

33#

SPI_DIN

PWM通道1

34#

SPI_DOUT

35#

SPI_CLK

PWM通道2

36#

SPI_CS#

PWM通道3


上电启动时所有管脚处于高阻输入状态。对应用程序,并不需要专用的管脚配置函数来选择SPI或PWM,而只需直接打开“PWM1:”文件,相应管脚将自动切换到PWM状态,PWM各通道初始状态为低电平。

注意:(1)EM9160嵌入式工控主板的PWM脉冲输出个数是通过各通道内部硬件中断来控制实现的,因此输出脉冲的频率受到一定的限制,而作为连续脉冲波形输出时就没有这个限制。(2)在上电初始状态PWM各通道处于高阻输出状态,电平上呈现出高电平,这与PWM脉宽调制输出平时为低电平不一致,可通过对各个通道分别接51K上拉电阻和5.1K下拉电阻的方法来解决。

EM9160内部已装载了符合WinCE标准的PWM流式驱动程序(stream driver),应用程序只需要使用与通用串口相似的方法,打开特定文件名“PWM1:”的文件,获得文件句柄,就可通过WinCE的系统API函数DeviceIoControl(…)实现对3个PWM通道的各种操作了,当使用完毕时,直接关闭文件即可。为了方便不熟悉DeviceIoControl函数的客户,EM9160的SDK还在其基础上封装了4个更简单的API函数,应用程序只需包含头文件“pwm_api.h”,在打开文件后,直接调用这几个API函数就可实现对PWM各个通道的控制输出。

EM9160工控主板SDK关于PWM的API函数定义如下:

// 定义PWM参数结构

typedef struct

{

BOOL bSync; // 是否选择PWM三相同步输出,TRUE为同步输出

DWORD dwFreq[3]; // 分别定义PWM三相输出脉冲信号的频率,输出的频率范围为:1 - 600 (Hz)

DWORD dwDuty[3]; // 分别定义PWM三相输出脉冲信号的占空比,其范围为:1 - 99 (%)

DWORD dwNbPulse[3]; // 分别定义PWM三相输出脉冲信号的数目,》 0: 表示输出脉冲的数目,= 0: 连续波形输出

} PWM_STATE;

// 功能描述:设置PWM输出脉冲信号的参数:频率、占空比、脉冲数目等。

// 输入参数 HANDLE hDevice: 运行CreateFile( _T(‘PWM1:’),。..。)函数返回的有效句柄

// PWM_STATE pPWMState: PWM 输出参数

// 返回值 = TRUE: PWM 输出参数设置成功。

// = FALSE: PWM 输出参数设置失败。

BOOL SetupPWM( HANDLE hDevice, PWM_STATE *pPWMState );

// 功能描述:启动PWM 脉冲信号输出。

// 输入参数 HANDLE hDevice: 运行CreateFile( _T(‘PWM1:’),。..。)函数返回的有效句柄

// 返回值 = TRUE: 操作成功。

// = FALSE: 操作失败。

BOOL StartPWM( HANDLE hDevice );

// 功能描述:终止结束PWM脉冲信号输出。

// 输入参数 HANDLE hDevice: 运行CreateFile( _T(‘PWM1:’),。..。)函数返回的有效句柄

// 返回值 = TRUE: 操作成功。

// = FALSE: 操作失败。

BOOL StopPWM( HANDLE hDevice );

// 功能描述:获取PWM 脉冲信号输出自动结束的事件,可通过WaitForSingleObject(。.)来响应该事件。

// 输入参数 HANDLE hDevice: 运行CreateFile( _T(‘PWM1:’),。..。)函数返回的有效句柄

// 返回值 = NULL: 操作失败。

// != NULL: PWM 脉冲信号输出自动结束的事件。

HANDLE GetPWMEvent( HANDLE hDevice );

有关PWM的API函数的具体使用方法可参考EM9160资料光盘中的范例程序。


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

    关注

    7

    文章

    6064

    浏览量

    34613
收藏 人收藏

    评论

    相关推荐

    嵌入式工控主板EM9160PWM功能

    英创公司新近推出的嵌入式工控主板EM9160是一款专门面向工业智能设备的高性价比ARM9+WinCE平台,该工控
    发表于 04-09 15:49 36次下载

    基于EM9460的ETA501使用方法

    本文将以EM9460为例介绍ETA501的使用方法,该方法同样适用于英利的其他Linux嵌入式主板产品,如
    的头像 发表于 10-27 11:09 1673次阅读

    英创信息技术嵌入式主板EM9160精简ISA总线硬件中断的使用方法

     英创公司新近推出的嵌入式主板EM9160是一款专门面向工业智能设备的高性价比ARM9+WinCE平台,该工控主板不仅配置了常规的标准通讯接
    的头像 发表于 11-01 09:42 1322次阅读
    英创<b class='flag-5'>信息技术</b><b class='flag-5'>嵌入式</b><b class='flag-5'>主板</b><b class='flag-5'>EM9160</b>精简ISA总线硬件中断的<b class='flag-5'>使用方法</b>

    英创信息技术工控主板EM9160L的低功耗应用介绍

    EM9160L是一款与英创主力产品EM9160功能完全兼容,同时具有低功耗操作能力的高性能ARM9嵌入式主板产品。
    的头像 发表于 11-14 09:59 1343次阅读

    英创信息技术工控主板的复位管理介绍

     英创公司的工控主板是基于ARM9 CPU、预装正版WinCE的嵌入式主板产品。作为嵌入式应用,系统的可靠启动是其可靠性的重要组成部分。本文
    的头像 发表于 11-14 10:03 1342次阅读
    英创<b class='flag-5'>信息技术</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>的复位管理介绍

    英创信息技术工控主板EM9160对红外通讯用途介绍

    英创公司的EM9160是一款高性价比的工控主板,预装正版WinCE5.0操作系统,具有极强的通讯能力。在电力电表的应用中,红外通讯是一种非常重要的串口通讯方式,在EM9160中,可利用
    的头像 发表于 11-18 09:58 1041次阅读
    英创<b class='flag-5'>信息技术</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b><b class='flag-5'>EM9160</b>对红外通讯用途介绍

    英创信息技术嵌入式Linux主板EM9160支持ISO7816通讯协议介绍

    新的技术需求,我们对嵌入式Linux主板EM9160的串口驱动进行了升级,使其多个串口都可支持ISO7816协议,为客户进行智能终端整机设计时,提供了灵活的选择。
    的头像 发表于 11-18 10:09 1905次阅读
    英创<b class='flag-5'>信息技术</b><b class='flag-5'>嵌入式</b>Linux<b class='flag-5'>主板</b><b class='flag-5'>EM9160</b>支持ISO7816通讯协议介绍

    英创信息技术工业主板EM9160介绍

    ,如I2C总线时钟芯片,I2C总线存贮器等。之前已对I2C总线操作铁电存贮器有过说明,相关文章请参考《工控主板支持铁电存储器的简易方案》。英创公司的EM9160工业主板的高性价比与高可
    的头像 发表于 01-14 11:09 1042次阅读

    英创信息技术嵌入式Linux工控EM9160介绍

    I2C总线是一种2线制的主从通讯协议,主要运用于器件之间的数据通讯,在嵌入式系统中得到非常广泛的应用。作为一款高性价比的嵌入式Linux工控板,EM9160的对I2C总线提供了良好的支
    的头像 发表于 01-14 10:57 1097次阅读
    英创<b class='flag-5'>信息技术</b><b class='flag-5'>嵌入式</b>Linux<b class='flag-5'>工控</b>板<b class='flag-5'>EM9160</b>介绍

    英创信息技术嵌入式Linux工控EM9160介绍

    嵌入式Linux主板EM9160主要应用之一就是可以作为智能终端的核心平台,智能终端总是带有一种显示单元。EM9160作为一种高效、低成本的产品解决方案,专门针对小型的单色LCD显示模
    的头像 发表于 01-14 11:20 1113次阅读

    英创信息技术工控主板EM9160介绍

    在基于工控主板EM9160嵌入式应用中,经常需要与具有SPI接口的芯片或电路单元,进行数据通讯。通常情况下,我们建议采用基于GPIO的SPI通讯协议实现方案,其优点是灵活性,客户可使
    的头像 发表于 01-14 11:16 1124次阅读
    英创<b class='flag-5'>信息技术</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b><b class='flag-5'>EM9160</b>介绍

    英创信息技术主板EM9160硬件介绍

    英创工控主板上的精简ISA总线的主要应用,就是支持客户的专用电路单元的扩展,如数据采集等。在精简ISA总线中还包括了对外部硬件中断的响应输入,关于硬件中断的基本应用方法已在《嵌入式
    的头像 发表于 01-14 11:27 883次阅读

    英创信息技术主板EM9160测频功能的使用介绍

    英创公司的主流产品EM9160是一款功能强大的嵌入式工控主板,其主要应用是作为工业智能设备的核心平台。E
    的头像 发表于 01-15 14:15 1037次阅读

    英创信息技术嵌入式主板支持精确延时操作之二介绍

    也可以进行精确延时的操作。 以EM9160工控主板为例,用其内部的定时器来实现精确延时的功能EM9160内部定时器的输入时钟为50MHz,
    的头像 发表于 01-17 11:08 892次阅读
    英创<b class='flag-5'>信息技术</b><b class='flag-5'>嵌入式</b><b class='flag-5'>主板</b>支持精确延时操作之二介绍

    英创信息技术EM9160工控主板简介

    FLASH存储器 ● 提供标准MicroSD卡插座,即插即用(仅EM9160) ● USB接口支持U盘即插即用 ● 实时时钟RTC,具有掉电保护功能 ● 1路以太网接口 ● 2路USB HOST接口,可直接支持U盘 ● 1路USB Device接口 ● 6路标准UART
    的头像 发表于 02-12 11:06 1112次阅读
    英创<b class='flag-5'>信息技术</b><b class='flag-5'>EM9160</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>简介