拨键开关1个,为输出“output”,当键拨上时输出信号,拨回时停止输出。 3)控制:
a) 接收采样电压并与设定值比较产生控制信号输出 b) 可由键盘设置设定值
3.2 软件设计结构
3.2.1 控制及显示程序设计思想
程序由主程序、定时器中断程序、键盘扫描程序四部分组成。各部分功能及流程图如下。
主程序
主程序的主要工作是进行初始化,扫描键盘,并响应键盘,设定电流值。
开 始初始化开中断键盘扫描子程序 图 3-1 主程序流程图
键盘扫描子程序
该系统需要22个按键即可实现所有功能。当单片机响应键盘后,则得到一个返回值。软件设计采用了状态转换的编程方法,有工作状态和编辑状态两种状态。在工作状态只响应确认键,并转入编辑状态,不响应其它任何键;在编辑状态设定输出电流值,确认和取消键退出编辑状态,转入工作状态。这样不仅降低了编程的难度,也提高了程序的稳定性。
其流程图如下:
12
开始有键动?YESNO延时有键动?YESNO读取键值编辑状态工作状态直流三角方波其他键数字键预置自扫S+/-+/-确定输入确定确定返回显示 图 3-2 键盘扫描子程序流程图
定时器中断程序
电路中A/D采样周期为130ms,当定时器T0中断后进行一次采样,单片机处理后,输出D/A进行调节,并且显示。定时器中断程序流程如图3-3所示。
13
定时器中断服务程序开 始N N 1启动A/D转换返回 图 3-3 定时器中断程序流程
ADC反馈调节
需要得到精确的电压值,模拟功放电路部分终端会输入一个反馈,单片机的ADC会进行采样,读采样数据,并与DAC设定值进行对比,若误差err<=0.05,则返回重新采样;若err>=0.05,进行PID线性校正,控制调整电压和传送显示。
设电压变化为?,当前电压为Vn,利用err*coff进行修正。
ADC采样对比DACErr<=0.05DAC对比
图 3-4 ADC反馈调节子程序流程图
Err>=0.05PID线性校正14
自动扫描中断服务程序
此功能是计算机实现自动加/减功能的程序,根据扫描方向修改当前电压值,并判断其是否超过极性范围(0—9.9V),到达端点值时停止扫描,来完成自动扫描的全部过程。
启动自动扫描定时器NO按键为S+?YES电压自动减0.1VYES电压自动加0.1VYESENTER=0?NO结束结束ENTER=0?NO电压=0?YESNOYES电压=9.9?NO停止停止
图 3-2 自动扫描中断服务子程序流程图
方波/三角波中断
进入该功能模块时,定时器1启动,当其溢出时,触发中断服务程序,使DA交替输出高电平、低电平,实现方波输出;输出三角波时,控制继电器,将积分器接入电路,对方波进行积分,得到三角波。
启动定时器1溢出?YES进入中断服务程序DA交替输出高低电平
图 3-3 方波/三角波中断子程序流程图
15
第 4 章 功能及性能测试
4.1 测试条件
测试环境
航海学院222大型电子实验室,常温常湿常压。 测试仪器
表 4-1 主要测试仪器清单
序号 1 2
名 称 数字示波器 数字万用表 型号、规格 DPO7354 VC9806 生产厂家 TEK VICTOR 4.2 整机调试
在电路板装配好后,进行整机调试。
1) 测试供电电源:VDD=14.266V,VEE=-14.898V,VCC=5.000V,系统供电正常。 2) 把电路各部分连为一体。对控制部分进行检测,观察显示部分能正常工作和键盘
按键功能能实现,且显示与测量值基本一致,所以电路能正常工作。
4.3 系统性能测试
显示部分功能测试
用键盘随意编辑一个设定值,观察能否交替显示设置值和测量值,同时用电压表测量负载电压值,比较这3个值大小,相差很小,达到了设计指标,负载输出正常。重复上述操作后结果一致,显示功能实现。
键盘按键功能测试
1) 开机默认直流输出状态,数码管显示直流电压; 2) 按下“+/-”键,电压值以步进0.1增加/减小;
3) 按“预置”键,预置一个电压值,断电重启后,显示该预置电压值; 4) 按“自动扫描”键,进入自动扫描状态,此时,在键盘上输入一个电压值,
按“确定”键,开始以0.1的步进自动扫描到该数值;
5) 按“自扫+/-”电压自动以0.1的步进增加/减小,直到增加至9.9V/减小至0.0V
在扫描时,按“确认”键停止;
16
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库电子设计竞赛论文-简易稳压电源的设计(4)在线全文阅读。
相关推荐: