基于avr单片机的开关电源的设计与实现_毕业设计(编辑修改稿)内容摘要:

然后通过 D/A 芯片输出一个基准的电压值,从而控制专门的 PWM 控制芯片,间接地控制电源工作。 方案二:单片机通过 A/D 转换输出一个电压,作为电源的基准电压,电源可以通过键盘设置预置输出电压,如果单片机不加入反馈控制,电源仍要使用专门的PWM 控制芯片,工作过程为:当通过键盘设置预置电压时,单片机通过 数模转换芯片输出一个电压作为控制芯片的一个基准电压,这个基准电压可以使控制芯片按预置电压值来输出相应的占空比的控制脉冲,以输出期 望的输出电压值。 方案三:选用带 模数转换 的 Atmega8 单片机芯片,通过片内 模数转换模块 实时整流 滤波 电路 开关管 滤波电路 采样电路 比较放大 脉冲调宽 输出 输入 基准电压 唐 山 学 院 毕 业 设 计 5 检测输出电 压值 的大小,然后再同预置电压值相比较,根据预置电压与采样电压的误差,调整单片机输出 PWM 脉冲的占空比,从而实现输出电压值与预置电压值相等。 方案一分析:单片机加入了反馈控制,使系统的稳定性提高,但是由于单片机还需要扩展 A/D 转换 和 D/A 转换 芯片,而且还是需要专门的 PWM 控制芯片,成本很高,不宜采用。 方案二分析:单片机中只是输出一个基准电压,没有加入反馈控制,这样仍要使用专门的控制芯片,单片机的作用非常的小 ,而且价格比较昂贵,电源的成本增加,削弱了单片机本身的作用,浪费了单片机大量的 I/O 口的资源,成本高,不适宜采用。 方案三分析:在本方案中,不仅单片机中加入了反馈控制,而且是以单片机作为开关电源的控制核心,单片机得到了充分的利用,而且省去了 D/A 转换 芯片和A/D 转换 芯片,使成本大大的降低。 综合以上分析,本次设计选择方案三控制方案,使用 Atmega8 单片机,采用 4位数码管显示输出电压值、输出电流值以及键盘预置电压值等,本设计要求输出电压值是可以调节的,所以设定预置值时需要从键盘输入,实现输入不同的电压值,输 出端口就可以输出不同的电压值。 总体结构设计 本设计的系统工作原理如图 22 所示。 工频的交流电经过变压器降压,再经过整流滤波电路将输出电压分成了两路,其中的一路电压通过稳压与滤波电路输出+5V 的电压以提供给单片机,而另一路电压则作为开关变换部分的输入电压。 单片机根据键盘的输入值和采样电压值之间的差值,来修改单片机输出 PWM 脉冲的占空比,通过此脉冲,控制功率管的通与断,以便得到期望的输出电压值。 当键盘上有输入动作的时候,单片机就会到检测键盘的输入动作,同时修改相应的占空比,在经过其内部集成的 A/D 转换模 块 采样输出电压,单片机根据采样电压值与键盘的输入动作再次修改 PWM 脉冲的占空比,从而使输出电压变得稳定。 而开关变换器采用工字型电感作为储能元件,在功率管导通的时候,电感会储存能量,在功率管关断时,电感释放其所存储的电能供给负载。 当闭环的时候,开关电源自动进行脉宽调制,当系统读取到键盘预置的电压变化时,先将键盘输入值和从输出端的取样值进行比较,假设当前键盘输入值为 10V,从输出端取样出的值为 6V,差值为 4V,而系统就会根据这个差值,更新脉宽提高PWM 脉冲的占空比,从而使得输出端电压上升为 10V;同样的,当键 盘输入值为6V,输出端的取样值为 10V,差值为 4V,系统会根据这个误差值更新脉冲的宽度,唐 山 学 院 毕 业 设 计 6 将 PWM 脉冲的占空比减小以使输出的电压变小,这就是系统的脉宽调制过程。 与此同时,电源可以进行自动稳压,假设在某一正常的状态下,输出电压为 OV ,反馈电压为 fV ( Of VV ),用户设定电压为 SV ,当 SO VV  时,偏差为 0V,单 片机不进行脉宽的更新,当电网波动导致输出电压增加时,即 SO VV  时,单片机采样的电压也会增加,单片机会根据偏差值修改占空比使导通时间变小,从而使电压值下降,同样当电网波动使输出电压下降时,即 SO VV  时,单片机修改脉宽使得导通时间变长,从而使输出电压值上升,如此循环来进行稳压。 图 2 2 单片机控制开关电源系统框图 整流滤波电路 开关变换电路 整流滤波电路 控 制 电 路 辅助电源 四位数码管 取样电路 键盘 输出 唐 山 学 院 毕 业 设 计 7 3 系统核心器件选择 单片机简介 Atmega8 是由 ATMEL 公司在 20xx 年的第一季度推出的一款新型的 AVR 高档单片机。 在 AVR 的大 家族中, Atmega8 是一种非常特殊的单片机它的芯片内集成的存储器容量较大及硬件接口电路丰富强大,具有 AVR 单片机 MEGE 系列的全部性能以及特点。 但是采用的封装为小引脚( DIP 28 和 TQFP/MLF32),因此其价格较便宜,并且 AVR 单片机系统内自带的可编程特性,使得不需要购买昂贵的编程器和仿真器亦可以进行单片机的嵌入式系统的开发和设计,同时 ,也是为单片机的初学者提供了非常方便以及简捷的学习开发环境。 Atmega8 的如此许多的特点,使其成为一款具有极高的性价比的单片机,在产品应用市场上极具竞争力,深受广大单片机用户的喜爱,而且亦被很多仪器仪表行业和家用电器厂商看中,从而,使 Atmega8 迅速地进入大批量的应用领域。 Atmega8 为一款采用 CMOS 工艺生产的低功耗的单片机,并且基于 AVR RISC的 结构的 8 位的单片机。 AVR 单片机核心部分是将 32 个工作寄存器以及丰富的指令集联结到一起,所有的工作寄存器均与 ALU(算术逻辑单元)直接相连 ,从而实现了在一个时钟周期内仅执行一条指令,并且与此同时访问(读写)两个独立的寄存器的操作。 因此, Atmega8 达到接近 1MIPS/MHz 的性能,运行的速度比普通的CISC 单片机要高出 10 倍。 本设计中是利用单片机 Atmega8 作为主要的控制器件,由单片机产生 PWM 脉冲控制功率开关管的导通与关断,从而来实现开关电源的输出电压的可调功能。 Atemga8 现 有 MLF、 PDIP 和 TQFP 三种封装形式,其中 MLF 属于超小型表贴封装,左上角圆形标记处为引脚序号的起点和终点; PDIP 是一种双列直插式 塑料封装, 28 引脚分成左右两排; TQFP 是超薄方形扁平塑料封装, 32 条引脚线均匀地分布在正方形的四条边上,截角处为引脚序号起点。 本设计中所用到的单片机就是28 引脚的双列直插式的其引脚图如图 31 所示。 唐 山 学 院 毕 业 设 计 8 P B 0 (IC P )14P B 1 (O C 1 A )15P B 2 (S S /O C 1 B )16P B 3 (M O S I/O C 2 )17P B 4 (M IS O )18P B 5 (S C K )19P B 6 (X T A L 1 /T O S C 1 )9P B 7 (X T A L 2 /T O S C 2 )10P D 0 (R X D )2P D 1 (T X D )3P D 2 (IN T 0 )4P D 3 (IN T 1 )5P D 4 (X C K /T 0 )6P D 5 (T 1 )11P D 6 (A IN 0 )12P D 7 (A IN 1 )13GND8VCC7A V C C20A R E F 2 121G N D22(A D C 0 )P C 023(A D C 1 )P C 124(A D C 2 )P C 225(A D C 3 )P C 326(A D C 4 /S D A )P C 427(A D C 5 /S C L )P C 528(R E S E T )P C 61 Atmega8 的引脚说明如下: 数字电路电源。 接 地。 B(PB7..PB0) 端口 B 是 8 位双向的 I/O 口,而且具有可编程内部上拉电阻。 而其输出缓冲器具有对称驱动特性,可以输出和吸收大电流。 当用作输入使用的时候,如果内部的上拉电阻使能,此时端口被外部电路拉低,将会输出电 流。 在复位的过程中,即使系统的时钟还没有起振,端口 B 仍 处于高阻的状态。 而通过时钟来选择熔丝位设置,PB6 可以作为正方向振荡放大器或者时钟操作电路输入端。 通过时钟来选择熔丝位设置, PB7 可以作为反方向振荡放大器输出端。 C(PC5..PC0) 端口 C 是 7 位双向 I/O 口,具有可编程内部上拉电阻。 其输出缓冲器具有对称驱动特性,可输出和吸收较大电流。 作为输入引脚使用时,如果内部的上拉电阻有使能,当端口被外部的电阻拉低时将会输出电流。 而在复位的过程中,即使系统的时钟还没有起振,端口 C 也是 处于高阻状态。 PC6 的电气特性不同于端口 C 的其他引脚。 如果熔丝位 RSTDISBL 编程, PC6可以 作为通用 I/O 口 引脚使用。 如果熔丝位 RSTDISBL 没有编程, PC6 可 作为复位输入引脚。 持续的时间长度超过最小门限的时间长度的低电平将会引起系统的复位,如果持续时间不超过最小门限时间的低电平,则不能够保证单片机复位的可靠。 D(PD7..PD0) 端口 D 是 8 位的双向 I/O 口,具有可编程的内部的上拉电阻。 其具有对称驱动特性的输出缓冲器,可以吸收和输出较大的电流。 而当作输入使用的时候,如果内部的上拉电阻使能,那么端口被外部的电路 拉低时将会输出电流。 而在复位的过程当中,即便系统时钟还没有起振,端口 D 则 处于高阻状态。 图 3 1 Atmega8 的引脚图 唐 山 学 院 毕 业 设 计 9 6. RESET 复位输入引脚。 若持续的时间超过最小门限的时间的低电平将会引起系统的复位。 若持续的时间小于门限的时间的脉冲并不能保证复位的可靠性。 7. CCAV CCAV 是端口 C(3..0) 、 ADC(7..6)及 模数 转换器的电源。 当不使用 ADC 时,此引脚应该直接与 CCAV 连接。 而使用 ADC 时应该通过一个低通滤波器与 CCAV 连接。 需要 注意的是端口 C(5..4) 为数字电源。 模数转换的模拟基准输入引脚。 Atmega8I/O 口概述 Atmega8 的 I/O 口共有 PB、 PC、 PD 三个,其中 PC 口为 7 位 I/O 端口,相应的端口线为 PC6~ PC0; PB 和 PD 均为 8 位的 I/O 端口,相应端口线为 PB7~ PB0和 PD7~ PD0。 在 PB、 PC 和 PD 三个端口中,每个端口都有三个 I/O 寄存器。 以 X( X 的取值为 B、 C 和 D 之一)端口做为例 子,这三个 I/O 寄存器是 PINX( X 口输入引脚寄存器)、 PORTX( X 口数据寄存器)和 DDRX( X 口数据方向寄存器)。 其中, PINX由 n 位 PINXn 拼装而成; PORTX 由 n 位 PORTXn 拼装而成; DDRX 由 n 位 DDXn构成。 因此, Atmega8 的三个 I/O 端口有 9个 I/O 寄存器,它们是 PINB、 PINC、 PIND、PORTB、 PORTC、 PORTD、 DDRB、 DDRC 和 DDRD,其中, DDRC、 PORTC 和PINC 均为 7 位 I/O 寄存器,位 号 n 为 6~ 0,其余的为 8 位 I/O 寄存器。 AVR 单片机的每一 个 I/O 端口 作为通用数字 I/O 端口 使用的时候,输出缓冲器具有对称的驱动能力,可以输出或吸收较大的电流,从而可以直接驱动 LED 显示以及蜂鸣器等。 而且所有端口的引 脚都是具有与电压无关的上拉电阻,并且有保护二极管与 CCV 和地相连。 Atmega8 的 I/O 口的输入输出都是通过对其 I/O 口的配置而实现的,当引脚配置为输出时,假设 PORTxn 为 1,引脚会输出高电平,假如 PORTxn 为 0,引脚会输出低电平;当引脚的配置为输入时,若 PORTxn 为 1,上拉电阻将使能,如果想要关闭这个上 拉电阻,可以将 PORTxn 位清零,或者经过这个引脚配置作为输出,即使此时并没有时钟在运行,复位时各引脚为高阻态。 Atmega8 的 I/O 配置如表 31所示。 唐 山 学 院 毕 业 设 计 10 表 3 1 Atmega8 的 I/O 配置 DDRxn PORTxn PUD I/O 方向 上拉电阻 说明 0 0 输入 无 高祖态输入口 0 1 0 输入 有 上拉输入口,被拉低时输出电流 0 1 1 输入 无 高阻态 1 0 输出 无 输出低电平(吸收电流) 1 1 输出 无 输出高电平 (输出电流) Atmega8 的 AD 功能 在 AVR 单片机中有两种支持模拟信号的输入功能端口,分别是模拟比较器和模数转换器 ADC。 模数转换器在微控制器中,作用是将模拟信号转。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。