资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,#,综合电子电路设计与调试,面向无线通信的综合电子电路,通信,08,实验目的,学习,51,单片机基本应用系统的设计,学习液晶显示器,1602,的应用,学习矩阵式键盘的设计和应用,学习温度传感器,18B20,应用,学习无线收发模块,nRF24L01,的应用,学习,C51,软件编程,实验内容,设计和实现面向无线通信的综合电子电路实验,原理框图如下:,实验内容,基本实验内容,LCD,液晶显示,键盘阵列扫描及编码,温度传感器的温度采集,数据的无线发送及接收,扩展实验内容,远程温度,LED,报警显示,通过继电器控制的各类电器应用,学生自命题的实验内容,基本实验内容为必做部分,扩展实验内容可以引导学生发挥自己的想象力,制作类似家庭网关类的电器控制类应用。,本次实验要求完成基本部分,,也就是框图中的无线发射端,实现无线收发数据。,实验要求,(1)PROTEUS,软件仿真方式实现键盘、液晶显示、温度采集,(2),制作,PROTEL,原理图和,PCB,图,(3),两人一组制板、调试、编程,(4),实验报告,实验安排,设计任务要求及原理分析,8,学时,电路设计与仿真,8,学时,PROTEL,电路原理图、,PCB,图绘制,8,学时,印刷板制作,4,学时,安装焊接,4,学时,硬件调试,4,学时,软件调试,8,学时,综合调试,4,学时,相关硬件资料查阅、软件编程及实验报告课外完成,任务安排,2011.11.14,周一 晚上,(1),系统介绍、,C51,介绍,(2)1602,液晶显示器介绍,(3),矩阵键盘介绍,(4)18B20,温度传感器介绍,(5)PROTEUS,软件仿真实现按键、显示和温度采集,任务安排,2011.11.15,周二 上午,(1)PROTEUS,软件仿真实现按键、显示和温度采集,(2),检查仿真功能实现情况,(3),用,PROTEL,制作电路原理图,(4),用,PROTEL,制作,PCB,图,(,小于,13*10CM),任务安排,2011.11.16,周五 上午,(1),发,PCB,板和材料,(2),继续用,PROTEL,制作电路原理图,(3),继续用,PROTEL,制作,PCB,图,(4),检查,PROTEL,原理图和,PCB,图,任务安排,2011.11.16,周五 下午,(1),两人一组制板,(2),焊接电路,(3),测试电路,任务安排,2011.11.16,周五 晚上,(1)NRF24L01,模块介绍,(2),无线实现功能要求说明,2011.11.21,周一 晚上,NRF24L01,无线模块调试,任务安排,2011.11.22,周二 上午,系统统调,2011.11.23,周三 下午,作品验收,面向无线通信的综合电子电路设计要求,设计基于,nRF2401,无线模块实现的无线收发系统。通过设置相同的无线地址和频率,实现在两块系统间无线收发温度数据,并从液晶显示器显示出来。,具体要求如下:,面向无线通信的综合电子电路设计要求,1.,通过按键设置无线模块收发地址。可选择默认地址和手动输入地址。手动输入地址,5,个字节。,2.,通过按键设置无线模块工作频率,2400Mhz-2525Mhz,。,3.,通过按键设置接收、发送模式。,4.,上述操作液晶需显示提示。,面向无线通信的综合电子电路设计要求,5.,设置完毕,两块分别设置为接收和发送模式的系统实现无线收发温度数据,并通过液晶实时显示出来。,6.,接收模式、发送模式有指示灯提示。,2024/11/11,综合电子电路设计与调试,16,面向无线通信的综合电子电路设计要求,7.,键盘布局,0,1,2,3,4,5,6,7,8,9,发送,接收,默认地址,手动输入地址,确认,系统硬件设计,设计基于,nRF2401,无线模块实现的无线收发系统。主要包括,AT89C52,单片机、,LCD1602,液晶、,4*4,矩阵键盘、,18B20,温度传感器、,nRF2401,无线模块四部分。,系统硬件框图,AT89C52,P0,矩阵键盘,1602,液晶显示器,P2,DS18B20,温度传感器,P3.0,nRF24L01,无线模块,P1,3v,供电,AT89C52,外围电路设计,系统以,AT89C52,单片机为控制核心。其外围电路设计见右图。时钟采用,11.0592Mhz,的晶振,,C1,、,C2,作为微调电容。复位电路采用按键复位、上电复位一体电路,电容,C3,,,R1,的取值并不严格。,31,脚,EA,必须连接高电平,才能保证程序从片内,ROM,开始执行,电阻,R2,可以省略。,液晶显示单元电路,系统,液晶选用常用的,LCD1602,。单元电路连接方式如右图所示。液晶采用,4,位数据显示方式,分别连单片机的,P2.0P2.3;,控制信号,RS,RW,E,分别与,P2.7P2.5,相连,,VSS,VDD,为液晶的地和电源,,+5v,供电,,VEE,为对比度调整。部分液晶有,15,16,脚,为液晶背光灯的电源和地,应串入电阻或点位器限流。,键盘输入单元电路,系统采用,4,4,矩阵键盘作为输入单元。如图所示,按键的,8,根线与,P0,口相连,由于,51,系列单片机,P0,口为漏极开路结构,因而无法输出真正高电平,因此需要加上拉电阻。注意按键连线不可随意更改,否则将造成键码与按键功能不匹配,不过可以通过软件方式修正。,温度传感器及无线模块电路,系统温度检测采用一线制数字温度传感器,18B20,实现。其唯一数据数据线直接与,P3.0,相连,由于,51,单片机,P3,口内有上拉电阻,因而省去,DQ,的上拉电阻。,D1,,,D2,为接受模式,发送模式指示灯。,图中,J1,为无线通信模块,nRF24L01,接口,采用,3v,供电,加入稳压管,D3,保护,其数据通信采用,SPI,串口方式,与单片机,P2,口相连。,系统总体电路图,系统软件设计,面向无线通信的综合电子电路软件部分由主程序、液晶显示子程序、,DS18B20,温度采集子程序、按键扫描子程序、无线收发子程序和延时子程序等组成。主程序以无线收发模块工作为主线,根据系统功能要求、按步骤调用各个子程序,将它们紧密组织,严密配合,从而实现系统的各项功能。,系统主程序流程,LCD1602,液晶显示程序,液晶显示子程序包括了液晶初始化、液晶字节写入、液晶字符串写入、液晶显示定位等子程序。其中液晶初始化程序最为关键。,以下是一个液晶初始化子程序。,液晶初始化,void LCD_init(void)LCD_write_command(0 x38);/,设置,8,位格式,,2,行,,5x7,LCD_write_command(0 x0c);/,整体显示,关光标,不闪烁,LCD_write_command(0 x06);/,设定输入方式,增量不移位,LCD_write_command(0 x01);/,清除屏幕显示,delay_n40us(100);/,实践证明,,用,for,循环,200,次就能可靠完成清屏指令,DS18B20,温度采集程序,温度采集子程序调用了,DS18B20,初始化、读字节、写字节子程序。以下为一例:,键盘输入子程序,nRF24L01,无线模块,nRF24L01,是工作在,2.4G,频段(,ISM,频段)的非标准无线射频协议无线收发专利芯片,其拥有非标准无线协议的低功耗、低成本、易开发等优良特性。,nRF24L01,特点,1,),126,个子信道,信道间隔,1MHz,或者,2MHz,(对应发送速率,1Mbps,或,2Mbps,)。,(,2,)可编程输出功率:,0,,,-6,,,-12,,,-18dB,。,(,3,)集成信道滤波器,片上自动同步。,(,4,)可编程低噪声放大增益。,(,5,)无需额外的环路滤波器、,VCO,变容二极管或谐振器。,(,6,)支持,1,至,32,字节可变数据长度。,(,7,),6,通道复用接收,可以组建,1,:,6,的星型网络。,(,8,),Standby-,下电流只有,22uA,。,(,9,)三个独立的,32,字节的发送和接收,FIFO,缓冲区。,(,10,)高级电源管理的快速启动空闲模式。,(,11,)自动打包、拆解数据包。,nRF24L01,引脚及其说明,nRF24L01,引脚及其说明,nRF24L01,工作模式,nRF24L01,在不同模式下的引脚功能,Enhanced ShockBurst TM,收发模式,nRF24L01,的收发模式又分为,Enhanced ShockBurstTM,收发模式、,ShockBurstTM,收发模式和直接收发模式三种,收发模式由器件配置字决定。,Enhanced ShockBurstTM,收发模式下,使用片内的先入先出堆栈区,数据从微控制器低速送入,但高速(,1Mbps,)发射,这样可以尽量节能。因此,使用低速的微控制器也可以得到很高的射频数据发射速率。与射频协议相关的所有高速信号处理都在片内进行,这种做法有三大好处:尽量节能;低系统费用(低速微处理器也可以进行高速射频发射);数据在空中停留时间短,抗干扰性强。,Enhanced ShockBurstTM,技术同时也减小了整个系统的平均工作电流。在,Enhanced ShockBurstTM,收发模式下,,nRF24L01,会自动处理字头和,CRC,校验码。在接收数据时,自动把字头和,CRC,校验码移除;在发送数据时,自动加上字头和,CRC,校验码。在发送模式下,置,CE,为高至少,10us,,则发送过程完成。,Enhanced ShockBurst TM,收发模式,nRF24L01,的,Enhaned ShockBurstTM,提供了硬件自动重发和多通道接收的功能。自动重发功能是指发送完一个数据包后,发送方需要等待接收方的确认信号,ACK,,发送方只有在收到,ACK,后才认为本次发送成功,否则本次数据将被自动重发。自动重发的间隔和次数可以设定,最多重发,5,次,每次间隔最长,4000us,。当超过最大重发次数后,,nRF24L01,会通过其引脚上的电平变化给控制器提示,以进行下一步操作。这些重发动作都是,nRF24L01,自动完成的,无需控制器干预。,鉴于,Enhaned ShockBurstTM,拥有高速、节能、自动重发、多通道接收等优点,本系统设计的,nRF24L01,收发方式也采用了,Enhaned ShockBurstTM,的收发模式,从而保证无线数据发送高速、可靠。,nRF24L01,的寄存器指令,nRF24L01,的寄存器地址,#define CONFIG 0 x00 /,配置收发状态,,CRC,校验模式以及收发状态响应方式,#define EN_AA 0 x01 /,自动应答功能设置,#define EN_RXADDR 0 x02 /,可用信道设置,#define SETUP_AW 0 x03 /,收发地址宽度设置,#define SETUP_RETR 0 x04 /,自动重发功能设置,#define RF_CH 0 x05 /,工作频率设置,#define RF_SETUP 0 x06 /,发射速率、功耗功能设置,#define STATUS 0 x07 /,状态寄存器,#define OBSERVE_TX 0 x08 /,发送监测功能,#define CD 0 x09 /,地址检测,#define RX_ADDR_P0 0 x0A /,频道,0,接收数据地址,#define RX_ADDR_P1 0 x0B /,频道,1,接收数据地址,#define RX_ADDR_P2 0 x0C /,频道,2,接收数据地址,#define RX_ADDR_P3 0 x0D /,频道,3,接收数据地址,#define RX_ADDR_P4 0 x0E /,频道,4,接收数据地址,#define RX_ADDR_P5 0 x0F /,频道,5,接收数据地址,#define TX_ADDR 0 x10 /,发送地址寄存器,#define RX_PW
展开阅读全文