MCS-51系列单片机实现PWM输出功能的方法解析

发布者:TP9111最新更新时间:2023-08-30 来源: elecfans关键字:MCS-51系列  单片机 手机看文章 扫描二维码
随时随地手机看文章

MCS-51系列单片机无PWM输出功能,可以采用定时器配合软件的方法实现,对精度要求不高的场合是非常实用的。采用高速光隔6N137输出,并将PWM的信号倒相。


一、 工作原理

二、PWM输出

1. 固定脉宽PWM输出

用T0定时器完成PWM输出,脉宽固定为65536us。T0定时器设置成16位定时器,PWM波形如图2所示。

程序清单:(12MHz)

PwmData0;T0定时t1的初值(字)

PwmData1;T0定时t2的初值(字)

PwmF ;PWM输出标志

;***************************

setb tr0;启动T0 ……

;T0中断服务程序

T0Int:JB,PwmF,PWMOUT ;PWM输出未完成返回

MOV TH0,HIGH(PwmData0)

MOV TL0,LOW (PwmData1)

SETB TRO

SETB PwmF

CLR P1.0 ;PWM输出脚

RETI

PWMOUT:SETB P1.0 CLR TR0

MOV TH0,HIGH(PWMDATA1)

MOV TL0,LOW(PWMDATA1)

SETB TR0

CLR PWMF

RETI

说明:在主程序中计算PWMDATA0、PWMDATA1的值。

2. 可变脉宽PWM输出

用T0定时器控制PWM的占空比,T1定时器控制脉宽(最大65536us。)

T0、T1定时器设置成16位定时器。PWM输出波形如图3所示。

程序清单:(12MHz)

PwmData0;T0定时t1的初值(字)

PwmData1;T0定时t2的初值(字)

;***************************

SETB TR0;启动T0

SETB TR1   。..。..

T0INT:CLR TR0;T0中断服务程序

SETB P1.0 ;PWM输出脚

RETI

T1INT:CLR P1.0 ;T1中断服务程序

CLR TR0

CLR TR1

MOV TH0,HIGH(PWMDATA0)

MOV TL0,LOW(PWMDATA0)

MOV TH1,HIGH(PWMDATA1)

MOV TL1,LOW(PWMDATA1)

SETB TR1

SETB TR0

RETI

说明:在主程序中计算PWMDATA0、PWMDATA1的值。


关键字:MCS-51系列  单片机 引用地址:MCS-51系列单片机实现PWM输出功能的方法解析

上一篇:用c语言编写单片机流水灯程序详解
下一篇:MCS51单片机的数据复制程序(ASM)

推荐阅读最新更新时间:2024-10-31 20:37

