第4章 电子秤的软件设计 4.1 引言
软件设计一般按下列步骤进行:即先分析仪器系统对软件的要求;然后在此基础上进行软件总体设计,包括程序整体结构设计和对程序进行模块化设计,模块化设计即将
程序划分为若干个相对独立的模块;接着画出每一个专用模块的详细流程图,并选择合适的语言编写程序;最后按照软件总体设计时给出的结构框图,将各模块连接成一个完整的程序。在主程序的设计中要合理地调用各模块程序,特别注意各模块的入口、出口及对硬件的、资源占用情况。
采用模块化设计方法以后依据仪表的功能要求将软件的初始化模块、转换模块、显示模块、比较报警模块、键盘输入模块、键功能处理模块、延时模块。分别进行设计和调试,然后把它们连接起来,进行总调。
而硬件分成主机、过程通道、人机联系部件、通信接口和电源等模块。模块化设计的优点是:无论是硬件还是软件,每一个模块都相对独立,故能独立地进行设计、研制、调试和修改,从而使复杂的工作得以简化。模块之间的相互独立也有助于研制任务的分解和设计人员之间的分工合作,这样可提高工作效率和仪表的研制速度。上述各种软、硬件模块的研制调试完成之后,还需要将它们按一定的方法连接起来,才能构成完整的仪表,以实现数据采集、传输、处理和输出等各种功能。软件模块的连接,一般是通过监控主程序调用各种功能
模块,或采用中断的方法实时地执行相应的服务模块来实现,并且按功能层次继续调用下一级模块。模块之间的联系是由数据接口(数据缓冲器和标志状态)来完成的。硬件模块的连接,是通过商业化的模板进行连接完成的。
4.2监控程序的设计
智能仪器的设计既要满足设定的功能的完成如计算等功能的任务功能程序,也要有可以监控仪器仪表正工作,保证其可靠性方面的监控程序。整个智能仪器的测量都是智能仪器自动完成的,所以设计一套功能完备的监控程序是必须的也是必要的。
监控程序的主要作用是实时的响应来自系统的各种信息,按信息的类别进行处理;当系统出现故障时,能自动的采取有效的措施,消除故障,保证系统能够继续进行正常工作。
4.3 数据处理子程序的设计
数据处理子程序是整个程序的核心。主要用来调整输入值系数,使输出满足量程要求。另外完成A/D的采样结果从十六进制数向十进制数形式转化。
4.3.1系数调整
在IN0输入的数最大为5V,要求的质量500g对应的是4.8V,为十六进制向十进制转换方便,将系数放大100倍。并用小数点位置的变化体现这一过程。
因而系数为: 4.3.2数制转换
数制之间的转换:在二进制数制中,每向左移一位表示数乘二倍。以每四位作为一组对数分组,当第四位向第五位进位时,数由8变到16,若按十进制数制规则读数,则丢失6,所以应进行加六调整。DA指令可完成这一调整。可见数制之间的转换可以通过移位的方法实现。其中,移出数据的保存可以通过自乘再加进位的方法实现,因为乘二表示左移一位,左移后,低位进一,则需加一。否则,加零。而通过移位已将要移入的尾数保存在了进位位中,所以能实现。
4.4数据采集子程序的设计;数据采集用A/D0809芯片来完成,主要分为启动;4.5显示子程序的设计;显示子程序是字符显示,首先调用事先编好的8279;图4-4LCD显示流程框图;调用8279初始化命令,然后输出写显示命令;显示欢迎界面;显示功能选择界面;有无按键;有无按键;是否为D;是否为E;是否为F;显示测量界面;键盘输入界面;图4-4LCD显示流程框图
4.4 数据采集子程序的设计
数据采集用A/D0809芯片来完成,主要分为启动、读取数据、延时等待转换结束、读出转换结果、存入指定内存单元、继续转换(退出)几个步骤。ADC0809初始化后,就具有了将某一通道输入的0~5模拟信号转换成对应的数字量00H—FFH,然后再存入8031内部RAM的指定单元中。在控制方面有所区别。可以采用程序查询方式,延时等待方式和中断方式。
4.5显示子程序的设计
显示子程序是字符显示,首先调用事先编好的8279的键盘显示
子程序:
图4-4 LCD显示流程框图
调用8279初始化命令,然后输出写显示命令。在显示过程中一定要调用延时子程序。当输入通道采集了一个新的过程参数,或仪表操作人员键入一个参数,或仪表与系统出现异常情况时显示管理软件应及时调用显示驱动程序模块,以更新当前的显示数据显示符号。
显示欢迎界面 显示功能选择界面 有无按键 有无按键 是否为D 是否为E 是否为F 显示测量界面 键盘输入界面 Y N N Y Y Y N
N Y
图4-4 LCD显示流程框图 开始 返回
为了是过程信息、按键内容与显示缓冲器相衔接,设计人员可在用户RAM区开辟一个数据缓冲区,作为显示管理模块与其他功能模块的数据接口。
4.6 键盘扫描子程序的设计
如图4-5所示:键盘电路设计成如图3.5.1的4X4矩阵式,由键盘的编码方式可以得出0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 各键对应的键值:
0D8H,0D0H,0D1H,0D2H,0C8H,0C9H,0CAH,0C0H,0C1H,0C2H, 0C3H,0CBH,0D3H,0DBH,0DAH,0D9H 。在程序中可以先判断按键编码,然后根据编码将键盘代表的数值送到相应的存储单元,再进行功能选择或数据处理。
4.7报警子程序的设计;由于要求要键盘设定阈值,所以要求有报警电路,报警;第5章调试与分析;5.1调试系统简介;调试包括硬件调试、软件调试和样机调试;软件的调试和硬件的调试都是独立进行的,软件部分包;当软件调试和硬件调试都正确无误的时候,就可以进行;5.2调试故障及原因分析;故障一:传感器显示电压示数范围与要求的LCD显示;解决方法:修改程序中的转换子程序部
4.7报警子程序的设计
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库电子天平论文(3)在线全文阅读。
相关推荐: