资料介绍
51单片机软模PWM误差率之研究
51单片机软模PWM误差率之研究--基于Keil、Proteus仿真调试
普通型51单片机一般不集成PWM硬件发生器,要想实现PWM输出必须采用软件模拟的
方式。根据具体应用的不同,PWM波形频率也高低不一;就直流电机控制而言,PWM波的
频率一般建议在10kHz~40kHz,20kHz为典型值,输出频率过低,则输出电流不够平缓,
电机运行不平稳。
软模PWM输出一般有两种方式:利用定时器0控制PWM频率输出,结合定时器1控制占空比
,这是其一;第二种方式,仅使用一个定时器,工作于16bit手工装载模式,同时控制输
出频率和占空比,这种方式不占用太多资源,而且实现起来也不失其灵活性,俺本人就
建议采用这样方式,建议剔除第一种方式。本文的研究也是基于方式二展开的。
网络上常见MCS-
51软模输出PWM波的文章,而至于对这种方式实现的可行性或者说局限性,却无一例外的
被小觑了。本文就51单片机模拟PWM波输出的劣根性进行了探讨,不正之处,欢迎大家提
点。
1、产生PWM波的子模块例程(PWM.C):
#include "Includes.h" //文件包含
/***************************************************************************
****
*** 函 数 名: extern void PWM_Init(void)
*** 功能描述: PWM参数初始化;
*** 全局变量: NO !
*** 输 入: NO !
*** 输 出: NO !
*** 创 建 人:huangtiexiong 日期:2006-11-28
*** 修 改 人: 日期:2006-