51单片机在表决系统中的应用
分机中断服务程序:当主机经串口发出一地址帧后,各分机进入中断服务程序,首先判断是否为本机地址,不是则返回主程序。是则继续接收命令帧(数据帧)。针对命令做如下回应:分机报到、表决结果特征值;有无讲话请求,开或关麦克风。返回主程序。另外子程序中还针对错误信号做了相应对策,以提高抗干扰能力。
3.2 主机程序(见图4)
系统加电复位后,先执行串口初始化程序,按编号顺序查询分机,并接收分机状态字,放入内存。分机访问完后,对结果分类、统计,并转换为ASCII码。按报到、同意、反对、弃权、未按键的顺序发给PC机,PC机以中断响应方式接收数据。
系统讲话控制策略:分两级“主持”,“成员”。如果“成员”正在发言,“主持”可以中断“成员”发言。同级中先请求发言者优先。
为防止系统启动加电后,分机没完成复位,主机先行查询致使通讯失败。主机在上电复位后软件程序延时20 ms以确保分机进入工作状态后,主机再访问。
3.3串行通讯的约定
所有分机的SM2(SCON5)位置1,使它们置于接收地址帧状态;主机发送一帧地址信息,包含8位地址,第9位置1表示发送的是地址;分机接收到地址帧,各自中断响应,比较收到地址是否是本机。被寻址的分机清除SM2,以接收主机发来的后续命令。未被寻址的分机仍保持SM2= 1,直至收到新的地址帧。主机发送命令帧0AAH(第9位为0)给被寻址的分机。分机接收到命令帧,判是否为0AAH?是发分机结果及讲话请求状态,否调用调麦克风控制程序。分机地址编号可从0至FEH,本例为0到15H。共21位表决人。指定PC机地址为FFH。
4 结论
本系统采用成熟可靠的软硬件技术方案。经实际工作表明操作简单,抗电磁干扰能力强。统计结果准确可靠。显示、打印快捷迅速。是各种国家机器及社会团体,企事业单位行使民主权利的必备工具。
评论