基于51单片机数控步进直流稳压电源

合集下载

基于MCS-51单片机的数控开关稳压电源

基于MCS-51单片机的数控开关稳压电源

基 于 MC S - 5 1 单 片 机 的 数 控 开 关 稳 压 电 源
王 君 阳 , 李业辉 , 杨 鹏 骆 , 于鹏 伦
( 1 . 中北 大学 朔 州校 区 , 山西 朔州 0 3 6 0 0 0 ; 2 . 中北大学 信息商务学 院, 山西 晋 中 0 3 0 6 0 0 )
通缱 电 . 潦 】 - =
2 0 1 7 年 9 月 2 5日第 3 4卷第 5 期
Te l e c o m P o we r Te c h n o l o g y S e p .2 5 ,2 0 1 7,Vo 1 .3 4 No . 5
d o i : 1 0 . 1 9 3 9 9 / j . c n k i . t p t . 2 0 1 7 . 0 5 . 0 1 5
WANG J u n - y a n g ,LI Ye - h u i ,YANG P e n g - l u o ,YU P e n g - l u n 2
( 1 . S h u o z h o u Ca mp u s ,No r t h Un i v e r s i t y o f Ch i n a ,S h u o z h o u 0 3 6 0 0 0 ,Ch i n a ;
2 . Co l l e g e o f I n f o r ma t i o n a n d Bu s i n e s s ,No r t h Un i v e r s i t y o f Ch i n a, J i n g z h o n g 0 3 0 6 0 0,Ch i n a )
me r i t s u c h a s h i g h p r e c i s i o n ,s ma l l r i p p l e ,h u ma n - c o mp u t e r i n t e r a c t i o n f r i e n d l y ,c a n b e wi d e l y u s e d i n s c i e n t i f i c r e s e a r c h, e x p e r i me n t ,t e a c h i n g a n d o t h e r o c c a s i o n s . Ke y wo r d s :M C 2 %5 _ 1 s i n g l e - c h i p;BUC K c o n v e r t e r ;p u l s e wi d t h mo d u l a t i o n;n u me r i c a l c o n t r o l p o we r s u p p l y

基于51单片机的数控直流稳压电源制作

基于51单片机的数控直流稳压电源制作

• 50•本文是基于51单片机为核心,设计制作了一种数控稳压电源。

硬件方面包括稳压电路、反馈电路、按键电路、显示电路以及支持单片机运行的复位和时钟电路,经过稳压部分构成反馈,稳压后获得稳定的0~12V的稳定步进0.1V可调节电压,并通过A/D采样反馈后,在LED数码管显示实现数控。

引言:常规的稳压电源为串联调整线性稳压电源,作为小功率直流电源时,其电路简单、纹波小、电磁兼容性好、在稳压精度高,可以给设备带来稳定的直流电。

本设计数控稳压电源是在此基础上增加可步进调节的数控功能,并且避开传统稳压电源电位器易磨损、不易校准,读书不直观等问题。

可以清楚、方便的调节输出电压。

常规的稳压电源为串联调整线性稳压电源,作为小功率直流电源时,其电路简单、纹波小、电磁兼容性好、稳压精度高,可以给设备带来稳定的直流电。

1.系统功能解释系统原理框图如图1所示,本系统以STC- 89次2单片机为核心,外围电路有:稳压电路、反馈电路、按键电路、LED 数码管显示电路。

该项设计利用51单片机程序担任主控的任务,控制D/A 的输出大小,信号流过LM358运放,IRF9Z24N 场管在这三个器件的电路中形成负反馈,让输出电压可以被稳定下来。

接着用电位器分压把一部分的输出信号反馈到运放上,通过调节电位器,让输出准确度可以被调节,51还连接按键电路,当按键被按下,程序开始判断,然后根据程序输出信号,最后通过A/D 采集电压信号反馈到单片机并在LED 上显示,最终完成在0到12V 内可以0.1V步进调节输出的功能。

图1 系统原理图2.系统硬件设计介绍硬件连接框图如图2,其硬件总图如控直流稳压电源师范大学物理与电子科学图3,下面将分电路模块对该电源系统进行详细介绍。

图2 硬件系统框图该项设计利用单片机STC89C51作为主控芯片, 该项设计51单片机输入程序担任主控的任务,控制D/A 的输出大小,信号流过LM358运放,IRF9Z24N 场管在这三个器件的电路中形成负反馈,让输出电压可以被稳定下来。

基于单片机的数控直流稳压电源设计方案

基于单片机的数控直流稳压电源设计方案

基于单片机的数控直流稳压电源设计方案一、设计方案简介基于单片机的数控直流稳压电源设计方案主要是通过单片机控制开关电源的开关管,控制输出电压的稳定性和精度。

本设计方案采用闭环控制的方式,通过反馈电路将输出电压反馈给单片机,单片机根据反馈信号控制开关电源的开关管进行开关操作,以实现电源输出电压的稳定。

二、设计方案详细介绍1.系统总体设计:本设计方案将开关电源分为输入电源模块、控制模块和输出电源模块。

输入电源模块主要是对输入电压进行滤波和稳压,以保证输入电源的稳定性;控制模块主要是使用单片机进行控制,接收反馈电路的反馈信号,根据设定值进行比较,并控制开关电源的开关管进行开关操作;输出电源模块主要是将开关电源的输出电压经过滤波和稳压处理,以保证输出电压的稳定性和精度。

2.输入电源模块设计:输入电源模块主要是对输入电压进行滤波和稳压处理,保证输入电源的稳定性和安全性。

常用的电源滤波电路有LC滤波电路、RC滤波电路等。

同时,可以使用稳压芯片来实现输入电压的稳压。

3.控制模块设计:控制模块使用单片机进行控制,主要是通过反馈电路将输出电压反馈给单片机,并经过AD转换后与设定值进行比较。

根据比较结果,单片机控制开关电源的开关管进行开关操作,调整输出电压的稳定性。

在控制过程中,可以设置合适的控制算法,如PID控制算法,以提高控制的精度和稳定性。

4.输出电源模块设计:输出电源模块主要是对开关电源的输出电压进行滤波和稳压处理,以保证输出电压的稳定性和精度。

常用的电源滤波电路有LC滤波电路、RC滤波电路等。

可以使用稳压芯片或者反馈调节电路来实现输出电压的稳压。

5.电源保护设计:为了保护电源和设备的安全性,可以设计过压保护、欠压保护、过流保护、短路保护等保护电路。

过压保护可以使用过压保护芯片,欠压保护可以使用欠压保护芯片,过流保护可以通过电流传感器实现,短路保护可以通过保险丝或者短路保护芯片实现。

三、设计方案的优势和应用1.优势:本设计方案采用闭环控制的方式,通过反馈电路将输出电压反馈给单片机,使得输出电压的稳定性和精度得到保证。

51单片机数控步进直流稳压电源程序

51单片机数控步进直流稳压电源程序

文章导读:本程序为51单片机数控步进直流稳压电源程序,实现数控步进直流稳压电源的功能。

