源代码文件中的各种指示信息,这些信息对分析源代码非常重要。 5.3 总体设计
该系统包括无线发送和接收、步进电机控制系统、水泵控制系统和灭火风扇和喷头的控制系统等。流程图如图15所示。
图15 系统总流程图
5.4 NRF24L01模块程序设计
该射频模块集成了NORDIC公司生产的无线射频芯片nRF24L01。其发射部分流程图如图16所示。
图16发射部分的流程
其核心代码如下:
SetTX_Mode(); //设置为发送模式 TxBuf[1] = 1;
nRF24L01_TxPacket(TxBuf); //发送buffer 里的数据 TxBuf[1] = 0x00;
接收部分流程图如图17所示。
图17 接收部分的流程
其核心代码如下:
SetRX_Mode(); //设置为接收模式
nRF24L01_RxPacket(RxBuf); //将接收到的数据存到RxBuf中
if( RxBuf[1]==1) { }
in1=0; in2=1; in3=0; in4=1; RxBuf[1]=0; led1 = 1;
6 调试结果与分析
6.1 测试仪器
万用表,软件Protues。 6.2 测试方法
先接通电源,看看系统能否正常工作,如果不能,可以在系统供电情况下,用万用表检测发射板和接收板各个模块的电压,如果出现电压为0或者无限大的情况,则为短路或者断路,一一排查之后可以确定是哪个地方的问题,检修后再次接通电源调试,使用protues软件事先调试按键逻辑与显示逻辑观察是否正常。 6.3 调试过程与分析
在本次设计过程中,由于使用的是宏晶的STC89C52RC芯片,这个系列的程序下载只需通过MAX232下载接口就可以。使得本次设计中硬件仿真变的就比较简单,因为有了硬件仿真工具就可以随时修改程序,通过一步一步的调试来达到最后的目的,同时尤其学会了分部调试的思想,这就使得当遇到问题时不会觉得无从下手,不会觉得那么迷茫,使调试变得比较有条理。
在检查完硬件电路没有短路、断路的情况下,接通电源,并且测试各个集成片的电源电压是否符合要求,以及单片机晶振是否起振,只有晶振正常起振单片机才能工作,通过检测,上述情况均正常。
在protues软件当中以单步联调的方法,测试按键逻辑与LCD1602现实逻辑
相关推荐: