ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:152.24KB ,
资源ID:27070746      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27070746.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数控直流稳压电源的设计与实现.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数控直流稳压电源的设计与实现.docx

1、数控直流稳压电源的设计与实现数控稳压直流电源设计报告1、数控直流稳压电源设计指标及设计1.1 设计技术指标本设计是线性数控直流电源,设计要求如下:1、电压变化范围+5%-5%条件;2、输出电压可调范围为010V;1.2 本课题研究方法和目标数控电源的主要研究思路:1、硬件部分(1)单片机采用STC89C52最小系统方案,采用数码管和按键做人机界面,采用DA 芯片作为主要的单片机系统。(2)电压调整靠调整输入到DA的数字量来改变输出电压大小,再通过电压功率放大器将其放大,得到输出电压。2、软件部分(1)键盘输入程序用键盘扫描程序,将按键设置的电压交给D/A芯片产生输出电压。(2)单片机通过A/D

2、芯片读取当前输出电压值,通过显示程序,显示在数码管上。2硬件电路详细设计2.1 单片机系统外围电路设计在本次设计中,使用AT89C52单片机,其外围电路有复位电路、晶振电路、按键电路、数码管显示和D/A芯片接口电路。以下是电路的详细设计。2.1.1 复位电路设计单片机在启动的时候都需要复位,使单片机系统处于初始状态,然后开始工作。89系列的单片机的RET引脚是复位信号的输入端,当系统处于正常工作状态,振荡器稳定,RET引脚上出现2个机器周期以上的高电平时,单片机就进入数位状态,但是如果引脚RET出现持续的高电平,单片机就处于循环复位状态9。复位通常有两种基本形式:上电复位和手动复位。本次设计采

3、用上电复位。电路图如图2-1所示。 图2-1 复位电路2.1.2 时钟振荡电路设计单片机的CPU实质上是一个复杂的同步时序电路,它的工作都是必须在时钟控制下进行的。CPU工作发出的控制信号在时间上的相互关系就是CPU的时序问题9。CPU的时序需要外部硬件电路来实现,既振荡器和时钟电路。51单片机内部都有一个高增益反向放大器,用于构成振荡器,但是构成时钟,外部还需要加一些附加电路。本次设计采用单片机外部加晶振构成振荡电路,如图4-2所示。图2-2 单片机振荡电路该振荡电路时采用的单片机内部时钟方式,是直接在引脚XTAL1和XTAL2两端接晶振,就构成了稳定的自激振荡器,振荡器产生的脉冲信号直接送

4、入内部时钟电路。2.1.3 键盘电路设计本次设计为数控电源,所以需要键盘设置输出电压,按键电路设计简单,如图4-3所示。图2-3 按键电路四个按键依次为电压+1V、+0.1V、-1V、-0.1V,与单片机的P2口连接。2.1.4 显示电路设计89系列单片显示通常采用的是LED数码管显示或LCD显示,两个显示它们的接口方法是不同的。一般LCD配置了专门的驱动电器74ls244,在进行信息显示时,只需要把信息写入驱动电器的存储器中即可。而数码管显示一般需要的电流较大,数码管显示有两种方式:静态显示和动态扫描显示,在一般应用中主要是采用动态扫描方式。本次设计采用LED数码管动态扫描显示,电路图如下图

5、2-4所示。 图2-4-1 74ls224总线驱动电路 图2-4-2 数码管显示电路输出电压测量本设计采用共阴数码管显示,数码管接在单片机的P1和P2口,所以单片机P1口需要加上拉电阻。2.1.5 单片机与DA接口电路设计由于本次设计用DA转换输出,所以在设计的时候采用了DAC0808单片控制输出电压。DAC0808与单片机接口电路如图2-5所示。图2-5 DAC0808与单片机接口电路2.6 总电路图的设计如图2-6总电路图。图2-6 总电路图该中电路图是在protus软件里完成的,在绘图时采用的是分模块设计,以便于理解和修改,各模块又使用网络标号连接,这样使得电路更加简明。3、 软件设计,

6、详细叙述各个软件模块所实现的功能3、1 以下程序为初始化个变量,即把个变量的初始值赋值为零,所以运行程序时,给定电压为零,输出电压也为零。;*;初始化变量;*MAIN: MOV R0,#30H MOV R7,#10H MOV P3,#00H CLR C MOV 00H,CLOOP: MOV R0,#00H INC R0 DJNZ R7,LOOP MOV R1,#2FHLOOP1: LCALL DISPLAY LCALL SHUCHU;电压D/A转换输出 JNB P1.0,WEIXUAN;进入位选状态 JNB P1.2,JIA;进入加状态 JNB P1.3,JIAN;进入减状态 AJMP LOO

7、P13、2 位选程序是对输出赋值时,按位选后,74ls244进入三态模式,电压实测数码管输出保持原值。;*;位选程序;*WEIXUAN:LCALL DISPLAY JNB P1.0,WEIXUAN;去抖动 INC R1 MOV A,R1 CJNE A,#34H,LOP1 MOV R1,#30HLOP1: JNB P1.1,DUANXUAN;进入段选状态 JNB P1.0,WEIXUAN;进入位选状态 LCALL DISPLAY JNB P1.4,LOP2; 进入确定状态 AJMP LOP1LOP2: JNB P1.4,LOP2;去抖动 MOV R1,#2FH AJMP LOOP13、3 位选选

