基于8086单片机的PWM调光(带汇编)

      之前网上并没有详细的基于8086的PWM调光设计,做完课程设计,给大家分享一下使用DAC8032提供电压的设计思路。

1. 总体设计

       在这次设计中,使用了PWM脉宽调制输出方式,即通过对一系列脉冲的宽度进行调制,来等效的获得所需波形。D/A转换器输出的模拟量和输入的数字量成正比,将D/A转换器作为微机输出接口,CPU通过程序向D/A转换器输出随时间呈现不同变化规律的数字量,D/A转换器就可以输出随时间变化的模拟量。我通过端口实现某种方波频率为f、占空比为k的方波输出以进行亮度控制,在实验中加入了两个按钮,分别控制占空比的增减,实现灯光的调亮和调暗,长按调光按钮时可以实现无极调光在发光模块的电路中。通过两个三极管组成电路进行滤波,使LED灯可以正常发光。

2.部分模块说明

2.1核心控制模块

基于8086单片机的PWM调光(带汇编)_第1张图片

图 核心控制模块

8086CPU中MN/MX接+5V,构成小规模的应用系统,只有8086一个微处理器, 所有的总线控制信号均为8086产生,系统中的总线控制逻辑电路,8086装入程序。

2.2按键控制模块

基于8086单片机的PWM调光(带汇编)_第2张图片

        74LS244为三态输出的八组缓冲器和总线驱动器,CE非 输入高电平,使其不处于高阻抗状态,两个按钮分别控制亮、暗,单次按下或长按均可以改变信号的占空比,由于单位时间改变的占空比很小,可以实现无极调光。在未按下按钮时,A0和A1输入的是高电平,按下时输入信号将变为低电平并以此改变输出的电平与指令。 

2.3发光模块

基于8086单片机的PWM调光(带汇编)_第3张图片

       DAC0832的输出为该模块提供电压,由于电压会随高低电平的输入进行变化,LED灯会快速闪烁,添加了有极性电解电容,有极性电解电容与LED灯并联可以起到滤波的作用,也可以保护电路,在此之后,我在原有的电路中加了滤波模块,使 LED灯的电压随占空比在0.69V-1.05V的范围波动,且电压由于高低电平造成的波动被降到了10^-3.

3.元器件清单

元件

型号

数量

芯片

8086

1

芯片

74LS373

1

芯片

74LS244

1

芯片

74LS138

1

芯片

74LS32

1

芯片

OP1P

2

芯片

DAC0832

1

电阻

10K

3

电阻

1K

1

电阻

150

1

电解电容

20000uF

1

按键

BUTTON

2

发光二极管

LED-YELLOW

1

电感

ELJ-NCR56JF

1

PNP型三极管

2N2907

1

NPN型三极管

2N3903

1

4.相关信息下载

Proteus仿真图和汇编源代码下载地址:基于8086单片机的PWM调光(带汇编)-其它文档类资源-CSDN下载基于8086单片机的PWM调光(带汇编)更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/weixin_45509406/64173359

无需会员!无需会员!无需会员!

本文概述相对简略,仅作为一种设计思路分享,欢迎大家进行探讨和交流。

你可能感兴趣的:(8086单片机汇编,单片机,嵌入式硬件,开发语言)