当设定电流和负载电阻的配合使负载两端电压值超过题目要求的10V 最大电压时,将会输出警告信息,此时显示面板输出图如图 16所示。
Set I :0200mA ON Present I :1500mA Emergence !!! Votalge too high 图15 正常状态下显示面板 图16 报警状态下显示面板
4 软件设计
软件系统的任务主要有A/D 转换、产生PWM波、步进加减、键盘扫描、电流预置、电
流检测、电流控制、液晶显示、报警等功能。为了将所有任务有序的组织起来,软件系统采用前后台结构。
4.1 主程序设计
系统加电后,主程序首先完成系统初始化,其中包括系统时钟初始化,LCD液晶显示初始界面“Please wait??”,I/O 口初始化,中断系统和定时器/计数器等工作状态的设置,系统变量赋初值等工作;完成系统初始化后打开总中断(包括AD中断和按键中断)。主程序流程图如图17所示。
开始 系统初始化 使能中断 等待 图17 主程序流程图
4.2 ADC中断处理
ADC中断程序主要是读取从外部进来的ADC变化值,ADC校正,电流计算并控制PWM波的占空比,以及空载检查等功能。MSP430F149内部的AD变换器将采样电阻上的电压转换成数量,将其换算成电流后与预置值比较,根据两者间的差值调整输出PWM波的占空比大小。最后将反馈回来的信号转换的电流值传送到LCD。ADC中断流程图如图18所示。
中断入口 读入转换结果 AD值为零? Y N ADC和放大校正 空载报警 计算电流 控制PWM 置空载标志 输出10%PWM 更新显示 Y 过压? 置过压标志 关PWM N N 电压正常? Y 清过压标志 开PWM 中断返回 图18 AD中断流程图
4.3 按键中断处理
按键中断主要处理设置预设电流值和PWM波开关。按键中断处理流程图如图19所示。
中断入口 设置状态? 否 是 PWM开关 调整 个/十/百/千 清零预设值 保存值 预设值 设置状态 开/关恒流源 取消 键 取消设置 数字键 清零 键 确认 键 设置键 开启恒流源 清中断标志位 中断返回 图19 按键中断处理流程图
5 测试方法与结果
5.1 测试仪器
电路测试中使用的仪器设备及其用途如表 1 所示。
表 1 电源部分测试使用的仪器设备
序号 仪器名称及型号 数量 仪器名称及型号用途 1 2 3 4 5 RIGOL DS1062C型数字示波器 1个 RIGOL DG1021型函数发生器 DF17315LL3A直流稳压电源 FUKE DT9205万能测试表 GVT—427B交流毫伏表 1个 1个 2个 1个 观察电源输出纹波电压 给输入信号 给输入信号 测量负载电流, 测量电源输出电压 测量电源输出纹波电压有效值
5.2 系统测试电路
首先将各个模块连接起来,测试方法如图20所示。其中RL为负载电阻,IL为电流表A测得的电流值。
数控直流电流源 V RL Ui 1×8 键盘 液晶 显示 A IL 图20 测试电路
5.3 恒流源测试
测试电路图如图20所示。用按键设定电流预设值,用直流毫伏表和万能表分别测试负载两端的实际输出电流与电压,并在LCD上观察设定电流值和最终电流显示值。在不同的电压下测得数据如表2,表3和表4。
表2 恒流源测试表
测试条件:输入电压12V,负载电阻5?
设定电流(mA) 200 300 500 800 1000 1200 1500 1700 1900 2000 最终显示电流(mA) 200 300 500 800 1000 1200 1500 1700 1900 2000 实际输出电流 (mA) 205 303 504 807 1004 1210 1512 1712 1904 1995 表3 恒流源测试表
测试条件:输入电压15V,负载电阻5? 设定电流(mA) 最终显示电流(mA) 200 400 600 800 1000 1200 1400 1600 1800 2000 200 400 600 800 1000 1200 1400 1600 1800 2000 实际输出电流 (mA) 201 410 602 805 1005 1210 1412 1610 1811 1998
2.5% 1.0% 0.8% 0.88% 0.4% 0.83% 0.8% 0.71% 0.21% 0.5% 1.15 1.64 2.73 4.25 5.39 6.48 8.02 9.05 9.50 9.96 输出电流与给定值的相对误差 输出电压(V) 输出电流与给定值的相对误差 0.50% 2.5% 0.33% 0.62% 0.50% 0.83% 0.86% 0.63% 0.61% 0.10% 输出电压(V) 1.12 2.22 3.27 4.36 5.39 6.46 7.48 8.50 9.51 99.90