随着电力电子技术的迅速发展,直流电源应用非常广泛,其好坏直接影响着电气设备或控制系统的工作性能。直流稳压电源是电子技术常用的设备之一,广泛的应用于教学、科研等领域。传统的多功能直流稳压电源功能简单、难控制、可靠性低、干扰大、精度低且体积大、复杂度高。而基于控制的直流稳压电源能较好地解决以上传统稳压电源的不足。其良好的性价比更能为人们所接受,因此,具有一定的设计价值。
该电采用单片机(AT89C51)作为主控电,由三端集成稳压器(LM317)作为稳压输出部分。另外,电还增加参考电压电、D/A转换电、电压放大电、显示电等部分电。其方框图如图1所示:
整个电的运行需要模拟电压源提供+5V,15V的模拟电压,以便使电中的集成数字芯片能够正常工作。电运行时,首先由单片机设置初始电压值,并送显示电显示。然后将电压值送D/A转换电进行数模转换,再经放大电进行电压放大,最终反馈到三端集成稳压器(LM317)输出模拟电压。
本电的硬件组成部分主要由单片机(AT89C51)、变压器、整流电、滤波电、稳压器(LM317)、参考电压电、D/A转换电(DA0832)、放大电、显示电等组成。
硬件电如图2所示,整个电通过单片机(AT89C51)控制,P0口和DAC0832的数据口直接相连,DA的CS和WR1连接后接P26,WR2和XFER接地,让DA工作在单缓冲方式下。DA的11脚接参考电压,通过调节可调电阻使LM336的输出电压为5.12V,所以在DAC的8脚输出电压的分辨率为5.12V/256=0.02V,也就是说DA输入数据端每增加1,电压增加0.02V。
DA的电压输出端接放大器OP07的输入端,放大器的放大倍数为(R8+R9) /R8=(1K+4K) /1K=5,输出到电压模块LM317的电压分辨率为0.02V5=0.1V.所以,当MCU输出数据增加1的时候,最终输出电压增加0.1V,当调节电压的时候,可以以每次0.1V的梯度增加或者降低电压。
本电设计两个按键,S1为电压增键,S2为电压减键,按一下S1,当前电压增加0.1v,按一下S2,当前电压减小0.1V.
显示部分由三位共阳数码管和74LS164串入并出模块组成,电如图3所示,可以显示三位数,一位显示十位,一位显示个位,另外还有一个小数位,比如可以显示12.5v,采用动态扫描驱动方式。本主电的原理就是通过MCU控制DA的输出电压大小,通过放大器放大,给电压模块作为最终输出的参考电压,真正的电压,电流还是稳压模块LM317输出。
在本电中由于CPU的工作任务是单一的,因此,源程序的工作过程为:系统上电复位后,默认输出9V电压,然后扫描S1,S2键,当S1或S2键有按下时,程序跳转至相应的按键处理子程序,经按键子程序处理后,再嵌套调用显示子程序,完成显示与输出操作后返回主程序,继续扫描此两键,程序运行原理如下:
程序设计需要考虑的主要问题有两个方面:一方面要找出数字量Dn与输出电压的关系,这是程序设计的依据;另一方面要建立显示值与输出电压值的对应关系,这是程序设计是否成功的标志。因为在本系统中,显示的输出电压值不是之前从输出电中通过检测得到的,因此显示与输出并不存在直接联系。但为了使显示值与实际输出值相一致,在程序编写时,必须人为地为两者建立某种关系。采用的方法是:在程序存储器中建立TAB1和TAB2两张表格,TAB1放101个Dn值,数值从小到大顺序排列,其值分别对应输出电压0~10v,TAB2存放数码显示器0~9字符所对应的数据。TAB1表格的数据指针存放在内存RAM中23H单元,内存20H, 21H和22H三个单元分别存放数码显示器小数点一位,个位和十位的字符数据指针。在主程序中初始化后之后首先给23H赋予40的偏移量,这个偏移量指向TAB表中的Dn为145,此值对应的输出电压为9V,由于这个原因,必然要求显示器显示的字符为“05.0”,为此,须分别给20H, 21H和22H赋予0,5和0的偏移量,这三个偏移量分别指向TAB2中0,5和输出两者之间就建立了初步的对应关系。为了使两者保持这种对应的关系,在K1和K2按键处理子程序中,必须使23H, 20H, 21H和22H四个数据指针保持“同步”地变化,即为当K有键时, 23H单元增加1指向下一Dn时, 20H单元也相应增加1指向下一字符,并且20H单元(小数点一位指针)、21H单元(个位指针)和22H元(十位指针)应遵循十进制加法的原则,有进位时相应各位应作出相应地变化;当K2有键时,23H单元减1指向前一Dn时, 20H单元也相应减1指向前一字符,并且20H, 21H, 22H三个单元的数据指针应遵循十进制减法原则,有借位时相应的各位须作出相应地变化。按照这一算法只要控制TAB1表格数据指针不超出表格的长度就能使显示值与输出值保持一一对应的关系,即显示器能准确地显示出电源输出电压值的大小,达到电设计的目的。由于理论计算与实际情况还存在着一定的差异,为了使显示值更加接近实际输出值,本电需要对输出电压进行校正。
硬件调试:首先检查整个电,电连接完好,没有明显的错接,漏连。接上电源,电源类亮,数码管显示初始电压值+5V,用万用表的两只表笔测试LM317的输出电压为4.96V。当按下S1键一次,数码显示电压值变为4.9V,万用表读数变为4.85V.再按下S2键一次,数码显示电压值变为5.0V,万用表读数再次变为4.96V.通过改变显示电压值,用万用表测得几组输出电压数据见表1:
误差原因分析:(1)工作电源不够稳定,不能为数字集成块提供精确工作电压;(2)电参数设定不够精确;(3)提供给D/A转换的参考电压不够精确,使得转换过程存在误差;(4)单片机的P0口传输给D/A转换的数据不够准确,使得输出出现误差;(5)系统缺少电压电流采样电。
模块必须用信号调制才能正常工作,常见的固定码编码器件如PT2262/2272,只要直接连接即可,非常...
一、五大内存分区 内存分成5个区,它们分别是堆、栈、存储区、全局/静态存储区和常量存储区。
先说一下两种单片机下载程序是要用到的引脚:STC的下载引脚为P3.0、P3.1,也就是RXD和TXD...
PLC是应用单片机构成的比较成熟的控制系统,是已经调试成熟稳定的单片机应用系统的产品。有较强的通用性...
首先是蓝牙APP, 易编写的,说编写其实我只是修改了其中的一些内容,两张界面和代码截图,非常简单...
初学AVR的人难免会碰到心爱的单片机熔丝位锁死,直接的烦恼。绝大部分情况是我们的工作时钟源设置错...
单片机与PLC编程的区别 单片机与PLC的程序设计有很大的区别,单片机的全部程序都是用户设计的,PL...
单片机设计要注意的事项总结 1.降低外时钟频率 外时钟是高频的噪声源,除能引起对本应用系统的干扰之外...
学什么单片机最有前途? 这是单片机初学者经常问的问题。对于这个问题,我想没有人敢下。因为每一种单...
弄清楚跑马灯的显示状态后可以开始进行设计了, 在日常的跑马灯设计电中LED灯一般接为这两种形式...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第七日:定时器原理应用与PWM学习...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第十日:EEPROM读写与DS13...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第五日:键盘和矩阵键盘原理及应...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第三日:AVR单片机IO口知识及发...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第四日:数码管显示原理和数码管驱动...
本视频将使用MPLAB®代码配置器(MCC)向大家展示USB时钟的基本设置。 演示中将使用16位单片...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第三日:AVR单片机IO口知识及发...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第八日:10位ADC和DAC的应用...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第八日:10位ADC和DAC的应用...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第九日:异步串行通信USART接口...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第三日:AVR单片机IO口知识及发...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第九日:异步串行通信USART接口...
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单...
单片机应用的核心技术是什么?是按键,数码管,流水灯,串口。是它们的程序框架。按键和数码管是输入是...
单片机的基准电压一般为3.3V,如果外部信号超过了AD测量范围,可以采用电阻分压的方法,但是要注意阻...
PIC32MZ EF 32位单片机——带FPU的嵌入式连接系列介绍,该器件拥有更佳的性能、浮点单元、...
MPLAB® Harmony是针对PIC32单片机的完善软件开发框架,经估算,对于典型项目的开发时间...
早在20世纪60年代,就已经有人开始研究和开发嵌入式操作系统。但直到最近,它才在国内被越来越多的提及...
本模块可以将4.5V到35V的直流输入电压转换成±4.5V-±35V的交流电压,模块采用STM32F...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第六日:中断及中断键盘应用,非常重...
下面是一款Android手机通过蓝牙模块与单片机通信单片机程序,单片机可以使用以下51单片机:AT8...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第十日:EEPROM读写与DS13...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第一日:AVR单片机软硬件配置入门...
其电很简单,一个LED通过限流电阻接到VCC电源。I/O设置为输出方式。我们可以用下面的宏来定义L...
最近有个项目,需要一个继电器,接收到低电平就动作,用的STC15W104、使用的市面上的开关电源5V...
相比较于模拟电的误差,数字电精确度得到很大的提高,单片机本质上也是数字电,但与我们平常所说的传...
事情很简单先前做的一款采集数据的产品不知道为何异常,陷入死循环然后“死机”,分析了很多次,没发现原因...
有些用于工控的项目,不要用无源晶振的方法来起振,而是直接接有源晶振。也是主要由于无源晶振需要起振...
欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》,这是第二日:AVR单片机概述及熔丝位特...
复位源是导致单片机内部复位操作的源泉,大致可分为七种:上电复位(POR)﹑人工复位(MRST)﹑电源...
Keil有很强大的软件仿真功能,通过软件仿真可以发现很多将要出现的问题,Keil的仿真可以查看很多硬...
然后开始写操作系统前置:ucos(嵌入式操作系统)系统宏定义,系统功能配置,系统头文件,初始化文件,...
首先说一下键盘检测,在单片机外围电中 ,通常用到的按键都是机械弹性开关,当开关闭合时,线导通...
对于按键的博文中所提到的配合数码管显示的实例中,由于我们数码管显示函数display() 位于主...
矩阵键盘又称为行列式键盘,它是用4条I/O线条I/O线作为列线组成的键盘。 在行线和列...
本文实现了基于遗传算法的硬件演化过程。通过Mcu随机产生种群,选择好的基因进行交叉变异产生后代,然...
打开包装可以看到开发板也有类似风格,薄薄小小的一块,但是芯片的各个管脚都引了出来,方便用户开发,不方...
在目前MCU应用领域里,很多场合都离不开开关信号,这些开关信号的实现都是通过按键操作实现。而传统的按...
效率上来说,延时消抖花费时间在无意义延时上,而相对较好的定时轮询还是不可避免的在轮询,而现在这种方式...