PWM控制LED灯渐亮渐灭汇编程序

发布时间:2022-12-26  

;*******************************************************************

;* 演示程序 - PWM控制LED灯渐亮渐灭 *

;* 邮箱: mcuinfo@163.com *

;* 作者: keel *

;* 时间: 2005/11/30 *

;*【版权】Copyright(C)晶格电子 All Rights Reserved*

;*【声明】此程序仅用于学习与参考,引用请注明版权和作者信息! *

;*******************************************************************

; PWM 控制 LED 灯渐亮渐灭程序

; 晶振为11.0592M

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

; 按K1,PWM值增加,则占空比减小,LED 灯渐暗。

; 按K2,PWM值减小,则占空比增加,LED 灯渐亮。

; 当PWM值增加到最大值或减小到最小值时,蜂鸣器将报警。

;----------------------------

PWM EQU 7FH ;PWM赋初始值

OUT EQU P0 ;8个LED灯的接口


INCKEY EQU P1.4 ;K1,PWM值增加键。

DECKEY EQU P1.5 ;K2,PWM值减小键。


BEEP EQU P3.7

;----------------------------

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

;-----------------------------------------------

;蜂鸣器响一声子程序

;-----------------------------------------------

BEEP_BL:

MOV R6,#100

BL1: CALL BL2

CPL BEEP

DJNZ R6,BL1

MOV R5,#25

CALL DELAY2

RET


BL2: MOV R7,#180

BL3: NOP

DJNZ R7,BL3

RET

DELAY2: ;延时R5×10MS

MOV R6,#50

BL4: MOV R7,#100

BL5: DJNZ R7,BL5

DJNZ R6,BL4

DJNZ R5,DELAY2

RET

;---------------------------------------------------

END


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    起。 2.按下设置按键后切换到可调节亮度的灯。 3.蓝色小灯的亮度调节PWM调节,按键加和减可以调节信号的占空比,并实现小灯亮度的控制。   三.程序设计 使用Keil 51进行程序设计,打开......
    低等优点,非常适合用于控制LED呼吸灯。本项目的呼吸灯将使用PWM(脉冲宽度调制)技术控制LED亮度,从而实现呼吸灯的效果。 在本项目中,将使用51单片机作为主控制器,通过编程实现呼吸灯的控制。将使用C语言......
    改变,从0自加到100,再从100 自减到0。50MS的延迟控制灯亮暗的频率。大家还可以使用按键来控制PWM的占空比,来实现亮度控制。 在定时器中断函数里,我们设置一个计数位,不断从0增加到100......
    过的灯是慢慢熄灭的 // // 使用 UNO 的所有引脚用模拟 PWM 实现雨滴流动的效果,包括模拟输入口也可以用做数字输出 // 各引脚接 LED 正极,LED 负极接 GND......
    亮度调节可通过单片机的I/O口输出PWM信号的方法来实现。为确保人的肉眼看不到PWM脉冲,PWM信号的频率必须高于100Hz[7],即定时器定时时间T<0.01s。LED灯的亮度PWM信号......
    时,输出电流最高可达500mA。高边检流电阻可调节输出电流,而专用的脉宽调制(PWM)输入可实现宽亮度范围的脉冲式LED亮度调节。 这些器件非常适合需要宽输入电压范围的应用。高边......
    -boost、SEPIC、反激和高边buck拓扑。亮度调节驱动器设计用于驱动一个与LED串联的外部p沟道管,提供较宽的亮度调节范围。该驱动器能够以较高的PWM频率切换LED电流的通断,不会......
    的调光方法。不同于PWM调光,DC调光并非通过LED的ON/OFF交替来实现亮度调节,所以出现闪烁的风险较低。但是,如果电流过低,LED本身会发生色度漂移,所以在比较注重色感的规格中采用这种调光方式时,需要......
    单颗LED灯,除了常规的单颗闪光灯应用,双路驱动单灯总电流可以达到1.5A,可以满足部分大功率应用场景。 双灯应用图单灯应用图 PWM调光应用:为了适配不同环境光下补光灯亮度需求以及手电筒模式不同亮度调节......
    单颗LED灯,除了常规的单颗闪光灯应用,双路驱动单灯总电流可以达到1.5A,可以满足部分大功率应用场景。 双灯应用图单灯应用图 PWM调光应用:为了适配不同环境光下补光灯亮度需求以及手电筒模式不同亮度调节......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>