PWM的单片机产生

发布者:变形金刚最新更新时间:2015-04-29 来源: 51hei关键字:PWM  单片机 手机看文章 扫描二维码
随时随地手机看文章
        在上次说的直流电机调速的项目中,用了S52单片机的T2定时器产生PWM波信号,用于控制直流电机的转速,虽然电机的平均速度与占空比不是严格的线性关系,但是在调节占空比可以明显的看出电机转速发生了改变,也算是满足了课题的要求。下面复习一下PWM的知识吧。

        PWM—脉冲宽度调制(Pulse Width Modulation),是一种周期一定而高低电平可调的方波信号。当输出脉冲的频率一定时,输出脉冲的占空比越大,相对应的输出有效电压越大。PWM可以应用在许多方面,如电机调速、温度控制、压力控制等。

图1 PWM波示意图

        如上图所示T1为脉冲宽度(就是导通时间),周期为T,则输出电压的平均值为U=VCC*T1/T=a*VCC,a是占空比,变化范围为0≤a≤1。VCC为电源电压。

        所以当电源电压不变的情况下,输出电压的平均值U取决于占空比a的大小,改变a的大小就可以改变输出电压的平均值,这就是PWM的工作原理。采用T2定时器产生PWM脉冲极其精确,误差只在几个us。

上PWM程序

// 文件名: T2PWM.c
// 功能:  用T2定时器产生PWM波,频率实调1khz

// 说明:  单片机AT89S52,晶振12MHZ;
// 日期:   2011年4月6日

#include "reg52.h"

#define uint unsigned int

#define uchar unsigned char

sbit PWM = P1^1;

uchar pluse;  //占空比寄存器

void Timer2() interrupt 5

{

        static uchar time;

        TF2=0;

        if(++time==pluse) PWM=0; //达到脉宽设定值时,输出PWM低电平

        else if(time==40) //PWM的频率为1khz左右

{

         time=0;

         PWM=1;

}

}

 void InitTimer2(void) //初始化函数

{

        RCAP2H = 0xff ;//定时25us初值

        RCAP2L = 0x0e7;// 

         ET2=1;

         EA=1;

         TR2=1;

}

void main(void)

 

{  

        InitTimer2();

        while(1)

{

        pluse=20;

}

}[page]

        我把PWM波的周期定为1ms,占空比分40级可调(即每级差2.5%),这样定时器T2每25us产生一个定时中断,每40次中断后进入下一个PWM波的周期。在程序中,pluse=20,即占空比为50%,输出的平均电压为12*50%=6V。

        PWM产生的过程是这样的,开始时PWM为1,当计时到达pluse时(即到达了设定的脉宽宽度时间)PWM=0,随后到达PWM周期时间后PWM=1,此时下一个PWM周期重新开始。为了便于理解,波形在定时中断的产生时序示意图如下所示。

 

 图2 PWM产生时序图

这是用示波器截下的PWM波形图,波形还不错。

 

 

 


关键字:PWM  单片机 引用地址:PWM的单片机产生

上一篇:单片机I2C驱动子程序
下一篇:51单片机H桥电路控制电机正反转和PWM调速

推荐阅读最新更新时间:2024-03-16 14:00

MCS-51系列CHMOS型单片机掉电方式
  MCS-51系列CHMOS型 单片机 CPU执行一条置位PCON.1(PD)的指令,就使器件进入掉电方式。如80C31执行如下指令便可以进入掉电方式:      MOVPCON,#02H;PD←1      1、空闲方式特点      掉电方式控制 电路 如图上页所示。上述指令执行后PD端变为低 电平 , 振荡器 因此停振,片内所有功能部件停止工作,进入掉电方式。在掉电方式期间,内部RAM和寄存器的内容维持不变,I/O引脚状态和相关的特殊功能寄存器的内容相对应,ALE和PSEN为逻辑低电平。      2、退出空闲方式      进入掉电方式后,CHMOS型器件退出掉电方式的唯一方法是硬件复位,即需要给RST引脚上外加一个足够
