基于单片机的数控稳压电源电路设计内容摘要:

方式,其中一个来作为输出的负载,另外一个小电阻作为电压采样电阻,负载处接一个过压保护电路用来保护电阻不被烧坏,采样电阻上的电压直接送到 AT89S51 单片机的 A/D 转换来实现负反馈,并且通过相关程序进行稳压控制。 经比较,采用方案二较合适。 基于单片机的数控稳压电源电路设计 10 第三章 硬件设计 11 第三章 硬件设计 设计思路 系统硬件的设计思 想是力求结构简单、工作可靠、适应教学要求、性能价格比高。 本次设计是以单片机来控制运行状态的数字电压源控制系统。 根据要求采用C 语言编制程序,通过单片机控制数字电压源的运行。 本系统硬件设计由单片机( AT89S51)模块、 DAC083 OP0双联七段共阴数码管 模块 等 4 个 模块 所组成。 本次设计采用单片机 AT89S51 作为整机的控制单元,通过改变输入数字量来改变输出电压值,从而使输出功率管的基极电压发生变化,间接地改变输出电压的大小。 如果要使系统具备检测实际输出电压值的大小,可以经过 ADC0832 进行模数转换 ,间接用单片机实时对电压进行采样,然后进行数据处理及显示。 采用软件方法来解决数据的预置以及电流的步进控制,使系统硬件更加简洁,各类功能易于实现本系统以直流电源为核心,利用 51 系列单片机为主控制器,通过键盘来设置直流电源的输出电流,设置步进等级可达 ,并可由数码管显示出实际输出电压值和电压设定值。 利用单片机程控输出数字信号,经过 D/A 转换器( DA0832)输出模拟量,再经过运算放大器隔离放大,控制输出功率管的基极,随着功率管基极电流的变化而输出不同的电压。 AT89S51 模块电路 由于在编程时, P0 口作 为原码输入口,当进行校验时, P0 输出 原码,此时 外部电压必须被拉高。 端口接上拉电阻后,再与 DAC0832 的数字输入信号口相连, 与 D0 相连、 与 D1 相连、 与 D2 相连 、 与 D3相连、 与 D4 相连、 与 D5 相连、 与 D6 相连、 相连 D7。 加基于单片机的数控稳压电源电路设计 12 上上 拉电阻从而使得输出电压 为 AT89S51 的 P0 口的电压加上上拉电阻的压降,从而使得输出电压得到提高。 具体连接如下图 所示: 图 AT89S51 模块电路 显示模块电路: 如下图 所示: 图 显示模块电路 第三章 硬件设计 13 以上的第 0 段到第 6 段也就是对应的的 a 到 g。 AT89S51 的 口与数码管 a 端相连, 与 b 端相连, 与 c 端相连, 与 d 端相连, 与 e 端相连, 与 f 端相连, 与 g 端相连,以上的连接实现数码管的数行条的显示。 例如要显示数字 2,也就是对应的 a、 b、 g、 e、 d 的发光二极管亮。 同理可以推出数字 0、 9 的数字显示。 dp 端是控制数码管的小数点位 .与单片机 端相连。 , s s2 是用来控制数码管的位的开关,分别与 AT89S51 的 、 端口相连,通过对开关的控制实现数码管对位的选择,实现数码管的位的选择。 0P07 运算放大器电路。 本次设计用到两个 0P07 运算放大器,分别用来电流转换电压和电压放大功能。 电流电压转换部分 图 0P07运算放大器电流转换电压部分电路 由上图可知,放大器的输入端 3 端口接 DAC0832 的模拟电流输出端 OUT,同时 2 端口接地, 6 端口与 DAC0832 的 RFB 端口相连,也就是在电路中加入了负反馈,则 6 端口的输出值为 OUT*RFB(运算放大器的虚断虚短原理),从而就实现了电流 —电压的转换。 但是由上面的得到的电压值往往很小,不符合本电基于单片机的数控稳压电源电路设计 14 路的电 压数值的要求,因此我们必须再次引入一个 0P07 运算放大器用来实现电压的放大,从而得到我们所需要的电压。 如下图 所示: 图 运算放大器 由图我们可以看到,最右边的 1 和 2 为输出端,用来检测实际电压,我们暂时忽略它。 放大器的 3 端接 图的 6 端, 运放的 同向端 2 接地 =0V,反向端和同向端虚短,所以也是 0V,反向输入端输入电阻很高,虚断,几乎没有电流注入和流出,那么 R2 和 R3 相当于是 串联的,流过一个串联电路中的每一只组件的电流是相同的,即流过 R2 的电流和流过 R3 的电流是相同的。 流过 R2 的电流 I1 = (Vi V)/R2 式( 31) 流过 R3 的电流 I2 = (V Vout)/R3 式( 32) V = V+ = 0 式( 33) I1 = I2 式( 34) 求解上面的代数方程得 Vout = (R3/R2)*Vi 式( 35) 这就是反向放大器的输入输出关系式了 第三章 硬件设计 15 数模转换部分: 选取 DAC0832 作为模数转换芯片, DAC0832 是采用 CMOS 工艺制成的单片直流输出型 8 位数 /模转换器。 DAC 数模转换原理: 如下图 所示: 图 DAC0832内部结构图 从图 中我们可以看到 DAC0832 是由倒 T 型 R2R 电阻网路、模拟开关、运算放大器和参考电压 VREF 四大部分组成。 从电路图中我们可知运算放大器的输出模拟量 V0 为: )222(20 002211   DDDRfV r e fv nnnnn 式( 36) 从 上 式 中 , 我 们 可 以 看 到 输 出 的 模 拟 量 与 输 入 的 数 字 量)222( 002211   DDD nnnn 成正比,这也就实现了数字量到模拟量的转换。 一个 8 位 D/A 转换器有 8 个输入端(其中每个输入端是 8 位二进制的一位),有一个模拟输出端。 输入可有 28=256 个不同的二进制组态,输出为 256 个电压之一,即输出电压不是整个电压范围内任意值,而只能是 256 个可能值。 AT89S51 单片机主要特性及引脚功能介绍 AT89S51 具有如下特点: 40 个引脚, 4kBytesFlash 片内程序存储器, 128bytes的随机存取数据存储器( RAM), 32 个外部双向输入 /输出( I/O)口, 5 个中断优基于单片机的数控稳压电源电路设计 16 先级 2 层中断嵌套中断, 2 个 16 位可编程定时计数器 ,2 个全双工串行通信口,看门狗( WDT)电路,片内时钟振荡器。 此外, AT89S51 设计和配置了振荡频率可为 0Hz 并可通过软件设置省 电模式。 空闲模式下, CPU 暂停工作,而 RAM 定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存 RAM 的数据,停止芯片其它功能直至外中断激活或硬件复位。 同时该芯片还具有 PDIP、TQFP 和 PLCC 等三种封装形式,以适应不同产品的需求。 其特点有: 1. 8031CPU 与 MCS51 兼容 2. 4K 字节可编程 FLASH 存储器 (寿命: 1000 写 /擦循环 ) 3. 全静态工作: 0Hz24KHz 4. 三级程序存储器保密锁定 5. 128*8 位内部 RAM 6. 32 条可编程 I/O 线 7. 两个 16 位定时器 /计数器 8. 6 个中断源 9. 可编程串行通道 10. 低功耗的闲置和掉电模式 11. 片内振荡器和时钟电路 AT89S51 单片机 管脚说明: VCC:供电电压; GND:接地; P0 口: P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。 当P1 口的管脚第一次写 1 时,被定义为高阻输入。 P0 能够用于外部程序数据存储器,它可以被定义为数据 /地址的第八位。 在 FIASH 编程时, P0 口作为原码输入口,当 FIASH 进行校验时, P0 输出原码,此时 P0 外部必须被拉高; P1 口: P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口, P1 口缓冲器能接收输出 4TTL 门电流。 P1 口管脚写入 1 后,被内部上拉为高,可用作输入, P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。 在 FLASH 编程第三章 硬件设计 17 和校验时, P1 口作为第八位地址接收; P2 口: P2 口为一个内部上拉电阻的 8 位双向 I/O 口, P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写“ 1”时,其管脚被内部上拉电阻拉高,且作为输入。 并因此作为输入时, P2 口的管脚被外部拉低,将输出电流。 这是由于内部上拉的缘故。 P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时, P2 口输出地址的高八位。 在给出地址“ 1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时, P2 口输出其特殊功能寄存器的内容。 P2口在 FLASH 编程和校验时接收高八位地址信号和控制信号; P3 口: P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL门电流。 当 P3 口写入“ 1”后,它们被内部上拉为高电平,并用作输入。 作为输入,由于外部下拉为低电平, P3 口将输出电流( ILL)这是由于上拉的缘故。 (串行输入口) (串行输出口) (外部中断 0) (外部中断 1) (记时器 0 外部输入) (记时器 1 外部输入) (外部数据存储器写选通) (外部数据存储器读选通) P3 口同时为闪烁编程和编程校验接收一些控制信号; I/O 口作为输入口时有两种工作方式即所谓的读端口与读引脚读端口时实际上并不从外部读入数据而是把端口锁存器的内容读入到内部总线经过某种运算或变换后再写回到端口锁存器只有读端口时才真正地把外部的数据读入到内部总线上面图中的两个三角形表示的就是输入缓冲器 CPU 将根据不同的 指令分别发出读端口或读引脚信号以完成不同的操作这是由硬件自动完成的不需要我们操心 1然后再实行读引脚操作否则就可能读入出错为什么看上面的图如果不对端口置 1端口锁存器原来的状态有可能为 0Q 端为 0Q^为 1 加到场效应管栅极的信号为 1该场效应管就导通对地呈现低阻抗 ,此时即使引脚上输入的信号为 1也会因端口的低阻抗而使信号变低使得外加的 1 信号读入后不一定是 1 若先执行置 1 操作则可以使场效应管截止引脚信号直接加到三态缓冲器中实现正确的读入由于在输入操作时还必须附加一个准备动作所以这类 I/O 口被称为准双向口 89C51 的P0/P1/P2/P3 口作为输入时都是准双向口接下来让我们再看另一个问题从图中可以看出这四个端口还有一个差别除了 P1 口外 P0P2P3 口都还有其他的功能; RST:复位输入。 当振荡器复位器件时,要保持 RST 脚两个机器周期的高电基于单片机的数控稳压电源电路设计 18 平时间; ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。 在 FLASH 编程期间,此引脚用于输入编程脉冲。 在平时, ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。 因此它可用作对外部输出的脉冲或用于定时目的。 然而要注意的是:每当用作外部数据存储 器时,将跳过一个 ALE 脉冲。 如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。 此时, ALE 只有在执行 MOVX, MOVC。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。