第三章 系统的软件设计 软件要实现的功能是:键盘对单片机输入数据,单片机对获得的数据进行处理,送到10位数模转换器(MAX504),再送到数字电压表,实现数字量对电压的控制。 图3.1单片机模块方框图 3.1主控程序 主控程序首先进行系统初始化,然后读入预置电压值,输出相应的电压控制字,等待键盘输入。根据键盘的不同输入,用散转方式转入相应的应用程序,执行后,若用户又输入“清除显示”,则输出电压控制字0,返回初始状态,等待下一次按键。框图如图3.2所示。
图3.2 主程序流程图 图3.3中断服务程序流程图 3.2中断程序 过流保护由中断实现,在中断服务程序中进行各项报警和保护操作,中断服务程序框图如图3.3所示。 键盘中断程序中将一标志置“1”,表示有键键入,并将键盘码读入赋给一个变量。在主程序和哥哥应用程序中读取此标志和变量值,作为进行各项操作的依据,读后将标志清零。 3.3键盘显示程序
图3.4键中断流程图 图3.5 显示流程图 第四章电路扩展 4.1抑制纹波 本题对纹波要求非常高,对于本系统,造成纹波的主要因素是工频干扰、负载波动和数字调节的过冲噪声。其中第三项是数字控制系统必然存在的,不可避免;因此,主要从抑制工频干扰和提高负载容量上来抑制纹波。 ◆在电源端即进行滤波。系统的工频干扰主要由电源变压器引入,因此在电源端进行滤波对抑制工频干扰是十分必要和十分有效的。本系统的两个电源都在输出端进行了三极管有源滤波。 4.2保护电路 保护电路由T3和R8构成,设Lm为保护动作电流,则当电源输出电流I增加到Im时,R8上的压降Im*R8使得T3管导通,分掉了复合管的基极电流,使输出I不再增加。电路中Im定为2A,T3的导通电压为0.6V,则R8=0.6V/2A=0.3Ω。 过流时的中断申请由运放U3B产生。当过流发生时,稳压源输出经取样后得到的电压V2低于D/A转换输出电压 v1,U3A输出正向饱和,使得U3B的反向端电位升高,U3B输出低电平,产生中断申请信号。 4.3延时启动 5.3系统误差分析 从电路的原理框图可以看出,系统的主要误差来源于三个方面: (1)MAX504的量化误差 MAX504为10位D/A转换器,满量程为30V的量化误差为1/2LMBS=(1/2)*(1/210)*30V=14.65Mv。按满度归一化的相对误差为 (1/2)*(1/210)=0.05% (2)基准电压温漂引入的误差 LM336在0—40OC范围内漂移不大于4Mv, 故相对误差=2mV/5V=0.04%。 结束语 附录 程序清单
首页 上一页 1 2 3 4 下一页 尾页 4/4/4
WORD格式全文下载链接(充值:元)