//SPI传送数据子程序void SPILED(data){SSPBUF=data;// 启动发送do {;}while(SSPIF==0);SSPIF=0;}//显示子程序void display(){SPIINIT();//spi方式显示初始化RA5=0;//准备锁存for(COUNTW=0;COUNTW<4;COUNTW++) {data=s[COUNTW];if(COUNTW==1) data=table0[data];//第二位需要显示小数点else data=table[data];SPILED(data);//发送显示段码}for(COUNTW=0;COUNTW<4;COUNTW++){data=0xFF;SPILED(data);//连续发送4个DARK,使显示看起来好看一些}RA5=1;//最后给一个锁存信号,代表显示任务完成}//I2C总线输出数据子程序void i2cout(){i2cint();//因为SPI输出和I2C输出不能同时工作,则需要//不断在两种方式见切换SEN=1;//产生I2C启动信号for(i=0x02;--i;) continue;//给予一定的延时,保证启动do {RSEN=1;//产生I2C启动信号}while(SSPIF==0);//如果没能启动,则反复启动,直到启动为止SSPIF=0;//SSPIF标志清0SSPBUF=0X58;//I2C总线发送地址字节do {;}while(SSPIF==0);//等待地址发送完毕SSPIF=0;//SSPIF标志清0SSPBUF=0X01;//I2C总线发送命令字节do {;}while(SSPIF==0);//等待命令发送完毕SSPIF=0;//SSPIF标志清0SSPBUF=TXDATA;//I2C总线发送数据字节do {;}while(SSPIF==0);//等待数据发送完毕SSPIF=0;//SSPIF标志清0PEN=1;//产生停止条件do {;}while(SSPIF==0);//等待停止条件产生SSPIF=0;//SSPIF标志清0}//步进加子程序void BJADD(){R1++;TXDATA=TXDATA+2;if(R1>9) {R1=0;R2++;if(R2>9) {R2=0;R3++;}}if((R3==1)&&(R2==2)&&(R1==1)){R3=0;R2=0;R1=0;//若R3,R2,R1超过120,则又从0计起TXDATA=0;}sfz();//把需要显示的数字装入显示缓冲数组}//步进减子程序void BJSUB(){R1--;TXDATA=TXDATA-2;if(R1==0XFF) {R1=9;R2--;if(R2==0XFF) {R2=9;R3--;if(R3==0XFF) {R3=1;R2=2;R1=0;//若R3,R2,R1小于0,则又从120计起TXDATA=0XF0;}}}sfz();//把需要显示的数字装入显示缓冲数组}//主程序main(){initial();//系统各寄存器初始化display();//调用一次显示子程序while(1) {i2cout();//调用I2C子程序,启动D/A转换KEYSCAN();//键盘扫描keyserve() ;//若确实有键按下,则调用键服务程序if(BJF==0X01) BJADD();//若步进加标志为1,则调用步进加子程序else BJSUB();//若步进加标志为0,则调用步进减子程序display();//调用一次显示子程序}。

基于51单片机的数控直流稳压电源

基于51单片机的数控直流稳压电源

基于51单片机的数控直流稳压电源作者:姚佳楠程一哲闫鑫博来源:《电脑知识与技术》2017年第28期摘要:采用降压整流滤波电路、单片机控制电路、D/A转换电路、负反馈运放电路和数码管显示电路作为数控稳压电源的主要组成部分。

输出电压可在0-10V范围实现稳定连续的0.1V步进升降调节。

所设计的直流电源由51系列单片机进行数字调压控制,有响应迅速、输出电压稳定度高、线路结构简单、调压操作方便和易于使用等优点。

关键词:数控直流稳压电源;D/A转换;51单片机;数字调压中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)28-0244-021 概述生活中处处可见数控直流电源,它广泛应用于实验教学、科学研究和电子设备等多种领域。

市面上的直流电源目前多属于单一电压输出的稳压电源,其效率低、输出电压误差大,无法实时调节输出电压值,具有一定的应用局限性。

本文设计的数控直流稳压电源弥补了传统电源的缺点,它具有电源输出电压精确、操作方便、稳定性高、数码显示且输出电压值可在一定范围内任意调节的优点,具有更广泛的应用前景。

2 系统概述本文将介绍由控制电路、数模转换电路、显示电路、电压比较调整电路等部分组成的一种数控直流稳压电源。

整机的控制单元采用51系列单片机,系统先通过输入单片机数字量的改变来调节比较电压值的大小,然后再通过集成运放比较器和可调电阻的比较和调节,来实现改变输出电压大小的功能。

本系统的主要特点如下:1、输出直流电压范围为0-10V;2、可以步进调节输出直流电压值,且步进电压为0.1V;3、输出电压的增和减由两个按键分别控制;4、具有一键设定指定电压值的功能。

3 硬件系统设计硬件电路的设计组成框图如图1所示。

该硬件电路主要包括:单片机电路、数/模转换电路、电压比较调整电路、按键电路以及显示电路等几个部分。

当使用键盘控制输出电压数值时,可通过步进的方式把所需要的输出电压值输入到单片机中。

基于51单片机的数控可调直流稳压电源设计

基于51单片机的数控可调直流稳压电源设计