[单片机]
爱普生以低能耗驱动高性能微控制器
一直以来,“省、小、精”都是爱普生自创立以来就拥有的技术优势。爱普生不断运用省能源、省资源、省空间的节省技术制造稳定可靠、节能高效、循环再生的创新型产品,力求客户、环境和社会价值最大化。近日,爱普生公司又推出了S1C17706微控制器。该产品是爱普生16位S1C17700微控制器系列产品中显示器面积最大的一款产品,其最大的特点在于它的低能耗、高环保特性,仅依靠纽扣电池供电就可以呈现5120点的高清晰度影像。 目前,市场对具有高显示效果的显示屏需求日益旺盛。例如小型游戏机等依靠纽扣电池驱动电力的便携式设备对此类显示屏的需求尤其突出。为了满足用户更高质量、更生动影像的需求,爱普生在S1C17706微控制器采用了51
[单片机]
爱普生以低能耗驱动高性能<font color='red'>微控制器</font>
学习51系列单片机经验
本人从事单片机相关工作多年,首先是从51系列单片机开始学习的。自己想把学习经验写下来,与大家共同探讨学习单片机的捷径。 具体如下: 1、学习电子技术 基础 知识,如电路、模拟电路和数字电路。这是学习电类相关专业的基础。 2、学习计算机硬件知识,如计算机的简单组成原理(只需要了解),当然要知道CPU是什么?总线是什么?一些相关概念。 3、程序编写的相关知识,主要是汇编语言和C语言。了解结构化语言的程序设计方法,也就是三种结构(顺序结构、分支结构(或称选择结构)、循环结构),会一些常用的算法。 4、以上是基础,有了这些基础,学习51单片机就只要花几周的时间就能上手。但学习单片机时,主要从单片机的存储器开始,其中特殊功能寄存器是重点,学会
[单片机]
基于PIC单片机的测温网络的开发
简介:介绍一种利用PIC单片机和DS18B20构造单总线测温网络的方法,文章给出了系统硬件结构和软件流程图。 本测温网络应用在磁致伸缩液位传感器上,利用附在不锈钢管内壁的不同位置上的三个DS18B20,测量不同液位层的温度 。 1硬件设计 整个系统由上位机和下位机组成。上位机用PC机,下位机用PIC16C63(原理框图见图1)。系统硬件部分主要有PIC16C63、AT24C01、DS18B20、显示电路、电源电路、时钟电路和通信电路。用户需要时可通过上位机下达测量命令,下位机进行测量并把结果送给上位机或显示在液晶显示模块上。三个温度点任何一路发生故障,都会传给上位机一个默认值,用户可以据此在线更换新的温度传感器,系统能够自
[单片机]
基于PIC<font color='red'>单片机</font>的测温网络的开发
MCU,要掀起AI革命了?
昨日,嵌入式界发生了一件大新闻,IAR宣布与Edge Impulse联手为全球客户提供AI与ML整合功能。 可能,很多人对于这个新闻没什么认知。要知道,Keil和IAR作为嵌入式/单片机开发双雄,IAR在全球拥有超过15万开发人员和4.6万家公司,Edge Impulse这家公司的业务,则是MCU巨头纷纷向往的TinyML。 两家联手,意味着,嵌入式领域,即将掀起一场AI革命。想象一下,未来你所使用的咖啡机,都会使用嵌入式视觉和AI,来帮助制作完美的咖啡。 王兆楠、付斌丨作者 电子工程世界(ID:EEworldbbs)丨出品 MCU未来十年市场,靠TinyML Edge Impluse这家公司的名号很多人
[嵌入式]
<font color='red'>MCU</font>,要掀起AI革命了?
ARM 单片机新手入门问答
Q: ARM 是什么? A:ARM(Advanced RISC Machines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。 1991年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。目前,采用ARM技术知识产权(IP)核的微处理器,即我们通常所说的ARM微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,基于ARM技术的微处理器应用约占据了32位RISC微处理器75%以上的市场份额,ARM技术正在逐步渗入到我们生活的各个方面。 ARM公司是专门从事基于RISC技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让
[单片机]
ARM <font color='red'>单片机</font>新手入门问答
单片机学习方法总结
从刚开始接触单片机,到现在已经有4年的时间了,在这期间学习和使用了51单片机、飞思卡尔单片机,LPC2138,PIC16F887等系列的单片机,每接触一款单片机,都会经历熟悉其基本开发,然后将其用于项目中的过程,对于如何学习一款单片机,自己做了如下的总结。 大家都知道,51单片机是最容易入门的,不仅因为其编程简单,更重要的是网上的资料非常丰富。所以一般学习单片机开发的都将51单片机作为入门开发的首选。我学习51单片机的时候是采用这样的一个步骤进行学习的: 第一步(熟悉的过程):买了一款51单片机开发板,然后就开始了我的学习之旅,刚开始的时候没有去看视频教程,而是对着一本实验教材进行学习,那本实验教材的名字记不清楚了,但是其内容
[单片机]
学习单片机和STM32的一道坎
刚开始学单片机的你,是不是会因用程序把LED点亮而感到高兴,会因用程序把数码管点亮而感到高兴。这是好事,这也是想继续学习下去的动力。 但是数据相关的实验是学习单片机和STM32的一道坎,此时就需要用好本文要说的串口这个调试工具。串口通信介绍关于串口通信的介绍,也可以点击阅读之前发的一篇文章:STM32串口通信基本原理。串口通信是指外设和计算机间,通过数据信号线 、地线、控制线等,按位进行传输数据的一种通讯方式......这种太过理论了,看似懂了,但又不懂。还是用我笔者自己的话来说吧。串口通信就是可以把程序在单片机或者STM32芯片中运行的结果发送到电脑的一种通信方式。 如何使用串口通讯,你需要知道的几个重要的知识点: 波特
[单片机]
学习<font color='red'>单片机</font>和STM32的一道坎
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved