发火控制器由发火控制模块和发火执行模块两部分组成,发火控制模块包括键盘输入模块、管号输入显示模块、状态显示模块和发火控制部分的单片机与执行部分的单片机之间的通讯模块,发火执行模块包括留膛状态采集模块和发火执行模块。除此之外,硬件设计还包括电源的选择和人机交互界面的设计。
3.1 发火控制模块设计
3.1.1 键盘输入模块设计
作为人机交互的主要部分,键盘输入保证控制者的控制指令准确可靠地输入到单片机。键盘输入模块中包括0~9号数字选择键、10号以上数字单双数切换键(- -)、单发键、复位键、齐射键、指令发出最终确认键。键盘采用15个独立按键来予以实现。键盘输入模块原理图如图3—1所示:
图3—1 键盘输入原理图
将15个按键分成两组,通过两个74LS244缓冲存储器【13】复用PA口连接送入单片机的数据总线。通过AVR单片机的PC0和PC1两个端口选通,硬件地址通过程序扫描的方式对键码进行读取。在对键盘进行程序扫描的过程中,进入扫描状态以后程序不断对键盘输入端口进行反复扫描,等待用户从键盘上发出指令或数据,在程序执行键盘命令和输入数据的过程中,程序不响应键入的要求,直到程序返回重新扫描键盘才能再次响应。
3.1.2 管号输入显示模块
在操作面板上选择单发模式后,需要输入待发的管号。为实时的对键盘管号输入的监控,采用两个LED数码管进行1到24号显示。当输入的管号在1到9之间时仅显示低位的数码管,高位数码管不显示;当输入的管号在10到24之间时,十位数在高位的数码管显示,个位数在低位的数码管显示。两个数码管通过两个74LS273【13】输出锁存模块复用单片机的PB口,通过AVR单片机的PC2和PC3两个端口选通。管号输入显示模块原理图如图3—2所示:
图3—2 管号输入显示模块原理图
3.1.3 状态显示模块设计
状态显示模块对火箭炮各定向管内的火箭弹是否处于装定待发状态和发射指令执行后火箭弹是否已发的状态、相应的火箭弹是否处于留膛的状态等进行显示。以保证发火控制人员获得准确可靠的状态监视,在此模块中选用通用的发光二极管作为显示器件。状态显示模块原理图如图3—3所示:
图3—3 状态显示模块原理图
在发射完毕以后,点火监控部分的单片机与执行部分的单片机通讯获取各管的留膛状态,发出相应的状态显示指令来显示此时各管内火箭弹的留膛状态。24路显示模块为分三组复用单片机的PB口,通过AVR单片机的PC4、PC5和PC6三个端口选通。
3.1.4 点火监控部分的单片机与执行部分的单片机通讯模块的设计
单片机通信是指单片机与计算机或单片机与单片机之间的信息交换。
通信有并行和串行两种方式。并行通信通常是将数据字节的各位用多条数据线同时进行传送,每一位数据都需要一条传输线,总共需要8条数据线、一条信号线和若干控制信号线。并行通信控制简单、相对传输速度快,但由于传输线较多,长距离传送时成本高且收发方的各位同时接受存在困难。串行通信是将数据字节分为一位一位的形式在一条传输线上逐个地传送,此时只需要一条数据线,外加一条公共信号地线和若干控制信号线。串行通信传输线少,长距离传送时成本低且可以利用电话网等现成的设备,但数据的传送控制比并行通信复杂。
(1)串行通信方式的分类
串行通信分为异步串行通信和同步串行通信两类。
① 异步串行通信 火箭发火控制系统硬件设计(7):http://www.youerw.com/jixie/lunwen_9671.html