No.59812 作者:emtronix 邮件:web@emtronix.com ID:116336 登陆:11次 文章数:54篇 最后登陆IP:222.212.37.103 最后登陆:2010/11/10 2:23:27 注册:2008/9/17 22:22:59 财富:418 发帖时间:2009/3/19 10:33:40 发贴者IP:218.88.33.123 标题:emtronix:嵌入式工控主板EM9160的PWM功能使用方法 -- 英创嵌入式主板制造 摘要:No.59812嵌入式工控主板EM9160的PWM功能使用方法 -- 英创嵌入式主板制造 文章来源:http://www.emtronix.com/article/article2008247.html 英创公司新近推出的嵌入式工控主板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参数结构 ......
>>返回讨论的主题
|