1概述
稳压 电源是各类 电器必 不可 少的能 源 动力 , 要求有较高 的稳定性和实用性【 1 ] 。 利用 单片机对直流稳压电源进行控制 , 可改善稳 压电源的性 能 , 且使用方便灵活 , 成 本较 低 , 同时通过改进控制系统软件 ,扩展其功能 , 可在不 增加硬件 开销 的壳体 下提高 电源 的 性价 比。本 文利用 5 l 单片机设计数控可调 的直流稳压电源 , 通过系统设计实现数控直 流稳压电源的智 能化 、数字化 和模块化 , 其 中智能 化主要表现 在系统有 可编程模 块能 对 系统进行智能控制 ; 数字化主要表现在系 统 输出 电压通过 L C D液 晶显示 ,并且能通 过 按键 对输 出电压 进行连续 步进数字 化调 节; 模块化主要表现在系统有各个相关模块 组成 , 提高 了系统的可靠性。 2 系统要求与方案选 择
2 . 1 系统 要 求
显 示 电 路 I ・ 堕 D 来自 A 转 . 换 l I l
’ r
按键
茂 机 放大 电路
输 出
电 路
1 r
{ 变 压 器 } _ - ◆ 整 流 滤 波卜 + 。 褪 压 电 路 l
图 1总体设计框图
第二个和第三个加减 1 V, 第 四个确认 输出。4 * 4 本文设 计的数控稳压 电源要求如下 :当输入交 流电压为 2 2 0 v 和十位 电压 的加减 , 的矩阵键 盘 , 可 以设 置 0 — 9和步进 , 小数 点等按键 , 可以快速 的输 时, 输出 电压连续可调 ; 使 用按 键调节电压 , 在0 - 9 . 9 V范 围内可调 , 入 。但是 4 * 4 键盘 占用的 P C B面积较 大 , 增加 了 P C B的成本 , 增加 调 整幅度为 0 . 1 V ; 采用 4 按键方 式 , 第一个 选择个位和十位 电压的 了 P C B的布线 难度 , 并且得 占用 8 个单片机 I / 0口; 采用 4 按 键虽 加减 , 第二 个和第三个加 减 1 v, 第 四个确认输 出 ; 显 示设定 电压 和 不 能直接 输入 0 — 9 , 但 是可 以通过 “ + ” 和“ 一 ” 来实现 0 - 9数 字 的输 测量 电压 , 显示精度为 0 . 1 v, 显 示方式 L C D液 晶显示 ; 利用单 片机 入, 这样只 占用 了 5 个单片机 I / O口, 节约 3 个I / O 口, 同时 P C B的 作为控制芯片 。 面积和成本也进一步缩小 。综上所述 , 本文选择方案二。 2 . 2方案选择 2 . 2 . 4控制 电路芯片的选 择 2 . 2 . 1 D A的选择 本设计 以 5 l 单片机为核心 ,因为它能实现对其他外 部电路实 方 案一 :8位 D A C 0 8 3 2芯片 ;方案二 : l 0位 D A, T L C 5 6 1 5芯 现简单 的控制 , 使其电路相较于使用模拟器件连接更 为简单 。 片 ;方 案 三 :采 用 内 部 自带 基准 源 的 l 2 位D A , M A X 5 3 1 芯片。 3 系统设计思路及原理 D A C 0 8 3 2 芯片其 价格低廉 、 接 口简单 、 转换控制容易 , 早 已在单 片机 3 . 1系统框 图结构的设计 应用系统 中得到广泛 的应用 ; T L C 5 6 1 5芯片为 l 0位 D A,虽然输 出 本设计包括硬件 、 软件两 部分 。硬件设 计主要包括单 片机 最小 精度高 , 但接 口稍复杂 , 同时该 D A芯片价格 昂贵 ; MA X 5 3 1 芯 片内 系统模块 、 变压器 、 稳压 电路 、 放大电路 、 D / A转换 、 显示 电路几个部 部 自带 2 . 0 4 8 V基准源 , 输 出精 度高。综 合考虑成本等因素 , 本文选 分组成 的稳压电源。 软件设计主要包括初始化程序 、 中断程序 、 按键 择D A C 0 8 3 2芯片 , 即方案~。 扫描控制程序。系统 的框 图结构如图 1 所示 。 2 . 2 . 2 显 示 电路 的选 择 3 . 2 系统工作原理 方案一 : 采用 四位共 阳极数码管显示 , 动态扫描显 示方 式 ; 方案 如 图1 所示 , 该稳压 电源 系统最终 要实现电压准确且稳定 的输 二: 采 用液晶显示屏 L C D显示。四位共 阳极数码管成本低廉 , 但显 出。 具体设计思路 : 外接 2 2 0 V的交流电源经过整流滤波后得到稳定 示灵活性及可调性较差 , 硬件驱动 电路复杂 ; 而液 晶显示屏 L C D显 的给上述各 部分单元提供工作 电源 , 其 中整 流电路是利用二极 管的 示 方便 清晰 , 可变性和可调性突 出, 与单 片机硬件 电路 的连 接简单 , 单 向导电性将正 负变化 的交流电压变为单 向脉动电压的电路 。 在交 程序设 计也较为灵 活 , 成为单片机输 出显示 的首选 。随着其成本 的 流 电源 的作用下 , 整流二极 管周 期性地导通和截止 , 使 负载得到脉 不断降低 , 模块化程度不断提高 , 应用领域 E t 益增 多。综上 所述 , 本 动直流电。 在电源的正半周 , 二级管导通 , 使负载上的电流与电压波 文选择 方案二。 形形状完全相 同 ; 在电源 电压 的负半周 , 二极管处于反 向截止状态 , 2 . 2 . 3输入按键 的选择 承受电源负半周 电压 , 负载电压几乎 为零 。然后再利用独立键盘给 方 案一 : 采用 4 * 4键盘 ; 方案二 : 采用 4按键 , 第一个选择 个位 单片机设定 预输 出值 , 并通过 D A C 0 8 3 2芯片转化为模拟量 , 再 经过

课程设计-基于51单片机的数控直流电源设计.doc

课程设计-基于51单片机的数控直流电源设计.doc
图3-2-5按键模块原理图
3
为了实现设定电压数据的掉电保护,我在系统中连接了EEPROM24C02B,保证了在行驶过程中,如果数控电源意外掉电,已经设定的电压数据能够下来。
24C02B是ATMEL公司生产的一款256 byte的串行EEPROM,能重复擦写1,000,000次,记录的信息能保存100年以上,而且与单片机的连接只要2根线。24C02的接图如图3-2-6所示。
随着科学技术的不断发展,特别是计算机技术的突飞猛进,现代工业应用的工控产品均需要有低纹波、宽调整范围的高压电源,而在一些高能物理领域,更是急需电脑或单片机控制的低纹波、宽调整范围的电源。
1.2
本设计给出的数控直流稳压电源的输出电压范围为0~13V,额定工作电流为0.5A,并具有“+”、“-”步进电压调节功能,其最小步进为0.05 V,纹波不大于10 mV,此外,还可用LCD液晶显示器显示设定电压值和输出电压值。
图3-2-6EEPROM拓展模块原理图
3ቤተ መጻሕፍቲ ባይዱ
显示模块主要由TLC1543及LCD液晶显示屏组成。由美国德州公司生产的TLC1543,是具有10位分辨率的AD转换器,,它具有11路模拟输入通道及3路内置自测试方式,具有显著的优点。LCD液晶屏幕采用1602,能够显示16X2个字符。由输出端采样得到的模拟信号,输入到TLC1543的其中一路模拟输入通道IN0,通过AD转换,TLC1543将模拟量转化为10位数字量输入到单片机相应的IO口。通过处理,单片机将模拟量值通过1602液晶显示出来。显示模块的接图如图3-2-7所示。
方案三:用D/A和运算放大器做电流源,即采用D/A输出调节晶体管的偏值电流(电压),使用电压采样电路,通过A/D转换实现闭环控制。采用此方案是对方案二的改进,能有效的缩短调节时间,进一步提高输出精度。设计方案,其主要由微控制器模块、D/A转换模块、电压调整模块、显示模块、键盘模块、电源模块六部分构成。液晶屏显示电路,该系统使用LCD1602液晶显示屏,可以清晰地显示分别组成显示电路的十位、个位、小数点位,同时还能显示英文名称和电压/电流单位。

基于单片机的数控直流稳压电源设计与制作

基于单片机的数控直流稳压电源设计与制作

基于单片机的数控直流稳压电源设计与制作数控直流稳压电源是一种能够稳定输出直流电压的电源装置。

它通常由一块单片机控制,并通过反馈回路来实现对输出电压的稳定调节。

本文将介绍基于单片机的数控直流稳压电源的设计和制作过程。

首先,我们需要选择合适的硬件设备。

单片机选择常见的51系列单片机,如STC89C52,因为该系列单片机性能稳定且价格相对较低。

稳压电路中的关键元件包括电源变压器、整流电路、滤波电路、稳压电路和输出电路。

电源变压器用于将市电的交流电转换为所需的直流电级。

整流电路将交流电转换为直流电,滤波电路用于滤除电路中的杂波和纹波。

稳压电路根据单片机反馈信息来调节输出电压,并通过输出电路提供稳定的电压给负载。

接下来,我们需要进行电路设计。

根据所需输出电压和电流,选择合适的电源变压器和稳压集成电路。

通过计算得到电路中各个电阻、电容和二极管的参数,以保证电路的稳定性和可靠性。

在电路设计中,还需要考虑到过流保护、过压保护和温度保护等功能,以确保设备的安全使用。

设计完成后,我们需要进行电路的制作。

根据设计图纸,将电路图转移到电路板上,并通过化学腐蚀或电解腐蚀的方法将电路板制作完成。

然后,将各个元件按照电路图的要求焊接到电路板上。

注意焊接时要保证引脚的正确连接,避免引脚之间的短路和虚焊现象。

接下来,我们需要编写单片机的程序。

程序中需要实现对输入电压和输出电压的采样,通过ADC(模数转换器)将模拟信号转换为数字信号,然后通过PWM(脉冲宽度调制)技术来控制输出电压的调节。

在程序中,还需要实现对电压的稳定调节和保护功能的控制。

需要注意的是,在设计和制作过程中,要遵循电气安全和电磁兼容性的要求,确保设备的正常运行和使用安全。

总结起来,基于单片机的数控直流稳压电源设计与制作涉及到硬件设备的选择、电路的设计、电路的制作、程序的编写和调试测试等方面,需要一定的电子技术和单片机编程知识。

希望本文对读者有所帮助,能够指导大家在实际应用中进行数控直流稳压电源的设计和制作。

基于单片机的数控直流稳压电源的设计与实现与实现毕业设计

基于单片机的数控直流稳压电源的设计与实现与实现毕业设计

1?引言直流稳压电源是电子技术常用的设备之一,广泛的应用于教学、科研等领域。

传统的多?功能直流稳压电源功能简单、难控制、可靠性低、干扰大、精度低且体积大、复杂度高。

普?通直...1 引言直流稳压电源是电子技术常用的设备之一,广泛的应用于教学、科研等领域。

传统的多功能直流稳压电源功能简单、难控制、可靠性低、干扰大、精度低且体积大、复杂度高。

普通直流稳压电源品种很多.但均存在以下问题:输出电压是通过粗调(波段开关)及细调(电位器)来调节。

这样,当输出电压需要精确输出,或需要在一个小范围内改变时(如1.02~1.03V),困难就较大。

另外,随着使用时间的增加,波段开关及电位器难免接触不良,对输出会有影响。

常常通过硬件对过载进行限流或截流型保护,电路构成复杂,稳压精度也不高。

本文设计与实现了一种以单片机为核心的智能化高精度简易直流电源,克服了传统直流电压源的缺点,具有很高的应用价值。

2 系统硬件设计与实现2.1 系统总体结构本系统是以AT89S51 单片机为核心控制器,具有电压可预置、可步进调整、输出的电压信号和预置的电压信号可同时显示的数控直流电源,其硬件原理方框图如图1 所示。

系统由AT889S51 控制电路、键盘电路、电源电路、D/A 电路、功放电路、短路保护及报警电路、稳压输出电路、LED 显示电路八部分组成。

系统通过“开关”、“+”、“-”三个按键来控制预置电压的升降,并通过数码管显示。

AT89S51 单片机送出相应的数字信号,在D/A 转换之后输出电流,经集成运放LM358 转换、三极管放大、RC 网络滤波,最终稳定。

同时由LED 数码管显示输出电压;由数字电压表测量实测值。

2.2 数控部分主要由AT89S51 最小系统控制,它要完成键盘控制、预置电压显示控制、短路保护控制及报警控制等功能。

AT89S51 最小系统如图2 所示。

2.2.1 键盘接口电路键盘接口电路如图 3 所示。

键盘设计与实现由三个按键控制即:“开关”键、“+”键、“-”键,并外接三个上拉电阻控制键盘去抖。

基于51单片机的直流数控电源设计

基于51单片机的直流数控电源设计

基于51单片机的直流数控电源设计标题:基于51单片机的直流数控电源设计正文:一、设计背景随着科技的不断发展和进步,电子技术在工业、医疗、交通、家庭等领域中的应用越来越广泛。

而在这些领域中,直流电源的需求十分重要。

传统的直流电源虽然能够满足一定程度上的需求,但相较于智能化、高效化的直流数控电源却存在种种不足。

针对这一情况,基于51单片机的直流数控电源应运而生。

本文将对其设计进行阐述。

二、数控电源的基本要求在电源设计之初,需要制定基本的电源要求。

一方面,直流数控电源应能够提供充足的电源输出(常规为50V),同时具备较强的稳定性和可靠性;另一方面,电源应兼顾功率控制和电流控制的需求,在使用真空管、半导体器件等时,对于转换效率和响应时间也有一定的要求。

三、电路设计技术指标明确后,进入电路设计阶段。

本设计基于51单片机+PWM实现,其主要流程包括:输入、心形预放大、PWM使能/停止、保护电路、过流保护等。

1. 输入:本设计采用串口输入,是最常用的方式。

2. 心形预放大:通常,用三极管实现预放大。

3. PWM使能/停止:使用PWM实现电流和电压的调节,从而实现精准控制。

4. 保护电路:在设计之初,应加入防爆、过压、恒流等保护。

5. 过流保护:过流保护在实际使用中十分重要,可以避免硬件损坏,保证智能化的数控电源的长期使用效果。

四、实现流程当数控电源运行后,按下电源开关,开启电源,中间的方型LED灯亮,表明电源运行正常。

通过上位机串口调节不同的参数,包括电荷电压、电流限制、电流保护等。

电压的调节基于DAC输出,电流的调节由微控制器PWM实现。

当实现各项参数的设定后,按下返回键,数据将被保存至EEPROM浮点存储器中,在下次开机后可实现自动恢复设置。

五、结尾数控电源的设计是目前智能化电源控制的重点研究方向,本设计采用基于51单片机、PWM和保护电路相结合的方案,实现业内对于电源的要求。

在未来的发展中,数控电源的应用将逐渐普及,有望在智能工厂、汽车电子等领域发挥出更大的作用。

基于单片机的数控直流稳压电源

基于单片机的数控直流稳压电源

基于单片机的数控直流稳压电源在电子设备中,直流稳压电源是非常重要的一部分,它能够为其他电路、芯片或者整个系统提供稳定可靠的电源供应。

而基于单片机的数控直流稳压电源技术则能够在一定程度上提升电源的稳定性和可调性,本文将介绍基于单片机的数控直流稳压电源的原理和设计。

1. 引言直流稳压电源在各种电子设备中都起着至关重要的作用。

传统的直流稳压电源主要采用稳压二极管、稳压管等元件,无法实现精准的控制和调节。

而基于单片机的数控直流稳压电源通过单片机的控制和监测,能够实现电源输出的精确控制和稳定性。

2. 设计原理基于单片机的数控直流稳压电源采用了反馈控制的原理,通过单片机对电源输出进行监测和调节。

其基本原理如下:首先,将输入交流电源经过整流和滤波,得到稳定的直流电压。

然后,通过单片机的模数转换功能,将电源输出电压转换为数字信号。

单片机通过比较这个数字信号与设定值,计算出控制电源输出的PWM 信号。

接下来,PWM信号经过数模转换后,通过放大电路驱动功率开关管。

功率开关管的导通与截止控制决定了电源的输出电压。

单片机通过不断调整PWM信号的占空比,实现对电源输出电压的精确调节。

同时,通过单片机监测电源输出电压的实际值,并与设定值进行比较,若存在偏差,则单片机通过反馈控制的方式调整PWM信号,使电源输出电压保持在设定值附近,从而实现直流稳压电源的功能。

3. 设计步骤基于单片机的数控直流稳压电源的设计步骤如下:3.1 硬件设计根据需要设计输出电压范围和电流容量,选取适当的元器件。

包括整流滤波电路、模数转换电路、功率开关管和放大电路等。

3.2 软件设计编写单片机的控制程序,实现电源输出的精确控制和稳定性。

包括模数转换、PWM控制和反馈控制等功能。

3.3 系统集成将硬件电路和单片机控制程序进行集成,进行系统调试和优化。

通过实验和测试,不断优化电源的稳定性和可调性。

4. 应用示例基于单片机的数控直流稳压电源的应用非常广泛。

例如,可以应用于实验室、工业自动化、通信设备等领域。

基于51单片机的数控电源设计

基于51单片机的数控电源设计

基于51单片机的数控电源设计本文介绍了以51系列单片机为控制单元,以数模转换器DAC0832输出参考电压,以该参考电压控制电压转换模块LM350的输出电压大小。

该电路设计简单,应用广泛,精度较高等特点。

引言目前所使用的直流可调电源中,几乎都为旋纽开关调节电压,调节精度不高,而且经常跳变,使用麻烦。

利用数控电源,可以达到每步0.1V的精度,输出电压范围0~15V,电流可以达到2A。

系统结构图1:硬件系统结构图对选用芯片说明DAC0832是一款常用的数摸转换器,它有两种连接模式,一种是电压输出模式,另外一种是电流输出模式,为了设计的方便,选用电压输出模式,如电路图所示,Iout1和Iout2之间接一参考电压,VREF输出可控制电压信号。

它有三种工作方式:不带缓冲工作方式,单缓冲工作方式,双缓冲工作方式。

该电路采用单缓冲模式,由电路图可知,由于/WR2=/XFER=0,DAC寄存处于直通状态。

又由于ILE=1,故只要在选中该片(/CS=0)的地址时,写入(/WR= 0)数字量,则该数字信号立即传送到输入寄存器,并直通至DAC寄存器,经过短暂的建立时间,即可以获得相应的模拟电压,一旦写入操作结束,/WR1和/CS 立即变为高电平,则写入的数据被输入寄存器锁存,直到再次写入刷新。

AT24C02是一款常用的可掉电保存数据的ROM,2K比特容量,采用I2C总线操作,关于它的具体操作方法参考相关资料。

点击查看原始图片图2:主硬件电路图图3:参考电压电路图硬件电路设计采用常用的51芯片作为控制器,P0口和DAC0832的数据口直接相连,DA的/CS和/WR1连接后接P2.0,/WR2和/XEFR接地,让DA工作在单缓冲方式下。

DA的11脚接参考电压,参考电压电路如图2所示,通过调节可调电阻调节LM336的输出电压为5.12V,所以在DAC的8脚输出电压的分辨率为 5.12V/256=0.02V,也就是说DA输入数据端每增加1,电压增加0.02V。

开题报告-基于51单片机的数控电压源设计

开题报告-基于51单片机的数控电压源设计
2、查阅、收集、资料,了解红外遥控电子密码锁原理,完成文献翻译、文献综述、开题报告2010.7—2010.9
3、电压源的主要功能的总体框架和硬件电路,对整个系统的实现过程有初步、系统地认识,总体思路基本明确2010.9—2010.10
4、完成系统设计,撰写毕业设计论文,完成实物测试2010.10—2010.11
5、上交毕业设计论文,毕业设计论文答辩2010.11—2010.12
主要参考文献
[ 1 ]吴海波,康长武.分光光度计用高精度恒流源的设计与分析.中国科技论文在线。
[ 2 ]郭继昌,李香萍.张宏涛.基于单片机控制的恒流源的设计[ J ].电子测量与仪器学报, 2000 (4) : 59~63.
[ 3 ]尉广军,朱宇虹.采用集成稳压器构成的恒流源电路[ J ].华北工学院调试技术学报, 2000, 14: 643~646.
选题意义、研究现状及存在问题
随着时代的发展,数字电子技术已经普及到我们生活、工作和科研等各个领域。本文将介绍一种数控直流稳压电源,本电源由直流电源、控制电路、显示电路、数模转换电路、电压放大和射极输出等部分组成。具体说采用51系列单片机作为整机的控制单元,通过改变输入数字量来改变输出电压值,经集成运放放大和射极输出器输出,间接地改变输出电压的大小。与传统的稳压电源相比具有操作方便,电源稳定性高以及其输出电压大小采用数码显示的特点。
[ 4]童诗白,华成英编著.模拟电子技术[M ].北京:高等教育出版社, 2001.
[5]李朝青.单片机原理及接口技术[M].北京:北京航空航天大学出版社,2005.
[6]卢超.分布式矿井温度监测系统的设计[J].煤炭科学技术,2007,(12):××
[7]卢超.单片机同PC机通信的一种新方法[J].矿山机械,2007,(04):××

基于51单片机的数控直流稳压电源设计

基于51单片机的数控直流稳压电源设计

数控直流稳压电源就是能用数字来控制电源输出电压的大小,而且能使输出的直流电压能保持稳定、精确的直流电压源。

本文介绍了利用D/A转换电路、辅助电源电路、去抖电路等组成的数控稳压电源电路,详述了电源的基本电路结构和控制策略。

它与传统的稳压电源相比,具有操作方便,电压稳定度高的特点,其结构简单、制作方便、成本低,输出电压在1-10V之间连续可调,其输出电压大小以0.5V步进,输出电压的大小调节是通过“ ”、“-”两个键操作的,而且可以根据实际要求组成具有不同的输出电压值的稳压源电路。

该电源控制电路选用89C51单片机控制主电路采用串联调整稳压技术具有线路简单、响应迅速、稳定性好、效率高等特点。

关键词:稳压电源、单片微型机;数控直流、D/A转换;第一章绪论 (3)1.1数控直流稳压电源的产生背景 (3)1.2系统开发的意义 (4)1.3系统主要功能 (5)1.4研究中拟解决的主要问题 ............................................. 错误!未定义书签。

第二章系统总体方案设计 ......................................................... 错误!未定义书签。

2.1系统概述.......................................................................... 错误!未定义书签。

2.2系统整体概述.................................................................. 错误!未定义书签。

2.2.1控制部分................................................................ 错误!未定义书签。

2.2.2显示部分................................................................ 错误!未定义书签。

基于单片机的数控直流稳压电源的设计设计

基于单片机的数控直流稳压电源的设计设计

基于单片机的数控直流稳压电源的设计设计数控直流稳压电源是一种能够为电子设备提供稳定直流电压的电源,可以用于实验室、生产线以及科研等领域。

本文将基于单片机对数控直流稳压电源进行设计。

1.设计目标设计一个数控直流稳压电源,具有以下特点:-输入电压范围广,能够适应各种电源电压。

-输出电压范围广,能够满足不同设备的需求。

-输出电压稳定性好,能够保持输出电压在设定值附近波动范围内。

-控制方式灵活,能够通过数控手段来调整输出电压。

2.硬件设计-电源输入部分:使用变压器降低输入电压,并通过整流电路将交流电转换为直流电。

-过滤电路:用电容器对直流电进行滤波,减小纹波。

-脉宽调制(PWM)控制器:使用单片机的PWM输出,控制开关管的导通时间,从而调整输出电压。

-反馈电路:采集输出电压并与设定值进行比较,通过PWM控制器调整开关管的导通时间,使输出电压稳定在设定值上。

3.软件设计-单片机程序设计:编写单片机程序,实现输入输出控制,包括读取输入电压、设定输出电压以及调整PWM输出。

-降压控制算法:根据输入输出电压以及电流等参数,通过控制PWM 输出的占空比,实现对输出电压的调整和稳定。

4.输出保护-过压保护:当输出电压超出设定范围时,通过单片机程序停止PWM 输出,避免对设备的损坏。

