4 软件设计及调试
系统硬件搭建成功后还需相应的软件实现其功能,需实现的主要功能有主机和从机的自检、复位、对外部中断的响应、对所计时间的计算和显示、主从机之间的相互通信。
4.1 主机外部中断0中断程序
主机外部中断0引脚接经跟随电路处理过的靶信号,其主要功能是启动从机开始计时,程序流程图如图4.1.1所示:
图4.1.1 主机外部中断0程序流程图
4.2 从机外部中断0中断程序
从机外部中断0引脚接经跟随电路处理过的靶信号,其主要功能是停止计时,并计算时间,将计时结果发送给主机,程序流程图如图4.2.1所示:
图4.2.1从机外部中断0程序流程图
4.3 主机与从机外部中断1扩展程序
外部中断1通过反相器OC门扩展为两个,通过程序查询的方法判断具体是哪一个键按下并跳转到相应的中断程序,程序流程图如图4.3.1所示:
图4.3.1 中断1程序流程图
4.4 主机与从机自检程序
当自检按键按下后通过外部中断1跳转到自检子程序,程序流程图如图4.4.1所示:
图4.4.1 自检程序流程图
由程序流程图可以看出,自检程序使定时/计数器自动计满溢出15次后停止计数,这样定时/计数器共计15×65536=983040次,由于定时器是每一个机器周期(1微秒)计数加1,因此共计时0.983040秒,经时间计算子程序和显示子程序处理后数码管显示0.983040,实物图如图4.4.2所示:
图4.4.2 自检显示结果
4.5 主机与从机复位程序
按下复位按键后通过外部中断1跳转到复位子程序,其主要功能是将系统复位到初始状态,各主要寄存器清零、定时/计数器清零并清TR0位、外接电路双D触发器输出端清零、数码管全部显示零。当按下复位键后,数码管显示状态如图4.5.1所示:
图4.5.1 复位显示结果
4.6 主机串口程序
主机串口除给从机发送开始计时信号外,还需接收从机发送的计时结果,并给与一定的应答信号,当主机RXD引脚检测到由高到低的电平变化并接收了一字节的数据后置位RI并产生中断,由中断入口地址进入串口中断子程序。主机和从机之间的通信信号的具体含义如表4.6.1所示: 基于无线传输的弹体飞行时间测量系统设计+源程序+流程图(5):http://www.youerw.com/tongxin/lunwen_3655.html