《嵌入式系统开发》课程设计
SBuff[2] = 0xB9; SBuff[3] = 0x46; SBuff[4] = 0xF1; SBuff[5] = save_byte4; SBuff[6] = save_byte5; SBuff[7] = 0x01; SBuff[8] = 0x07; SBuff[9] = 0x04;
SBuff[12] = 0x00< SBuff[20] = XorVerifySend(SBuff); nwrite = write(serial_fd,SBuff,sizeof(SBuff)); buffer_has_send = 1; //控制蜂鸣器 SBuff[0] = 0x02; SBuff[1] = 0x12; SBuff[2] = 0xB9; SBuff[3] = 0x46; SBuff[4] = 0xF1; SBuff[5] = save_byte4; SBuff[6] = save_byte5; SBuff[7] = 0x01; SBuff[8] = 0x07; SBuff[9] = 0x02; SBuff[11] = 0x1f; //控制蜂鸣器 SBuff[20] = 0x0; SBuff[20] = XorVerifySend(SBuff); nwrite = write(serial_fd,SBuff,sizeof(SBuff)); buffer_has_send = 1; //控制数码管 SBuff[0] = 0x02; SBuff[1] = 0x12; SBuff[2] = 0xB9; 《嵌入式系统开发》课程设计 } } } } SBuff[3] = 0x46; SBuff[4] = 0xF1; SBuff[5] = save_byte4; SBuff[6] = save_byte5; SBuff[7] = 0x01; SBuff[8] = 0x07; SBuff[9] = 0x01; SBuff[11] =0x00; SBuff[20] = 0x0; SBuff[20] = XorVerifySend(SBuff); nwrite = write(serial_fd,SBuff,sizeof(SBuff)); buffer_has_send = 1; SBuff[10] = 0x00+SendNum; //控制数码管 buffer_has_item = 0; pthread_mutex_unlock(&mutex); LED、蜂鸣器及数码管结果显示: 图6.5 LED、蜂鸣器及数码管结果显示 《嵌入式系统开发》课程设计 6.4 本章小结 本章主要介绍的是我们这个系统的几大功能模块,以及各个模块之间的作用与联系,在本章中,我们可以看到,通过代码的整合,在测试时,各个模块的功能最终能够通过通讯终端显示出来。 《嵌入式系统开发》课程设计 7测试结果及分析 想要知道自己设计的系统是否可行,对于系统的测试是必不可少的,本章主要介绍了对于ZigBee无线通讯协议测试,终端和点阵数码管显示测试的结果。 7.1硬件测试 (1)稳定性测试:长时间运行系统,检查电源电压、液晶显示及传感器无线模块等。经测试,系统各电源运行正常电压均在正常值范围之内,液晶显示正常、清晰,无闪屏,传感器工作正常,采样的数据正确,无线模块无死机现象。 (2)硬件安全性检查:各类接口保证电路不出现短路等问题,长时间运行程序,并检查芯片工作情况与工作状态(温度、电压等)。经测试,系统各接口运行正常。 7.2软件测试 1、传感器采样程序测试以1s或2s间隔频率采集各个传感器,连续采集24小时以上观察LED显示是否有异常数据出现。测试结果采样正常数据可靠。 2、单片机与无线模块通讯测试,单片机每采样到一次传感器信号,处理后及时将数据发送到无线模块,通过观察电路板上的通讯指示灯,观察无线模块是否接收到数据。测试结果:无线模块接收正常。 3、人工操作界面程序测试:多次重复操作按键菜单,设置各个系统参数,查看程序是否跑死,分析是否有bug。测试结果程序运行无错误无死机现象。 4、上位机通讯程序测试以1s间隔频率发送命令(24小时以上) 能及时返回数据,返回数据是否正确,设置波特率,查看通讯是否正常,测试结果:通讯正常[15]。 《嵌入式系统开发》课程设计 7.3实验截图 (1)通讯终端上显示的结果,从图中标记的地方可以看出,有人体触碰时是可以感应出来的,而且,还能实时的反应出当前系统工作时的电压,环境的温度等情况。 图7.1终端上显示的结果 (2)用8*8点阵显示结果(以二进制来显示) 这一组截图能够动态地反映led点阵中图案的变化(“心”形图案慢慢下移)以及相应的数码管显示的数字的变化(数字大小逐渐减小),同时伴随着的还有蜂鸣器有规律的响声(当然,在这是无法表现出来的)。