51单片机入门 - IIC(I2C)总线
UART 属于异步通信,比如电脑发送给单片机,电脑只负责把数据通过TXD 发送出来即可,接收数据是单片机自己的事情。而 I2C 属于同步通信, SCL 时钟线负责收发双方的时钟节拍, SDA 数据线负责传输数据。 I2C 的发送方和接收方都以 SCL 这个时钟节拍为基准进行数据的发送和接收。 I2C总线包括SCL,SDA 两根信号线,其中SCL是时钟线,SDA是数据线。 1、起始信号 UART 通信是从一直持续的高电平出现一个低电平标志起始位;而 I2C 通信的起始信号的定义是 SCL 为高电平期间, SDA 由高电平向低电平变化产生一个下降沿,表示起始信号。 2、数据传 UART 是低位在前,高位在后;而
[单片机]
51<font color='red'>单片机</font>入门 - IIC(I2C)总线
单片机在电力系统监控中的应用
目前,在作为微机保护心脏的微处理器中,一般采用高性能单片机(如Intel公司的87C196CB,87C196CB,78C196NT),数字信号处理器DSP(如TI公司的TMS320F2812)和可编程逻辑器件PLD(如Xilinx公司的XC9572)等来提高继电保护的处理速度,但是,随着继电保护向着多功能、智能化、可视化的方向发展,上述几种单一的芯片已经不能完全满足这些要求,如使用多种通信方式去实现组网调度。在本文中将介绍一种新型嵌入式微处理器MCF5282以及由它设计出的嵌入式主模板,能够满足多种通信方式的要求,而且其处理速度和实现多通道交直流采样的精度比起上述三类芯片都要高得多,其实时性也更完美。 1 MCF5282微处理器
[单片机]
<font color='red'>单片机</font>在电力系统监控中的应用
D/A转换器与单片机接口电路图
D/A转换器与单片机接口电路图(单缓冲工作方式) 适用于只有一路模拟量输出,或有几路模拟量输出但并不要求同步的系统,电路中芯片有 DAC0832
[单片机]
D/A转换器与<font color='red'>单片机</font>接口电路图
I2C总线数字式温湿度传感器SHT11及其在单片机系统的应用
摘要:SHT11是瑞士Sensirion公司生产的具有I2C总线接口的单片全校准数字式相对湿度和温度传感器。该传感器采用独特的CMOSens TM技术,具有数字式输出、免调试、免标定、免外围电路及全互换的特点。文中对传感器的性能特点、接口时序与命令进行了详细的阐述,给出了SHT11与单片机的接口电路及相应程序。 关键词:数字式;温湿度传感器;I2C总线;单片机 1 概述 温湿度的测量在仓储管理、生产制造、气象观测、科学研究以及日常生活中被广泛应用,传统的模拟式湿度传感器一般都要设计信号调理电路并需要经过复杂的校准和标定过程,因此测量精度难以保证,且在线性度、重复性、互换性、一致性等方面往往不尽人意。SHT11是瑞士Sens
[单片机]
凌阳十六位单片机与51单片机的比较分析
  凌阳单片机简介   凌阳单片机是一款控制处理数据以及数字信号处理设备。其语音识别模块自带语音的API函数,其中包括A2000格式和S480格式自动播放及手动播放的播放函数,S240、MS01格式自动播放的播放函数、DVR格式的语音录放函数和语音识别函数,让凌阳单片机不但可以作为普通的单片机开发系统,而且还可以作为一个语音系统进行语音播放、语音录放和语音识别,大大降低了凌阳单片机的开发难度,并增强了凌阳单片机的使用领域和功能。   凌阳单片优点   功能强、效率高的指令系统:μ’nSPTM的指令系统的指令格式紧凑,执行迅速,并且其指令结构提供了对高级语言的支持,这可以大大缩短产品的开发时间。低功耗、低电压:μ’nSPTM家族采用
[单片机]
凌阳十六位<font color='red'>单片机</font>与51<font color='red'>单片机</font>的比较分析
8051单片机C语言基础
单片机产生于19世纪70年代,80年代人们开始使用C语言作为单片机的开发语言,在1985年许多公司都推出51系列单片机的C语言编辑器,我们把面向51单片机的C语言简称为C51。目前C51软件中最为流行的就是Keil C。 一、C语言编程与汇编语言编程相比的优势 编程调试灵活方便。因为它是一门高级语言,高级语言的特点就是编程方式灵活,同时,当前所有的单片机都有相应的C语言级别的仿真调试系统,使得它的调试十分方便。 生成的代码编译效率高。尤其是用于较为复杂的单片机系统,用C语言开发更具明显优势,当前较好的C语言编辑系统的编译效率已经基本达到中高级程序人员的开发水平。 完全模块化。C语言的基本构成单位是函数,其本身就是模块化的开发方
[单片机]
基于51单片机的高效散热LED照明解决方案
以单片机AT89C51为控制核心,将半导体制冷技术引入到led散热研究中,采用PID算法和PWM调制技术实现对半导体制冷片的输入电压的控制,进而实现了对半导体制冷功率的控制,通过实验验证了该方法的可行性。 随着LED技术日新月异的发展,LED已经走进普通照明的市场。然而,LED照明系统的发展在很大程度上受到散热问题的影响。对于大功率LED而言,散热问题已经成为制约其发展的一个瓶颈问题。而半导体制冷技术具有体积小、无须添加制冷剂、结构简单、无噪声和稳定可靠等优点,随着半导体材料技术的进步,以及高热电转换材料的发现,利用半导体制冷技术来解决LED照明系统的散热问题,将具有很现实的意义。 1、LED热量产生的原因及热量对L
[单片机]
基于51<font color='red'>单片机</font>的高效散热LED照明解决方案
STM32单片机内存管理器实用代码解析与工程应用指南
本代码适用于无操作系统的STM32单片机开发,功能强大。 可申请到地址空间连续的不同大小的内存空间,且用户接口简单,使用方便。 直接复制粘贴如下代码即可: memory.h: #ifndef __MEMORY_H__ #define __MEMORY_H__ #include stdio.h #include string.h #include includes.h //用户使用 typedef struct { void *addr;//申请到的内存的起始地址 uint32_t size;//申请到的内存的大小,按照块大小分配,大于等于申请大小 uint16_t tb; //申请表序号,申
[单片机]
小广播
设计资源 培训 开发板 精华推荐

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

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

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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