课程设计(论文)说明书基于STC89C51的CC1100H无线收发系统

上传人:沈*** 文档编号:78178063 上传时间:2022-04-21 格式:DOC 页数:20 大小:1.52MB
返回 下载 相关 举报
课程设计(论文)说明书基于STC89C51的CC1100H无线收发系统_第1页
第1页 / 共20页
课程设计(论文)说明书基于STC89C51的CC1100H无线收发系统_第2页
第2页 / 共20页
课程设计(论文)说明书基于STC89C51的CC1100H无线收发系统_第3页
第3页 / 共20页
点击查看更多>>
资源描述
课程设计(论文)说明书题 目: 基于STC89C51的 CC1100H无线收发系统 院 (系): 信息与通信学院 专 业: 通信工程 学生姓名: 学 号: 指导教师: 职 称: 副教授 2010年 12 月 23 日 桂林电子科技大学课程设计(论文)报告用纸 第 I 页 共 页摘 要无线射频技术作为本世纪最有发展前景的信息技术之一,已经得到业界的高度重视。该技术利用射频方式进行非接触双向通信,可以自动识别目标对象并获取相关数据,具有精度高、适应环境能力强、抗干扰强、操作快捷等许多优点。这是一款基于CC1101通信模块的简单无线通信系统,该系统由发射模块和接收模块组成,以STC89C51单片机为核心,以单片机应用技术、无线收发技术为理论基础,实现数据的无线收发及状态的显示。该系统的传输距离可以达到2km。研究成果对无线通信的普及具有重要意义。本文的主要内容有:1、 模块底座硬件电路的设计;2、 CC1100H模块的配置;3、 发送接收程序的设计;4、 电路的调试。关键词:STC89C52;CC1100H模块;无线收发; 桂林电子科技大学课程设计(论文)报告用纸 第 页 共 页AbstractRadio frequency technology as this centurys most promising one of information technology, has been attached great importance to the industry. The technology uses radio frequency two-way communication approach to non-contact, automatic target recognition and access to relevant data,high precision,ability to adapt to the environment,strong anti-jamming,quick operation and many other advantages. This is a communication module based on the simple CC1101 radio remote control system, the system consists of transmitter module and receiver modules, with STC89C51 MCU core, SCM applications,wireless transceiver applications based on the theory, wireless transceivers for data and status display. The distance of systems transmission up to 2km. The research is important to be extensively spread in wireless communication.content of this paper includes:1、 The design of hardware circuit of module;2、 The configuration CC1100H Module;3、 The program design of send and receive;4、Circuit debuggingKey words: STC89C51; CC1100H; Wireless transceiver 桂林电子科技大学课程设计(论文)报告用纸 第 页 共 页目 录引 言11 设计任务分析11.1无线收发原理概述11.2课题研究的背景和意义11.3 设计内容及要求12 硬件电路的设计22.1 STC89C51微控制器22.2 CC1100H通信模块的设计32.2.1 CC1100H模块简介32.2.2 CC1100H模块底座的设计42.3 电源电路的设计42.3.1电源供电方式设计42.3.2电源部分对射频电路的抗干扰设计42.3.3模块电源解决方案52.4 串口的制作52.5 单片机与CC1100H模块的SPI接口63 无线通信模块的程序设计与实现63.1 CC1100H模块的配置方式63.2 CC1100H模块SPI接口介绍83.3 CC1100H模块无线收发流程83.4 CC1100H模块发送接收程序设计93.4.1通信模块发送数据的一部分程序及注解103.4.2通信模块接收数据的一部分程序及注解104 电路调试115 结论12谢 辞13参考文献14附 录15 桂林电子科技大学课程设计(论文)报告用纸 第 15 页 共 15 页引言 近些年信息通信领域中,发展最快、应用最广的就是无线通信技术。而无线通信技术又有着集成化,低功耗,易操作的发展趋势。目前,一些只由微控制器和集成射频芯片构成的无线通信模块不断推出,这种微功率短距离无线数据传输技术在工业、民用等领域得到应用广泛。无线数据传输系统结构微功率短距离无线数据传输技术作为一种无线通信实用技术,一般使用单片射频收发芯片,加上微控制器和少量外围器件构成专用或通用无线通信模块,只要依据命令字进行操作即可实现基本的数据无线传输功能。本课题主要研究的是由STC89C51 单片机最小系统和CC1100H无线通信模块组合而成的无线通信系统。1 设计任务分析 1.1无线收发原理概述无线收发顾名思义,就是将两块通信模块以空气为传输介质来实现发送和接收数据。发送时,通过模块中携带数据的变化高频电流,在天线上形成电磁波信号,发送出去。而接收端中,天线将接收到的电磁波信号转换为携带数据的变化高频电流。1.2课题研究的背景和意义 随着现代通信技术的飞速发展,近距离无线通信技术呈现出良好的发展势头。受到越来越多人的关注。因为在现实生活中存在着许多这样的应用情况,当然传统的无线通信技术虽然能够满足要求,但免不了存在成本高,体积大,功耗大的问题,这时成本小,体积小,功耗低的短距离无线通信技术就发挥了它的优势,尤其在传统无线通信系统难于或者不便于覆盖到的区域,短距离无线通信技术可以在近距离范围内实现相互通信或相关操作。无线数据传输系统已成为当今通信业乃至整个信息业的热点,广泛应用于无线遥控、报警、无线局域网、军事通信等范围,具有一定的实际应用价值。 通常情况下,单片机在获取数据后,还需要将数据传送出去。有线数据传输依赖于有线的线路,例如采用有线的串、并行总线等。有线的线路具有成本比较高、维护不方便等缺点。无线数据传输是在有线数据传输的基础上发展起来的,而无线数据通信则是通过发射模块和接收模块来传送数据的,具有不占空间、成本低、可靠性高、维护方便及传输过程中的干扰小等优点,提高了传输过程中的可靠性。1.3 设计内容及要求 利用STC89C51单片机控制无线射频CC1100H模块实现数据收发,工作频率433MHz,通信距离02km。要求与数据:(1)实现基本收发并将接收到的数据通过串口在电脑上显示;(2)掌握单片机编程的基本思想,了解STC89C51的基本结构与特性;(3)了解CC1100H模块的结构,掌握其在无线传输中所起的作用;(4)学习Keil C51,protel99,串口调试助手等软件的使用方法;(5)掌握C语言程序的输入,运行和调试方法。2 硬件电路的设计 2.1 STC89C51微控制器图2-1 STC89C51原理图(1)51单片机原理图如图2-1 所示,包含下列几个部件: 一个8位CPU; 一个片内振荡器及时钟电路; 4KB程序存储器; 128B RAM数据存储器; 可寻址64kb外部数据存储器和64kb外部程序存储空间的控制电路; 32条可编程的I/O线(4个8位并行I/O端口); 两个16位的定时计数器; 一个可编程全双工串行口; 5个中断源、两个优先级嵌套中断结构。(2)STC89C51引脚说明 电源引脚VCC +5V 电源VSS 接地端 外接晶体引脚 XTAL1 外接晶振输入端 XTAL2 外接晶振输入端 输入输出引脚 P0.0P0.7不作为地址/数据线使用时,可作为准双向I/O口使用。但必须外接上拉电阻。 P1.0P1.7带内上拉电阻的8位准双向通用I/O 口。 P2.0P2.7带内上拉电阻的8位准双向通用I/O 口。访 问片外存储器时,P2 口用作高8位地址线。 P3.0P3.78位准双向I/O接口,每个引脚还具有第二功能 控制线 RST是复位端。当RST端出现持续两个机器周期以上的高电平时,即可实现复位操作。 2.2 CC1100H通信模块的设计 2.2.1 CC1100H模块简介模块的芯片采用Chipcon公司的CC1101,模块原理如图2-2 所示,是根据 SmartRF 技术以0.18mCMOS工艺制成的一款低成本单片UHF收发器,具有功耗低、电压低、体积小、灵敏度高等特点。电路主要工作在 315、433、868 和 915MHz 的 ISM 和 SRD(短距离设备)频率波段,也可以设置为300348MHz、400464MHz 和 800928MHz 的其它频率。CC1101集成了一个高度可配置的调制解调器,支持不同的调制格式,其数据传输率最高可达 500kbps。CC1101在1.83.6V的低电压下工作,其灵敏度为-110dBm,在所有工作频率波段上,可编程输出功率为-3010dBm。图2-2 无线通信模块原理图(1)VCC(5V)脚接电压范围为 4.5V到5.5V之间,推荐电压5V, 不能在这个电压区间之外。(2)VCC(3.3V)脚接电压范围为 3V-3.6V之间,不能在这个区间之外,超过3.6V将会烧毁模块。这里使用LM1117-3.3V芯片转换得到。(3)硬件上面没有SPI的单片机也可以控制本模块,用普通单片机IO口模拟SPI不需要单片机SPI模块介入,只需添加代码模拟SPI时序即可。(4)17脚、18脚为接地脚, 需要和母板的逻辑地连接起来。2.2.2 CC1100H模块底座的设计 CC1100H模块的SPI底座如图2-3设计,封装采用标准的DIP。 图2-3 CC1100H模块的底座设计2.3 电源电路的设计2.3.1电源供电方式设计 本实验供电电源一共设计了三种供电方式。一种是普通外接杜邦线供电接口,这种供电模式简洁方便;第二种是采用连接isp仿真器下载口供电,此种方法是因为自己有仿真器的缘故加上的,利用的这个仿真器课方便得对程序进行编译仿真,这种方法可以利用电脑的USB电源,方便调试,缺点是芯片只能用仿真芯片;第三种是USB供电电源接法如图2-4所示,此种方法是综合上述两种方法的优点,便于在电脑旁调试。图2-4 USB供电电路2.3.2电源部分对射频电路的抗干扰设计射频电路对于电源噪声相当敏感,尤其是对毛刺电压和其他高频谐波。MCU 和其它耗电量大的芯片会在每个内部时钟周期内,短时间突然吸入大部分电流,如果不在 CC1101 的电源供电端采取合适的电源去耦,必将引起电源线上的电压毛刺,在靠近电源输入端加入去耦和旁路电容,如图2-5所示。在CC1100H模块的电源供电端加入了两个220F的去耦电容和1个旁路电容,去耦电容能够有效的去除电路之间的耦合效应,旁路电容能够去除高频噪声。在MCU和其它芯片的电源供电端也分别加入去耦和旁路电容,以减少电源噪声带来的影响。图2-5 电源滤波电路2.3.3模块电源解决方案采用5V电压,通过LM1117-3.3将其稳压到 3.3V。这种方案的优点是线性稳压芯片的价格便宜,输出电压纹波小。电路接法如图2-6所示图2-6 lm1117-3.3连接图2.4 串口的制作串口通信(Serial Communication),是指外设和计算机间,通过数据信号线、地线、控制线等,按位进行传输数据的一种通讯方式。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。主要工作集中在模块化程序的调试,在具体调试过程中需要借助于串行口调试助手来模拟无线遥控开关的工作流程。串口电路如图2-7所示,通过数据总线与主控电路相连,该电路由单片机、RS-232驱动芯片、复位电路、RS232串口构成。直接将RS-23串口接收来的信号转换成微控制器能够识别和处理的信号,或者将微控制器发送的信号通过串口进行通讯,串行信号通过数据总线P3.0、P3.1输入,经单片机转换为TTL电平RS-232信号,经232接口驱动芯片及5个电容组成的转换电路将TTL电平RS-232信号转换成标准的RS-232信号。图2-7 串口电路2.5 单片机与CC1100H模块的SPI接口本课设用单片机的P1口与CC1100H模块相连。相连方式如图2-8所示图2-8 MCU与模块接口图3 无线通信模块的程序设计与实现 无线数据通信最重要的是如何保证系统通信的可靠性,减少通信冲突和降低误码率等问题,这也正是本文开发无线反馈系统的关键。 3.1 CC1100H模块的配置方式 CC1101 具有 14 个命令寄存器(Command Strobe Registers),访问这些寄存器将会发起内部状态或模式的改变;有 47 个普通 8 位配置寄存器(Configuration Registers),配置这些寄存器可以完成系统参数的选择;还有12 个状态寄存器(Status Registers),读取这些寄存器可以获得 CC1101 的状态信息。CC1101 通过4线SPI兼容接口(SI,SO,SCLK 和 CSn)配置,这个接口同时用作写和读缓存数据。SPI 接口是一种同步串行通信接口,CSn 是芯片选择管脚,当该管脚为低电平时,SPI 接口可以通信,反之不能通信。SI 和 SO 为数字传输管脚,SI 用于数据输入,SO 用于数据输出,SCLK 为同步时钟,在时钟的上升沿数据被写入或读出,PAC为发送和接收使能端。CC1101 的 SPI 接口的读、写操作工作方式如图3-1所示。 图3-1 CC1101读写操作时序图在读或是写寄存器时,首先要在 SI 管脚写入寄存器地址字节。地址字节有 8 位,最高位为读写位,后七位为地址位。当执行写寄存器操作时,读写位为0;当执行读操作时,读写位为 1。无论是读操作还是写操作,在地址字节被写入时,SO 脚上输出一个芯片状态字节,状态字节包含关键状态信号。CC1101 的 TX FIFO(发射先进先出堆栈)和 RX FIFO(接收先进先出堆栈)也可以用同样的读写方式进行访问,只是使用与配置寄存器不同的地址段加以区别。另外,CC1101 的内部指令也是通过 SPI 接口传输的,这些指令用来关闭晶体振荡器,开启传输模式,状态转换和电磁波激活等,通过 SI 写入特定的字节使 CC1101 执行不同的命令。由于 CC1101 的寄存器比较多,为了提高程序的执行效率,编写了相应的函数来进行寄存器配置表3-1 无线通信模块函数和功能函数名称函数功能halSpiWriteReg(INT8U addr, INT8U value)SPI写寄存器操作halSpiReadReg(INT8U addr)SPI读寄存器halSpiWriteBurstReg(INT8U addr, INT8U *buffer, INT8U count)SPI连续写配置寄存器halSpiStrobe(INT8U strobe)SPI写命令halSpiReadBurstReg(INT8U addr, INT8U *buffer, INT8U count)SPI连续读配置寄存器halSpiReadStatus(INT8U addr)SPI读状态寄存器halRfWriteRfSettings(void)配置CC1101的寄存器halRfSendPacket(INT8U *txBuffer, INT8U size)CC1101发送一组数据halRfReceivePacket(arrRx,&leng)CC1101接收一组数据3.2 CC1100H模块SPI接口介绍SPI(Serial Peripheral Interface)是一种串行同步通讯协议,由一个主设备和一个或多个从设备组成,主设备启动一个与从设备的同步通讯,从而完成数据的交换。SPI 接口由MOSI(串行数据输入),MISO(串行数据输出),SCK(串行移位时钟),CSn(从使能信号)四种信号构成,CSn 决定了唯一的与主设备通信的从设备,如没有CSn 信号,则只能存在一个从设备,主设备通过产生移位时钟来发起通讯。通讯时,数据由SO 输出,SI 输入,数据在时钟的上升或下降沿由SO 输出,在紧接着的下降或上升沿由SI 读入,这样经过8/16 次时钟的改变,完成8/16 位数据的传输。本课设单片机用P1口与CC110模块相连。在地址和数据转换期间,CSn脚(芯片选择,低电平有效)必须保持为低电平。如果在过程中CSn变为高电平,则转换取消。当CSn变低,在开始转换头字节之前,MCU必须等待,直到SO脚变低。这表明电压调制器已经稳定,晶体正在运作中。除非芯片处在SLEEP或XOFF状态,SO脚在CSn变低之后总会立即变低。SPI接口定时要求如表3-2所示。表3-2 SPI接口定时要求参数描述最小值最大值FSCLKSCLK频率010MHztsp,pdCSn低到SCLK的正边缘,功率降低模式下150us-tspCSn低到SCLK的正边缘,活动模式下20ns-tch时钟高50ns-tcl时钟低50ns-trise时钟上升时间-5nstfall时钟上升时间-5nstsd向SCLK的正边缘建立数据TDBns-thd在SCLK的正边缘之后保持数据TDBns-tnsSCLK到CSn高时的负边缘TDBns-3.3 CC1100H模块无线收发流程 通过对 CC1101 进行正确的参数配置,就能够实现数据的无线传输。其无线收发程序流程如图4-1所示。当CC1101状态不正常时可以通过程序控制来复位芯片。 程序复位的操作顺序如下: (1)设置 SCLK=1 和 SI=0,以避免引脚控制模式造成潜在的问题; (2)设置 CSn 为低,然后再拉高; (3)保持 CSn 为高至少 40s; (4)将 CSn 拉低,等待 SO 变低(CHIP_RDYn); (5)在 SI 上发送 SRES 命令; (6)当 SO 再次变低后,复位工作完成,CC1101 处于 IDLE 状态。程序流程图:开始端口初始化配置寄存器设置发送初值PAC=1发送数据是否复位继续发送PAC=0NNYN清空发送缓冲区结束开始结束端口初始化配置寄存器PAC=0接收状态发送到串口清空接收缓冲区接收到数据是否复位YNYNNNNN发送端流程图 接收端流程图图3-2无线收发程序流程3.4 CC1100H模块发送接收程序设计在发射状态时,在进行射频寄存器的初始化设置后,发送端将所设定的值打包等待发送,单片机发送数据时,单片机按照SPIO接口时序把要发送的数据写入CC1101,再初始化发射端的地址,且应当与接收端的地址相互匹配,发射端发射的数据有效宽度必须与接收端设置一致。然后PAC置高把单片机设置为发送模式,并且完成数据打包。发送完成后,PAC置低,CC1100H模块回到接收模式。 在接收时,初始化的设置同发射时基本一致,然后CC1101被设置为接收模式,不断地检测载波,等待接收数据,当检测到同频段的载波并且地址也匹配时,CC1101进行数据包的接收,并完成校验等相关工作。接着,将数据通过SPI接口传输到单片机中,单片机将数据通过发送到串口在PC上显示出来,一直循环。3.4.1通信模块发送数据的一部分程序及注解/*/函数名:void halRfSendPacket(INT8U *txBuffer, INT8U size)/输入:发送的缓冲区,发送数据个数/输出:无/功能描述:CC1100发送一组数据/*void halRfSendPacket(INT8U *txBuffer, INT8U size) halSpiWriteReg(CCxxx0_TXFIFO, size); halSpiWriteBurstReg(CCxxx0_TXFIFO, txBuffer, size);/写入发送的数据 PAC=1; /发送使能 halSpiStrobe(CCxxx0_STX);/进入发送模式发送数据 / Wait for GDO0 to be set - sync transmitted while (!GDO0); / Wait for GDO0 to be cleared - end of packet while (GDO0); /数据发送完 PAC=0; /接收使能halSpiStrobe(CCxxx0_SFTX); /清洗发送缓冲区3.4.2通信模块接收数据的一部分程序及注解INT8U halRfReceivePacket(INT8U *rxBuffer, INT8U *length) INT8U status2; INT8U packetLength; halSpiStrobe(CCxxx0_SRX);/进入接收状态 while (!GDO0); while (GDO0); if (halSpiReadStatus(CCxxx0_RXBYTES) & BYTES_IN_RXFIFO) /是否有接收数据 packetLength = halSpiReadReg(CCxxx0_RXFIFO);/读出第一个字节,此字节为该帧数据长度 if (packetLength = *length) /如果所要的有效数据长度小于等于接收到的数据包的长度 halSpiReadBurstReg(CCxxx0_RXFIFO, rxBuffer, packetLength); /读出所有接收到的数据 *length = packetLength; /把接收数据长度的修改为当前数据的长度 halSpiReadBurstReg(CCxxx0_RXFIFO, status, 2);/读出CRC校验位 return (status1 & CRC_OK);/如果校验成功返回接收成功 else *length = packetLength; halSpiStrobe(CCxxx0_SFRX);/清洗接收缓冲区 return 0; else return 0;4 电路调试 用KEIL C软件将程序经过编译,调试,把编译好的程序(程序中事先把发射功率设为0dbm)通过串行口下载到单片机中。 从网络中下一个串口调试助手,运行串口调试助手,将软件的波特率设置为9600,将两块模块放置在30cm左右距离中,打开串口及接通发送接收模块电源。这样发送端开始发送循环发送BB AA 55 09(程序中事先设定),而接收端收到的内容如图4-1所示。然后将两块模块放置在相隔30米远的地方,接上述操作,模块任然能发送接收正常。如果将串口调试助手的波特率设为其他值时,可以发现,接收到的数值不对,或者直接不显示。而在程序的发送功率设置中,如果把功率设的过大的话,发送模块会有轻微的发热,因此在调试的过程中,必须设置好波特率和根据实际的情况选择相应的发送功率。图4-1 串口调试助手接收这样,两块无线通信板就能成功完成对接通信啦。5 结论 发送接收距离的影响因素:(1)发射功率:发射功率大则距离远,但耗电大,容易产生干扰;(2)天线:采用直线型天线,天线越高,通信距离越远;(3)阻挡:目前使用的无线频率使用国家规定的UHF频段,其传播特性和光近似,直线传播,绕射较小,发送和接收之间是否有障碍物关系到通信的成功与否。在本次课程设计的研究中,我大有收获。增加对现代科技特别是通信方面的了解。 经过四年学习的积累,在已经掌握相关专业方面知识及其它各方面知识的情况下,我认真严肃的完成了我的课程设计。从一开始的确定课题,到后来的资料查找、理论学习,再有就是近来的调试和测试过程,这一切都使我的理论知识和动手能力得到很大的加强,可以说是对电路知识的一次全面综合。在通信理论的学习和实际电路的识别、分析以及后来的测试过程中不可避免地遇到各种问题,这要求保持沉着冷静积极地思考,虚心请教同学或指导老师。为深入认识当今无线通信的技术及发展,我在图书馆、互连网上查阅了大量的相关知识。对现在通信类设备的工业制造有了较实际的认识,并对部分流行的通信类芯片有了一定的了解。基本完成了本次课程设计任务。 谢 辞本课题在选题及研究过程中得到覃远年老师的悉心指导,感谢覃远年老师把我带进一个新领域无线射频通信这个行业。覃老师一丝不苟的作风,严谨求实的态度,踏踏实实的精神,使我受益匪浅、终身难忘,虽历时一个月,却给以终生受益无穷之道。对覃老师的感激之情是无法用言语表达的。感谢赵明剑老师等对我的教育培养。他们细心指导我的学习与研究,在此,我要向诸位老师深深地鞠上一躬。感谢院长以及其他各位领导等提供给我们的这次机会,为我提供了良好的研究条件。更要感谢我的同学,在课设中帮我排忧解难的同学以及舍友对我学习、生活的关心和帮助。使我在学习过程中能够迎难而上,最终取得学业上的进步和成功。参考文献 1 李群芳,张士军,黄建单片微型计算机与接口技术M北京:电子工业出版社,2008 2 胡烨.姚鹏翼.Protel 99se电路设计与仿真教程M北京: 机械工业出版社,2005 3 阎石 数字电子技术基础M北京:高等教育学出版社,20064 王卫东模拟电子电路基础M西安:西安电子科技出版社,2006 5 郭兵SOC技术原理应用M北京:清华大学出版社,2006 6 李文仲,段朝玉CC1110/CC2510无线单片机和无线自组织网络入门与实战M北京:北京航空航天大学出版社,2008 7 夏季强,沈德金单片机实验与实践教程M北京:北京航空航天大学出版社,2001 8 郭天祥新概念51单片机C语言教程M北京:电子工业出版社,2009附 录电路原理图PCB图
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!