首页 利用定时器控制产生占空比可变的 PWM 波

利用定时器控制产生占空比可变的 PWM 波

举报
开通vip

利用定时器控制产生占空比可变的 PWM 波利用定时器控制产生占空比可变的 PWM 波 ------------------------------------------------------------------------------------------------ 利用定时器控制产生占空比可变的 PWM 波 利用定时器控制产生占空比可变的 PWM 波 * ; 按K1,PWM值增加,则占空比减小,LED 灯渐 暗。 * ; 按K2,PWM值减小,则占空比增加,LED 灯渐 亮。 * ;当PWM值增加到最大值或减小到最小值时,蜂...

利用定时器控制产生占空比可变的 PWM 波
利用定时器控制产生占空比可变的 PWM 波 ------------------------------------------------------------------------------------------------ 利用定时器控制产生占空比可变的 PWM 波 利用定时器控制产生占空比可变的 PWM 波 * ; 按K1,PWM值增加,则占空比减小,LED 灯渐 暗。 * ; 按K2,PWM值减小,则占空比增加,LED 灯渐 亮。 * ;当PWM值增加到最大值或减小到最小值时,蜂鸣器将报 警 * ;资源:p0口,8路指示灯。p1.0,p1.4亮度控制按键(端口按键) p3.3小喇叭报警 * ;******************************************************* ************************* ;,,,,,,,,,,,,,,,,,,,,,,,,,,, , PWM EQU 7FH ;PWM赋初始值 PWM 定义 为,7FH OUT EQU P0 ;1个LED灯的接口OUT 定义 为,P0.1 INCKEY EQU P1.0 ;K1,PWM值增加键。INCKEY 定义 为,P1.4 —————————————————————————————————————— ------------------------------------------------------------------------------------------------ DECKEY EQU P1.4 ;K2,PWM值减小键。DECKEY 定义为,P1.5 BEEP EQU P3.3 ;BEEP 定义为,接口3第3位 ;;,,,,,,,,,,,,,,,,,,,,,,,,,,,, ORG 0000H SJMP START ORG 000BH SJMP INTT0 ORG 001BH SJMP INTT1 ORG 0030H ;,,,,,,,,,,,,,,,,,,,,,,,,,,,, ;主程序 ;定时器0工作在模式1,定时器1工作在模式2。 ;,,,,,,,,,,,,,,,,,,,,,,,,,,,, START: MOV SP,#30H MOV TMOD,#21H MOV TH1,PWM ;脉宽调节 MOV TL1,#00H —————————————————————————————————————— ------------------------------------------------------------------------------------------------ MOV TH0,#0FCH ;1ms延时常数 MOV TL0,#066H ;频率调节 SETB EA SETB ET0 SETB ET1 SETB TR0 LOOP: MOV A,PWM ; JB INCKEY,LOOP1 ;增加键是否按下, CALL DELAY ;延时去抖动 JB INCKEY,LOOP1 CJNE A,#0FFH,PWMINC ;是否到最大值, CALL BEEP_BL ;是,蜂鸣器报警。 SJMP LOOP PWMINC: INC PWM ;调节脉宽(脉宽减小) SJMP LOOP LOOP1: JB DECKEY,LOOP2 ;减小键是否按下, CALL DELAY ;延时去抖动 JB DECKEY,LOOP2 CJNE A,#02H,PWMDEC ;是否到最小值, CALL BEEP_BL ;是,蜂鸣器报警。 SJMP LOOP —————————————————————————————————————— ------------------------------------------------------------------------------------------------ PWMDEC: DEC PWM ;调节脉宽(脉宽增加) LOOP2: SJMP LOOP ;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ;T0中断服务子程序 (频率) ;控制定时器1中断 ;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, INTT0: CLR TR1 MOV TH0,#0FCH ;1ms延时常数 MOV TL0,#066H ;频率调节 MOV TH1,PWM SETB TR1 MOV OUT,#00H ;启动输出 RETI ;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ;T1中断服务子程序 (脉宽) ;控制PWM脉冲宽度 ;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, INTT1: CLR TR1 ;脉宽调节结束 MOV OUT,#0FFH ;结束输出 —————————————————————————————————————— ------------------------------------------------------------------------------------------------ RETI ;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ;10ms延时子程序 ;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, DELAY: MOV R6,#50 DELAY1: MOV R7,#100 DJNZ R7,$ DJNZ R6,DELAY1 RET ——————————————————————————————————————
本文档为【利用定时器控制产生占空比可变的 PWM 波】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_624976
暂无简介~
格式:doc
大小:17KB
软件:Word
页数:5
分类:管理学
上传时间:2018-10-04
浏览量:41