(1)两个串口的数据发送均采用查询方式,数据接收均使用中断方式; (2)数据帧包括帧首和数据两部分,帧首使用双字节0x55AA,数据部分为1B,即每帧占用3B,帧首和数据部分均采用十六进制ASCII码传送,确保协议的透明性; (3)接收方如果接收到0x550xAA字节,则说明接收到有效的数据帧,否则将该帧丢弃。 如果硬件电路设计合理,元器件的选择恰当,再加上以上简单的通信协议,则可将误码率控制在0.2%以下。 单片机上电后,首先对系统和串口进行初始化,然后单片机进入待机模式,直到两个串口中的一个发生中断硬转为工作模式,处理中断程序。主要的程序代码如下: 
3硬件电路的测试 本设计中将控制模块和无线射频模式分开设计,控制模块通过一单排7脚的接口控制射频模块,测试的步骤如下: (1)将控制模块和无线射频模块焊好,检查确认无虚焊、粘焊; (2)先对控制模块上电进行测试,主要是测试控制模块的串口0和串口1能否相互收发数据,测试方法是通过板上跳线将串口0设置为RS232标准,由于板上的串口1只有TTL电平标准,必须外加电平转换电路将其转换为RS232标准,然后将两个串口分别接到计算机的两个串口上,将以上的程序写到W77E58上,然后用串口测试软件测试,如果串口0,1能相互收发数据,便可开始对无线射频模块进行测试; (3)将无线射频模块的J1口与控制模块的J6口焊接起来,上电进行测试,按照以上的程序,上电时处于接收状态,可对TXEN,PWUP,CS等管脚进行测试,看是否与程序吻合; (4)确认射频模块上电处于接收状态后,可测试nRF401地第4管脚是否为1.1V左右,如果是,则说明VCO电感设计合理,否则要重新设计PCB板,此外,nRF401在没有数据接收时,仍会自动从DOUT发送随机数据,使用万用表进行测试时该引脚电压应为2.5V左右[4]。如有示波器可做更详细的测试。 4结语 由无线收发芯片nRF401、单片机W77E58、接口芯片MAX323等组成了一个智能控制无线收发装置,该装置具有通用性,可嵌入到各种仪器仪表数据采集系统、遥控遥测系统中,实现无线数据的双向传输。 作者:谢锦沐,吴功平,蒋锡健,祝鲁金(武汉大学动力与机械学院湖北武汉430072) |