-过流保护:当输出电流超过额定值时,通过监测电流大小,控制PWM输出,避免过大电流对设备的损坏。

5.调试与测试-利用示波器等测试工具,对电源的输入输出进行测试,验证稳定性和精度。

-对于过压、过流等保护功能,进行测试验证其可靠性和及时性。

总结本设计基于单片机实现了数控直流稳压电源,能够根据输入和输出的要求,实现电压的调整和稳定。

同时,通过保护电路、控制算法等设计,确保了电源的可靠性和安全性。

在实际应用中,可以根据具体需求进行扩展和优化,以满足更多应用场景的需求。

基于单片机的数控直流稳压电源

基于单片机的数控直流稳压电源

保密类别编号湖北工业大学毕业论文基于51单片机数控直流稳压电源的设计院(系)别(小二号宋体居中)专业班级姓名学号指导教师2014年 4 月 9 日目录一、绪论1.1直流稳压电源 (3)1.2数控直流稳压电源 (3)1.3数控直流稳压电源要求 (3)二、数控直流稳压电源方案设计与论证2.1硬件原理框图 (4)2.2方案简介 (4)2.3单片机选择与论证 (5)2.4DA方案选择 (6)2.5稳压输出选择与论证 (7)2.6显示模块 (8)2.7输入按键 (9)2.8电源模块选择 (9)三、硬件电路设计3.1供电电路设计 (10)3.2 单片机最小系统 (12)3.3DA输出设计 (13)3.4稳压输出 (15)3.5电压采样电路 (18)3.6数码管显示电路 (19)四、系统软件设计4.1系统软件设计流程图 (21)4.2AD转换程序 (21)4.3DA转换程序 (22)五、系统调试与仿真 (23)5.1硬件调试 (23)5.2软件调试 (25)5.3仿真软件protues简介 (26)5.4DA仿真图 (28)5.5AD仿真图 (28)六、总结 (29)基于51单片机数控直流稳压电源的设计摘要:随着科技的日益的发展,电子产品对电源的要求也越来越高。

针对普通直流电源一般不可以调节或调节范围小的缺点设计出了一种可调节,宽调节范围的直流稳压电源。

该直流稳压电源系统以STC单片机公司的12C5408AD单片机为核心,利用8位DA芯片DAC0832作为DA输出,由单片机12C5408AD内部自带AD转换器对输出电压进行采样处理,采用C语言进行程序控制,输出0~+9.9V,扩展0~-9.9V的输出范围,步进0.1V的精确稳压输出。

关键词:直流电流源单片机12C5408AD DAC0832High precision DC current source based on 51 MCUAbstract:With the development of science and technology. Electronic products to the requirements of the power supply is more and more high. For regular direct current voltage stabilizer accuracy is not high, and the adjusting range is small, we designed a direct voltage stabilizer with high precision and wide adjusting range. This system is based on the MCU of 12C5408AD which product by STC. Using a chip DAC0832 which with 8 bit as DA output. By using the MCU internal AD converter to process the output voltage. Use the C language to control the system. So that it can output 0~+9.9V, extend to 0~-9.9 V, and stepping for 0.1V adjustment function.Key words: DC current MCU 12C5408AD DAC0832一、绪论1.1 直流稳压电源简介当今社会人们极大的享受着电子设备带来的便利,但是任何电子设备都有一个共同的电路--电源电路。

(整理)基于单片机的数控直流稳压电源.

(整理)基于单片机的数控直流稳压电源.

基于单片机的数控直流稳压电源一、引言(1)题目要求:利用LM317三端稳压器,设计制作一个数控稳压电源,要求:1、输出电压:2-15V,步进0.1V,纹波≤10mV;2、输出电流0.5A;3、输出电压值由数码管显示,由“+”、“-”键分别控制输出电压的步进(2)概况:直流稳压电源是电子技术常用的设备之一,广泛的应用于教学、科研等领域。

传统的多功能直流稳压电源功能简单、难控制、可靠性低、干扰大、精度低且体积大、复杂度高。

普通直流稳压电源品种很多.但均存在以下问题:输出电压是通过粗调(波段开关)及细调(电位器)来调节。

这样,当输出电压需要精确输出,或需要在一个小范围内改变时(如 1.02~1.03V),困难就较大。

另外,随着使用时间的增加,波段开关及电位器难免接触不良,对输出会有影响。

常常通过硬件对过载进行限流或截流型保护,电路构成复杂,稳压精度也不高。

本文设计了一种以单片机为核心的智能化高精度简易直流电源,克服了传统直流电压源的缺点,具有很高的应用价值。

二、系统设计(1)方案论证:方案:采用单片机控制此方案采用 AT89C51单片机作为整机的控制单元,通过改变输入数字量来改变输出电压值。

这里主要利用单片机程控输出数字信号,经过 D /A 转换器( DA0832)输出模拟量,然后使用运算放大器把电流转换成电压,在通过三段稳压器LM317使得输出电压和输出电流达到稳压的目的。

方案论证:1、输出模块:使用运算放大器做前级的运算放大器,由于运算放大器具有很大的电源电压抑制比,可以减少输出端的纹波电压。

使用LM317做电流稳压器,把电流稳定到0.5A。

2、数控模块:采用AT89C51单片机完成整个数控部分的功能,同时,AT89C51作为一个智能化的可编程器件,便于系统功能的扩展。

3、显示模块:本来准备使用液晶显示,可是想想我们的层次不够,液晶现实的额程序不会写,只能退而其次,选择使用单片机通过锁存器控制8段LED数码管直接显示,这样可以精确的显示输出电压。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数控步进稳压电源》数控步进直流稳压电源的设计与制作摘要随着电子技术的发展,人们对电子产品的精确度与灵活性要求越来越高,其中电子产品中电路对电源的要求也越来越高,可调电源由原来的手动调节开始转变成现如今的步进控制,步进精度可以达到0.1V以下,输出电压范围0~15V,电流可以达到2A。

本文介绍的数控直流步进稳压电源是以AT89S52单片机为控制核心,通过AD/DA转换来步进控制输出电源,并以12864液晶显示器作为显示模块,显示输出电压、电流与功率数值得大小。

关键词:直流稳压电源;单片机;数控;DAC0832;ADC0809;故障报警AbstractWith the development of electronic technology, people on the accuracy of the electronic products and flexibility requirement more and more high, including electronic products to the requirements of the power supply circuit more and more is also high, adjustable power from the original manual adjustment is beginning to change into the nowadays stepping control, step precision can reach 0.1 V the following, output voltage range 0 ~ 15 V, current can be to reach 2 A.This paper introduces the numerical control dc step voltage stabilizer AT89S52 SCM is as control core, through the AD/DA conversion to stepping control output power, and with 12864 LCDdisplay module as shows that the output voltage, current, and power worth size number.Keywords: dc voltage stabilizer; SCM; Numerical control; DAC0832; ADC0809; Fault alarm目录摘要 (1)Abstract (2)第一章方案比较与设计 (5)1.1设计题目及要求 (5)1.2方案比较与选择 (5)1.2.1 控制电路方案比较与选择 (5)1.2.2 显示电路方案比较与选择 (7)1.3 方案设计与论证 (8)1.3.1整体电路的设计 (8)1.3.2总体电路组成框图 (8)第二章电路设计、理论分析 (9)2.1主要电路模块的分析计算与设计 (9)2.1.1控制、稳压电路 (9)2.1.2主控电路 (10)2.1.3显示电路 (11)2.1.4电源电路 (11)2.1.5 报警电路 (12)2.1.6 按键部分 (13)2.2 软件设计 (13)2.2.1程序流程图 (13)第三章测试数据与结果分析 (15)3.1题目要求的测试 (15)设计总结 (17)附录 (19)附录1电路原理图 (19)PCB图 (19)附录2 程序清单 (20)第一章方案比较与设计1.1设计题目及要求基本要求:1、输出电压:范围0V~10V,步进0.1V,可“+”“-”2、LCD12864显示输出电压值3、LCD显示的电压必须与测量的电压完全相等4、电压精度为0.1V发挥部分:1、显示电流值2、显示输出功率3、纹波小于10mV4、蜂鸣报警5、输出精度为0.001V1.2方案比较与选择1.2.1 控制电路方案比较与选择方案一:采用简单数字芯片电路来实现,它是将“+”、“-”信号接入CD4013单稳态电路,克服按键抖动引起的误操作,方波信号可用CD4060产生,利用CD4011及4069实现对CD192“+”、“-”计数的选通,然后通过CD4511译码后送入数码管显示。

缺点制造过程繁琐,而且电路也较复杂。

方案二:采用AT89S52系列单片机为控制核心,利用AD/DA转换,来控制输出电源,如图1.1所示。

用方案二。

1.2.2 显示电路方案比较与选择方案一:采用数码管显示,成本低,亮度高,醒目。

但在显示较多的项目时,硬件电路复杂,功耗较大。

方案二:采用带字库的12864液晶显示屏作为显示模块,它的驱动程序简单,可以显示16行16列汉字。

显示信息量大,外形美观。

课题中需要同时显示电压,电流的设定值和输出值等,要求显示内容丰富。

比较上述2种方案,方案二电路简单、显示信息量大、能很好的满足题目要求,我们采用方案二,如图1.2所示。

1.3 方案设计与论证1.3.1整体电路的设计电路部分主要有:微处理模块,AD/DA转换电路,控制电路,显示电路,保护电路,显示电路等模块组成。

采用单片机作为整机的控制单元,通过改变输出数字量来改变输出电压值,从而使输出调整管的基极电压发生变化,间接地改变输出电压的大小。

为了能够使系统具备检测实际输出电压值的大小,我们通过ADC0809进行模数转换,通过单片机实时对电压进行采样,然后进行数据处理及显示。

采用软件方法来解决数据的步进控制,使系统硬件更加简洁,本系统以直流电源为核心,利用单片机为主控制器,通过键盘来设置直流电源的输出电压,设置步进等级可达0.1V,并可由液晶12864显示实际输出电压、电流与功率值。

利用单片机程控输出数字信号,经过D/A转换器(DA0832)输出模拟量,再经过运算放大器隔离放大,控制输出功率管的基极,随着调整管基极电流的变化而输出不同的电压。

单片机系统还兼顾对恒压源进行实时监控,输出电压经过电流/电压转变后,通过A/D 转换芯片,实时把模拟量转化为数据量,经单片机分析处理,通过数据形式的反馈环节,使电压更加稳定,构成了精确的压控直流步进电压源。

1.3.2总体电路组成框图图1.5电路组成方框图第二章电路设计、理论分析2.1主要电路模块的分析计算与设计2.1.1控制、稳压电路2.1.2主控电路控制电路主要由AT89S52单片机及外围电路、键盘电路等组成。

单片机接收检测电路传输来的信号,经过A/D转换后将电压和电流值显示到液晶上。

该电路能够通过按键设定电源的输出电压值和电流值,通过控制D/A芯片的设定值实现控制输出电压值和电流值。

并根据检测实际输出的电流(压)值与设定值比较后,调整D/A芯片的设定值,使得电源的输出稳定、可靠,如图2.2所示。

图2.1 AT89C52构成的处理模块2.1.3显示电路显示电路采用16行16列的汉字液晶屏显示实际的设定电流值、设定电压值、实际输出的电流值、实际输出电压值。

电压分辨率0.1V。

电流分辨率1mA。

液晶屏能够在设定时显示设定的电压和电流值,如图2.3所示。

图2.3 12864液晶显示模块2.1.4电源电路本电路采用双电源供电,由三端稳压块7812、7912、7805组成,+12V与-12V 供给辅助控制回路芯片LM324。

其他模块由+5V供电,如图2.4所示。

图2.4 电源供电电路2.1.5 报警电路当电流过大时,通过一个光电耦合器驱动报警电路,蜂鸣器发声报警,以示警告如图2.5所示。

图2.5 报警电路2.1.6 按键部分采用独立式按键,按键控制控制电压的步进输出,如图2.6所示。

图2.6按键电路2.2 软件设计2.2.1程序流程图第三章测试数据与结果分析本题目制作完成后,对整体电路的主要指标进行了实际测试。

测试情况如下:3.1题目要求的测试根据题目基本要求和发挥部分的要求,我们按要求条件反复作了多次测试,记录了测试结果,并对测试结果做了分析、对比,如表3.1所示。

题目要求进行了比较、分析。

测试、分析结果:本设计主要指标全部满足了题目基本要求和发挥部分的要求。

设计总结通过这次数控电源的设计,我们的软件设计能力与硬件设计能力都有很大幅度的提高,在这次设计过程中,我们碰到了很多始料未及的问题,当然,碰到问题就要解决问题,这些问题经过我们团队的细心讨论,最终得到解决。

在硬件设计过程中我们做的第一套设计方案是不可行的,最后经大家的讨论将硬件电路重新设计定下第二套方案,由于第二套方案定下后我们已经没有多少时间,在快速绘图制版过程中,我们忽略了一些很重要问题,由于我们做的是双面版所以在做好板子之后要在做好的电路板上更改是一件很困难的事情,但是由于时间问题,我们只有选择在电路板上更改,最后在调试过程中遇到了很多问题,这些问题导致了我们的调试没有成功。

总结这次设计,我发现,团队合作很重要,分工也很重要,合作好了、分工明确了速度也就上来了,还有在设计方案的时候一定要仔细琢磨,不要再做的过程中发现这个方案有问题,定下方案后也要仔细核查,只有前期工作做好了,后期工作才会较顺利,在做自己的任务中要保持一颗细心专一的心态,比如绘制原理图的时候如果有一点小错误,PCB也错,做出来的板子也是不可以用的。

我知道我们离独立自行设计还有一段距离,我们的电路,也是参考了几个的电路,经过自己的修改合并,然后成为自己的东西,我觉得这是我们成长阶段所要经历的。

可是我们也不能拿到别人的一张图就开始做电路,我们要有自己的思想,独立的方案体系,只有慢慢把不是自己的转变成自己的,我们才会不断进步。

致谢感谢这段时间王文海老师与戴俨炯老师耐心的辅导,他们几乎寸步不离的陪我们走过这段苦却乐的日子,王老师与戴老师这段时间为我们劳累,我们需要什么他们就提供什么,不知道的他们来引导,做的不正确的他们耐心的纠正。

时间短暂,但我们很充实,通过项目化得训练我发现自己做事情更加有耐心且细心。

这段时间老师与同学们共同奋斗努力,也作出了一些成果,这里面有大家共同的汗水与乐趣相融合。