8、到哪一位后,通过段选对那一段进行加一操作,按一下,加一,直到加到九,再按又变为为零。;*;段选程序;*DUANXUAN:LCALL DISPLAY JNB P1.1,DUANXUAN;去抖动 MOV A,R1 MOV R0,A MOV A,R0 INC A CJNE A,#10,L1 MOV A,#00HL1: MOV R0,A LCALL DISPLAY AJMP LOP1;*3.4 按确认键,可以进入三态模式,再按一下,可对设定电压十分位进行加5或减5操作,对应的输出值也相应的发生改变。;*;加1程序;*JIA: LCALL DISPLAY JNB P1.2,JIA;去抖动 MOV A,3

9、0H JZ Y4 AJMP MAINY4: CLR C MOV A,33H ADD A,#5 ACALL BIJIAO1 MOV 33H,A MOV C,00H MOV A,32H ADDC A,#00H MOV 00H,C;存进位 ACALL BIJIAO1 MOV 32H,A MOV C,00H MOV A,31H ADDC A,#00H MOV 00H,C;存进位 ACALL BIJIAO1 MOV 31H,A MOV A,#00H ADDC A,#00H MOV 30H,AY3: AJMP LOOP1BIJIAO1:CJNE A,#0AH,Y1 MOV A,#00H SETB C MO

10、V 00H,C AJMP Y2Y1: CLR CY2: RET;*;减5程序;*JIAN: LCALL DISPLAY JNB P1.3,JIAN;去抖动 MOV A,30H JNZ Y7 MOV A,31H JNZ Y7 MOV A,32H JNZ Y7 MOV A,33H JNZ Y7 MOV 30H,#01H AJMP LOOP1Y7: CLR C MOV A,33H SUBB A,#5 JZ Y8 MOV A,#05HY8: MOV 33H,A MOV A,32H SUBB A,#00H ACALL BIJIAO2 MOV 32H,A MOV A,31H SUBB A,#00H ACA

11、LL BIJIAO2 MOV 31H,A MOV A,30H SUBB A,#00H MOV 30H,A AJMP LOOP1BIJIAO2:JNC Y9 MOV A,#09HY9: RET3.5 以下为DA转换子程序,单片机把设定好的电压值送到DA把数字量转换成模拟量通过电压功率放大器输出。;*;电压D/A转换输出子程序;*SHUCHU: SETB RS0 MOV A,30H JZ Y5 MOV A,#200 AJMP Y6Y5: MOV A,30H SWAP A ORL A,31H MOV B,#20 MUL AB MOV 45H,A MOV A,32H MOV B,#2 MUL AB A

12、DD A,45H MOV 45H,A MOV A,33H MOV B,#5 DIV AB ADD A,45H MOV 45H,AY6: MOV DPTR,#TAB2 MOVC A,A+DPTR MOV P3,A CLR RS0 ACALL CLZ;调用电压测量值子程序 RET3、6 以下为电压测量子程序,它完成功能主要是测量出输出电压值,存储在寄存器类,此值是送到显示模块显示的值。;*;调用电压测量值子程序;*CLZ: MOV 48H,A MOV R0,#34H MOV R6,#4LOOP7: MOV B,#10 MUL AB MOV 62H,A MOV A,B MOV R0,A ADD A,

13、62H MOV 63H,A MOV A,R0 ADDC A,#00H MOV R0,A MOV A,63H INC R0 DJNZ R6,LOOP7 RET3、7 以下为显示子程序,它完成功能主要是从单片机中取数,然后再送到数码管显示,先送段码,再送位码。;*;显示子程序;*DISPLAY:MOV A,#01H MOV R7,#8 MOV R0,#30HLOOP2: MOV P2,A MOV 10H,A MOV A,R0 MOV DPTR,#TAB1 MOVC A,A+DPTR MOV 60H,A MOV A,R0 CJNE A,#31H,M1M3: MOV A,60H ANL A,#7FH

14、MOV 60H,A AJMP M2M1: CJNE A,#34H,M2 AJMP M3M2: MOV P0,60H LCALL DS1MS INC R0 MOV A,10H RL A MOV 10H,A DJNZ R7,LOOP2 RET3、8 以下是一个延时子程序,完成的主要功能是延时1ms。;*;延时1ms子程序;*DS1MS: MOV TMOD,#01H MOV TH0,#0FCH MOV TL0,#18H SETB TR0LOOP3: JBC TF0,NOOP SJMP LOOP3NOOP: CLR TR0 RET4、将hex文件下载仿真4.1 将kell软件编写程序后产生的hex文件,将hex文件下载到单片机中,进行硬件仿真,下图为初始状态显示,如图4-1所示: 图4-1 初始状态4、2 打开仿真器后,然后进行加操作,每次步进值为0.05V,如图4-2所示,上面的为电压设定,下面为输出显示,左边那个为电压表测得实际输出。 图4-2 图4-24.3 打开仿真器,点击位键选中该位,然后再点击段键,每点击一次该段加一,把电压设定为5.55V,如图4-3.1所示,然后点击确认键,改变74ls244的三态状态,显示如图4-3.2所示: 图4-3.1 图4-3.24.4 以下是按键的综合使用,先设定电压为7V,然后用加键每次步进0.05V,调到7.5V,显示如图44所示: 图4-4

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1