附录附录1电路原理图PCB图附录2 程序清单#include <reg52.h>#include<12864.h>//12864显示#include < intrins.h>#include<AD.h>//AD转换#include<DA.h>//DA转换#include<IIC.h>//IIC协议#define uchar unsigned char#define uint unsigned intvoid main(){ key1=1;key2=1;if(read_add(0)==0xff){write_add(0,150);}// 检测IIC内是否有数据,没有就写入数据;num1=read_add(0);iic_init();//IIC初始化lcd_init();//12864初始化SCLK_595=0;RCK_595=1;while(1){display(0,0,"------电源------");AD();DA();write_add(0,num1);/**************串并转换*************/temp=dat;WR_595();OUT_595();}}sbit RS=P1^0;sbit RW=P1^1;sbit E=P1^2;#define uchar unsigned char#define uint unsigned intuchar i;/**************延时子函数 **************/void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=120;y>0;y--);}/*********写指令************************/void write_cmd(uchar cmd){RS=0;RW=0;E=0;P0=cmd;delay(5);E=1;delay(5);E=0;}/************写数据*****************/void write_dat(uchar dat){RS=1;RW=0;E=0;P0=dat;delay(5);E=1;delay(5);E=0;}/*********设定显示的位置*****************/void lcd_pos(uchar X,uchar Y)//X行Y列{uchar pos;if(X==0){X=0X80;}//第一行else if(X==1){X=0X90;}//第二行else if(X==2){X=0X88;}//第三行else if(X==3){X=0X98;}//第四行pos=X+Y;write_cmd(pos);//显示地址}/*********设定显示的位置及数据*****************/void display(uchar X,uchar Y,uchar dis[])//X行Y列数据{uchar pos;if(X==0){X=0X80;}//第一行else if(X==1){X=0X90;}//第二行else if(X==2){X=0X88;}//第三行else if(X==3){X=0X98;}//第四行pos=X+Y;write_cmd(pos);//显示地址i=0;while(dis[i]!='\0'){RS=1;RW=0;E=0;P0=dis[i];delay(5);E=1;delay(5);E=0;i++;}}/***********LCD初始化设定***************/ void lcd_init(){write_cmd(0x30);//基本指令操作delay(5);write_cmd(0x0c);//开显示,关光标delay(5);write_cmd(0x01);//清屏delay(5);}sbit eoc=P3^4;sbit ADD=P3^5;sbit oe=P3^6;sbit start=P3^7;uchar code table[]={"0123456789"};uchar num,num2,d[4];uint c;long a,b,j;float f,g,h;void ad_init(){start=0;delay(1);start=1;delay(1);start=0;while(!eoc);}void AD(){/***********通道0******************/ ADD=0;ad_init();num=P2;f=num/51.0;a=f*1000;d[0]=a/1000; //取出千位d[1]=a%1000/100; //取出百位d[2]=a%1000%100/10;//取出十位d[3]=a%10;//取出个位display(1,0,"输出电压:");//电压write_dat(table[d[0]]);write_dat('.');//小数点write_dat(table[d[1]]);write_dat(table[d[2]]);if(d[3]>0){write_dat(table[d[3]]);}write_dat('V');write_dat(' ');/*****************通道1************/ ADD=1;ad_init();num2=P2;h=num2/51.0;b=h*1000;j=a-b;d[0]=j/1000; //取出千位d[1]=j%1000/100; //取出百位d[2]=j%1000%100/10;//取出十位d[3]=j%10;//取出个位display(2,0,"输出电流:");//电流//lcd_pos(2,3);write_dat(table[d[0]]);write_dat('.');//小数点write_dat(table[d[1]]);write_dat(table[d[2]]);if(d[3]>0){write_dat(table[d[3]]);}write_dat('A');write_dat(' ');/**************功率****************/display(3,0,"输出功率:");//功率g=f*(f-h);a=g*1000;d[0]=a/10000;d[1]=a%10000/1000;d[2]=a%10000%1000/100;d[3]=a%10000%1000%100/10;d[4]=a%10;//lcd_pos(3,3);if(d[0]>0){write_dat(table[d[0]]);}write_dat(table[d[1]]);write_dat('.');//小数点write_dat(table[d[2]]);write_dat(table[d[3]]);if(d[4]>0){write_dat(table[d[4]]);}write_dat('W');write_dat(' ');write_dat(' ');}sbit SDATA_595=P1^5 ; //串行数据输入sbit SCLK_595 =P1^6 ; //移位时钟脉冲sbit RCK_595 =P1^7 ; //输出锁存器控制脉冲sbit key1=P1^3;sbit key2=P1^4;uchar temp ,num1,dat;uchar code dianya[]={0,};//建表(使输出步进0.1V) //由于硬件一直没做出来,所以此表格暂时没有数据;/********** 延时子程序*************/void delay1(int ms){int k ;while(ms--){for(k=0;k< 250 ; k++){_nop_() ;_nop_() ;_nop_() ;_nop_() ;}}}/************将数据送入74HC595内部移位寄存器 *********/void WR_595(void){uchar j ;for (j=0;j<8;j++){temp=temp<<1;SDATA_595=CY ;SCLK_595=1 ; //上升沿发生移位_nop_() ;_nop_() ;SCLK_595=0 ;}}/*******将移位寄存器内的数据锁存到输出寄存器并显示********* */ void OUT_595(void){RCK_595=0 ;_nop_() ;_nop_() ;RCK_595=1 ; //上升沿将数据送到输出锁存器_nop_() ;_nop_() ;_nop_() ;RCK_595=0 ;}/*****************DA子程序********************************/ void DA(){if(key1==0){delay(10);if(key1==0){while(!key1);num1++;//dat=num1;dat=dianya[num1];}}if(key2==0){delay(10);if(key2==0){while(!key2);if(num1<=0){num1=1;}num1--;//dat=num1;dat=dianya[num1];}}}#define uint unsigned int#define uchar unsigned charsbit sda=P3^0;//数据线sbit scl=P3^1;//时钟线void iic_delay(){ ; ;}/***********开始*************/ void iic_start(){sda=1;scl=1;iic_delay();sda=0;iic_delay();}/************停止***********/ void iic_stop(){sda=0;iic_delay();scl=1;iic_delay();sda=1;iic_delay();}/**********应答*************/ void ask(){uchar i;scl=1;iic_delay();if((sda==1)&&(i<1))i++;sda=0;scl=0;iic_delay();}/**********初始化***********/ void iic_init(){sda=1;iic_delay();scl=1;iic_delay();}/*********** 字节写****************/ void write_byte(uchar aa){uchar temp ,i;temp=aa;for(i=0;i<8;i++){temp=temp<<1;scl=0;iic_delay();sda=CY;iic_delay();scl=1;iic_delay();}scl=0;iic_delay();sda=1;iic_delay();}/****************字节读*************/ uchar read_byte(){uchar j,k;scl=0;iic_delay();sda=1;iic_delay();for(j=0;j<8;j++){scl=1;iic_delay();k=(k<<1)|sda;scl=0;iic_delay();}return k;}uchar read_add(uchar addrss){uchar shuju;iic_start();write_byte(0xa0);ask();write_byte(addrss);ask();iic_start();write_byte(0xa1);ask();shuju=read_byte();iic_stop();return shuju;}void write_add(uchar addrss ,uchar date){iic_start();write_byte(0xa0);ask();write_byte(addrss);ask();write_byte(date);ask();iic_stop();}。

相关文档
最新文档