1、目 录中文摘要I英文摘要II1 绪论11.1 无线网络的应用价值11.2 现有的无线模块介绍11.2.1 CC110011.2.2 nRF90511.2.3 nRF240111.3 无线通信协21.4 CSMA/CA无线网络设计实现与应用32 无线通信网络的实现42.1 单片机与无线模块42.1.1 51单片机的性能与使用42.1.2 nRF2401的特性42.1.3 单片机与无线模块的接口SPI总线52.1.4 无线模块的工作模式62.1.5 配置无线模块实现点对点的通信72.2 无线通信网络82.2.1无线网络的概念82.2.2点对多点的无线网络实现82.3 单片机的rs232串口在通信过
2、程中的应用82.3.1单片机的rs232串口的原理82.3.2单片机的rs232串口在无线网络设计调试中的应用93 CSMA-CA的多点多主机式无线网络的具体实现方法94 网络系统的主要流程图114.1基站的流程图114.2网络系统流程图125 硬件电路设计介绍135.1系统电平介绍135.1.1 TTL电平标准135.1.2 两种电平供电与转化的解决方案135.2单片机相关电路135.2.1 单片机复位电路145.2.2 晶振电路155.2.3单片机串口电路165.3单片机与nRF2401接口电路165.3.1 电平转化175.3.2 单片机和nRF2401的连接175.4系统总体电路图17
3、6 结论18致 谢19参考文献20附录120附录222附录322附录423附录527附录628II1 绪论1.1 无线网络的应用价值无线网络的历史起源可以追溯到50年前第二次世界大战期间。当时,美国陆军研发出了一套无线电传输技术,采用无线电信号进行资料的传输。这项技术令许多学者产生了灵感。1971年,夏威夷大学的研究员创建了第一个无线电通讯网络,称作ALOHNET。这个网络包含7台计算机,采用双向星型拓扑连接,横跨夏威夷的四座岛屿,中心计算机放置在瓦胡岛上。从此,无线网络正式诞生。 近些年来由于电子科技的发展无线网络灵活性和移动性,安装便捷,易于进行网络规划和调整。故障定位容易,易于扩展等优点
4、被凸显的淋漓尽致。因此其发展十分迅速。最近几年,无线局域网已经在企业、医院、商店、工厂和学校等场合得到了广泛的应用。1.2 现有的无线模块介绍1.2.1 CC1100 它是一种低成本真正单片的UHF收发器,为低功耗无线应用而设计。电路主要设定为在315、433、868和915MHz的ISM(工业,科学和医学)和SRD(短距离设备)频率波段,也可以容易地设置为300-348 MHz、400-464 MHz和800-928 MHz的其他频率。它还为数据包处理、数据缓冲、突发数据传输、清晰信道评估、连接质量指示和电磁波激发提供广泛的硬件支持。CC1100为数据包处理、数据缓冲、突发数据传输、清晰信道
5、评估、连接质量指示和电磁波激发提供广泛的硬件支持。1.2.2 nRF905 它的RF收发器集成了一个高度可配置的调制解调器。这个调制解调器支持不同的调制格式,在915M频段其数据传输率可达500kbps。通过开启集成在调制解调器上的前向误差校正选项,能使性能得到提升。1.2.3 nRF2401它是是一款工作在2.42.5GHz 世界通用ISM 频段的单片无线收发器芯片,它内部无线收发器的频率发生器具有增强型SchockBurstTM 模式,能高效的与低速或中速CPU结合提高发射速度和效率。此外它内部的功率控制器,晶体振荡器,调制器,解调器,输出功率频道选择和协议的设置都可以通过SPI 接口方便
6、的被CPU设置。他功耗极低当工作在发射模式下发射功率为-6dBm 时电流消耗为9.0mA 接收模式时为12.3mA,掉电模式和待机模式下电流消耗更低。1.3 无线通信协目前比较常用的无线网络协议有如下四种:IEEE802.11系列协议: 作为全球公认的局域网权威,IEEE 802工作组建立的标准在局域网领域内得到了广泛应用。这些协议包括802.3以太网协议、802.5令牌环协议和802.3z100BASE-T快速以太网协议等。IEEE于1997年发布了无线局域网领域第一个在国际上被认可的协议802.11协议。1999年9月,IEEE提出802.11b协议,用于对802.11协议进行补充,之后又
7、推出了802.11a、802.11g等一系列协议,从而进一步完善了无线局域网规范。 蓝牙规范(Bluetooth): 蓝牙规范是由SIG(特别兴趣小组)制定的一个公共的、无需许可证的规范,其目的是实现短距离无线语音和数据通信。蓝牙技术工作于2.4GHz的ISM频段,基带部分的数据速率为1Mbit/s,有效无线通信距离为10100m,采用时分双工传输方案实现全双工传输。蓝牙技术采用自动寻道技术和快速跳频技术保证传输的可靠性,具有全向传输能力,但不需对连接设备进行定向。在任意时间,只要蓝牙技术产品进入彼此有效范围之内,它们就会立即传输地址信息并组建成网,这一切工作都是设备自动完成的,无需用户参与。
8、 HomeRF标:准HomeRF工作组于1998年为在家庭范围内实现语音和数据的无线通信制订出一个规范,即共享无线访问协议(SWAP)。该协议主要针对家庭无线局域网,其数据通信采用简化的IEEE802.11协议标准。HomeRF标准采用扩频技术,工作在2.4GHz频带,可同步支持4条高质量语音信道并且具有低功耗的优点,适合用于笔记本电脑。 HyperLAN/2标准: 2002年2月,ETI的宽带无线接入网络(Broadband Radio Access Networks,BRAN)小组公布了HiperLAN/2标准。HiperLAN/2标准由全球论坛(H2GF)开发并制定,在5GHz的频段上运
9、行,并采用OFDM调制方式,物理层最高速率可达54Mbit/s,是一种高性能的局域网标准。HyperLAN/2标准定义了动态频率选择、无线小区切换、链路适配、多波束天线和功率控制等多种信令和测量方法,用来支持无线网络的功能。基于HyperRF标准的网络有其特定的应用,可以用于企业局域网的最后一部分网段,支持用户在子网之间的IP移动性。在热点地区,为商业人士提供远端高速接入因特网的服务,以及作为W-CDMA系统的补充,用于3G的接入技术,使用户可以在两种网络之间移动或进行业务的自动切换,而不影响通信。1.4 CSMA/CA无线网络设计实现与应用CSMA/CA协议的工作流程分为两个分别是:送出数据
10、前,监听媒体状态,发现媒体空闲时,维持一段时间后,再等待一段随机的时间后依然没有被使用,才送出数据。由於每个设备采用的随机时间不同,所以可以减少冲突的机会。 送出数据前,先送一段小小的请求传送报文(RTS: Request to Send)给目标端,等待目标端回应 CTS: Clear to Send 报文后,才开始传送。 利用RTS-CTS握手(handshake)程序,确保接下来传送资料时,不会被碰撞。 同时由於RTS-CTS封包都很小,让传送的无效开销变小。CSMA/CA通过这两种方式来提供无线的共享访问,这种显式的ACK机制在处理无线问题时非常有效。然而不管是对于802.11还是802
11、.3来说,这种方式都增加了额外的负担,所以802.11网络和类似的Ethernet网比较总是在性能上稍逊一筹。 以协议为依据,用89s52单片机模拟SPI总线控制nRF2401无线模块,通过对无线模块合理的配置,可很容易的在物理层和数据链路层实现符合协议要求点对点的通信。接下来我们模拟以上两条协议,安排合理的路由方式以及传输层无重复无丢失的传输控制协议。即可实现一个具有CSMACA意义的无线通信网络。并且基于这个网络,我们设计了一个具有,及步进电机控制,和LCD中文操作菜单界面的简单预警系统(应用部分由队友完成)。2 无线通信网络的实现2.1 单片机与无线模块2.1.1 51单片机的性能与使用
12、本设计选用被普及使用的性价比很高的微处理器AT89S52作为系统核心,它是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 它还有256字节RAM,32 位I/O 口线,看门狗定时器,2个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路
13、。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。它来控制nRF2401可以很好的互相配合,发挥各自的功能。2.1.2 nRF2401的特性(1) 2.4GHz 全球开放ISM 频段免许可证使用。(2) 最高工作速率2Mbps,高效GFSK调制,抗干扰能力强,特别适合工业控制场合。(3) 126 频道,满足多点通信和跳频通信需要。(4) 内置硬件CRC 检错和点对多点通信地址控制。(5
14、) 低功耗1.9 - 3.6V 工作,待机模式下状态为22uA;掉电模式下为900nA。(6) 内置2.4GHz 天线,体积小巧15mm X29mm。(7) 模块可软件设地址,只有收到本机地址时才会输出数据(提供中断指示),可直接接各种单片机使用,软件编程非常方便。(8) 内置专门稳压电路,使用各种电源包括DC/DC 开关电源均有很好的通信效果。(9)与51系列单片机P0口连接时候,需要加10K的上拉电阻,与其余口连接不需要上拉电阻。关于nRF2401的内部模块结构图参照下图2-1:图2-1 nRF2401的内部模块结构图2.1.3 单片机与无线模块的接口SPI总线SPI 就是串行外围设备接口
15、,是一种高速的、全双工、同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB 的布局上节省空间,提供方便。该接口一般使用4 条线:串行时钟线(SCK)、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOSI和低电平有效的从机选择线SS(有的SPI 接口芯片带有中断信号线INT 或INT、有的SPI 接口芯片没有主机输出/从机输入数据线MOSI)。SPI 的工作模式有两种:主模式和从模式,无论那种模式,都支持3Mbit/s的速率,并且还具有传输完成标志和写冲突保护标志。SPI总线时序格式如下图2-2:图2-2 SPI总线时序格式2.1.4无线模块的工作模式n
16、RF2401工作模式有四种:其中收发模式收发模式有Enhanced ShockBurstTM收发模式、ShockBurstTM收发模式和直接收发模式三种,第四种模式为掉电等待模式。收发模式由器件配置字决定,由于篇幅所限这里只介绍将Enhanced ShockBurstTM收发模式及其配置和应用。Enhanced ShockBurstTM收发模式下,使用片内的先入先出堆栈区,数据低速从微控制器送入,但高速(1Mbps)发射,这样可以尽量节能,因此,使用低速的微控制器也能得到很高的射频数据发射速率。与射频协议相关的所有高速信号处理都在片内进行,这种做法有三大好处:尽量节能;低的系统费用(低速微处理
17、器也能进行高速射频发射);数据在空中停留时间短,抗干扰性高。Enhanced ShockBurstTM技术同时也减小了整个系统的平均工作电流。Enhanced ShockBurstTM发射流程:(1). 把接收机的地址和要发送的数据按时序送入nRF24L01。(2). 配置CONFIG寄存器,使之进入发送模式。(3). 微控制器把CE置高(至少10us),激发nRF24L01进行Enhanced ShockBurstTM发射。(4).N24L01的Enhanced ShockBurstTM发射 a. 给射频前端供电 b.射频数据打包(加字头、CRC校验码) c. 高速发射数据包 d.发射完成,
18、nRF24L01进入空闲状态。Enhanced ShockBurstTM接收流程:(1). 配置本机地址和要接收的数据包大小;(2). 配置CONFIG寄存器,使之进入接收模式,把CE置高;(3). 130us后,nRF24L01进入监视状态,等待数据包的到来;(4).当接收到正确的数据包(正确的地址和CRC校验码),nRF2401自动把字头、地址和CRC校验位移去;(5). nRF24L01通过把STATUS寄存器的RX_DR置位(STATUS一般引起微控制器中断)通知微控制器;(6). 微控制器把数据从NewMsg_RF2401 读出;(7). 所有数据读取完毕后,可以清除STATUS寄存
19、器。nRF2401可以进入四种主要的模式之一。2.1.5 配置无线模块实现点对点的通信首先,参照附录硬件电路,并根据SPI总线的时序格式写出SPI读写函数见附录1。之后,即可利用上述SPI读写函数,根据附录6中的单片机硬件电路和2.1.4节中的收发流程,以及附录5nRF2401寄存器及命令,对nRF2401进行配置,配置函数名称为void congfig_2401()函数体见附录2。 最后,即可通过下面两个函数方便的实现指定字节数,和指定地址的发送与接收。发送函数为:fasong(uchar *f,uchar *s),其中的指针f,s分别为发送数据的首地址,和目的地址的首地址。接收函数为:ji
20、eshou(uchar *f,uchar *s),指针f,s分别为存放数据缓冲区和接收地址。发送函数和接收函数体见附录3。通过软件对不同的nRF2401分配不同的地址,至此,用发送和接收函数即可进行点到点自由通信。2.2 无线通信网络2.2.1无线网络的概念无线网络就是用无线介质的物理链路将各个孤立的工作站或主机相连在一起,组成数据链路,从而达到资源共享和通信的目的。凡将地理位置不同,并具有独立功能的多个计算机系统或者MCU通过通信设备,且以功能相对完善的网络软件(主要是网络协议、信息交换方式及网络操作系统等)实现网络资源共享的系统。通俗的讲无线通信网络就是将点对点的无线通信统一遵循一套协议,
21、从而能够有效地实现多机的资源共享。2.2.2点对多点的无线网络实现 点对多点的网络多采取轮询的结构,一个轮询通信系统主要包括一个主站和多个连接到该主站的子站。该主站包括一个地址控制部分和一个轮询控制部分。地址控制部分把一个预定的轮询周期分成多种类型的轮询间隔,其中每个轮询间隔具有一个不同的轮询次数,并且保持对应于相应轮询间隔的轮询目标子站的地址。轮询控制部分切换该轮询间隔,并且依据子站的状态改变在地址控制部分中的地址。每一个子站包括另一个轮询控制部分,它在该子站被主站轮询时发送一个答复。在点对点通信实现的情况上下,通过软件定义一个主站,剩余的三个作为从站,有主站顺序的发送询问指令,询问之后收到
22、请求应答即将通信线路释放给该机使用,等其通信完毕再发送返回指令给主机,主机继续下一站轮询 这种方法的好处在于它有效地避免了通信冲突造成的数据混乱,几乎避免了所有的冲突。而它的缺点是数据传输的实时性很差,因为任何一个站占用无线介质的时间都是未知的。这样可能会延误其他基站的紧急信息。2.3 单片机的rs232串口在通信过程中的应用2.3.1单片机的rs232串口的原理 串口通讯对单片机而言意义重大,不但可以实现将单片机的数据传输到计算机端,而且也能实现计算机对单片机的控制。由于其所需电缆线少,接线简单,所以在较远距离传输中,得到了广泛的运用。波特率(Boud Rate)就是在串口通信中每秒能够发送
23、的位数(bits/second)。89S52串行端口在四种工作模式下有不同的波特率计算方法。其中,模式0和模式2波特率计算很简单,请同学们参看教科书;模式1和模式3的波特率选择相同,故在此仅以工作模式1为例来说明串口通信波特率的选择。在串行端口工作于模式1,其波特率将由计时/计数器1来产生,通常设置定时器工作于模式2(自动再加模式)。在此模式下波特率计算公式为:波特率=(1+SMOD)*晶振频率/(384*(256-TH1)其中,SMOD寄存器PCON的第7位,称为波特率倍增位; TH1定时器的重载值。在选择波特率的时候需要考虑两点:首先,系统需要的通信速率。这要根据系统的运作特点,确定通信的
24、频率范围。然后考虑通信时钟误差。使用同一晶振频率在选择不同的通信速率时通信时钟误差会有很大差别。为了通信的稳定,我们应该尽量选择时钟误差最小的频率进行通信。2.3.2单片机的rs232串口在无线网络设计调试中的应用在本设计中所有站收到的和发送出的数据(除系统时钟数据外)都会被MCU都会通过RS232串口上传到PC机,并通过串口调试助手软件显示在电脑上。 有了RS232串口,单片机在无线通信过程中发送的和接收到的数据都可以很容易的串行发送到PC机上,这样就可以通过PC机的屏幕很直观的读出无线系统现在的工作状态与数据传递的具体情况,便于及时的发现问题,调试出错误,并改正、更新、升级软件系统。3 C
25、SMA-CA的多点多主机式无线网络的具体实现方法物理层:通信占用2.4GHz 全球开放ISM 免费使用频段。 最高工作速率2Mbps,高效GFSK调制,抗干扰能力强,126 频道,内部寄存器控制,满足多点通信和跳频通信需要,内置硬件CRC 检错和点对多点通信地址控制。数据链路层:数据帧格式为前导码地址(3-5字节)9位(标志位)数据1-32字节CRC校验数据帧格式地址、数据和CRC校验的字节数有MCU配置控制。网络层:对数据帧加入路由1字节路由信息然后封装,每个系统开机后首先自检然后自动建立自己的路由表,控制本字节实现路由功能(由于本设计只有4个基站,所以最多支持1级中继路由表最多只有三级比较
26、简单)。传输层:每次发送数据之前进行载波监听,当检测到载波之后,自动转换载波频率,再次监听.直到发现空白频段,在空白频段首先发送一个字节的询问字节,若正确接收到对方的应答则开始正常通信,若超时未收到应答则说明通信冲突,系统会随机延时一段时间重新询问,继续上边的过程。网络层的数据包在这里还会被加上一个字节的数据计数信息,以辅助完成滑动窗口流控制传输,保证数据包无重复无丢失的传到目的地。应用层:在这里只是在每秒三次时间信息作为冲突演示的对象。通过串口将每个数据包剥去应用无关的传输层以下的信息,只留下应用信息上传至PC显示。网络实现的主程序见附录4。4 网络系统的主要流程图4.1基站的流程图广播询问
27、信息监测是否1s超时将所有源址记录位地址表存储接收读出帧转化为单片机识别字符配置发送需要路由?传输层校验分离应用信息加发送任务标记加路由标记字节加传输标记字节处理接收应用层信息等待回复收到回复记录源址中断检测时间片转化为帧写到rf2401NYYN发送图4-1 基站的流程简图4.2网络系统流程图nRF2401单片机主控部分RS232 PC接口nRF2401单片机主控部分RS232 PC接口nRF2401单片机主控部分RS232 PC接口nRF2401单片机主控部分RS232 PC接口多主式,突发性处理,多路径频段,CSMA/CA无线网络图4-2 网络系统框图5 硬件电路设计介绍5.1系统电平介绍
28、5.1.1 TTL电平标准51单片机采用TTL电平标准,TTL集成电路的全名是晶体管-晶体管逻辑集成电路(Transistor-Transistor Logic),主要有54/74系列标准TTL、高速型TTL(H-TTL)、低功耗型TTL(L-TTL)、肖特基型TTL(S-TTL)、低功耗肖特基型TTL(LS-TTL)五个系列。标准TTL输入高电平最小2V,输出高电平最小2.4V,典型值3.4V,输入低电平最大0.8V,输出低电平最大0.4V,典型值0.2V。S-TTL输入高电平最小2V,输出高电平最小类2.5V,、类2.7V,典型值3.4V,输入低电平最大0.8V,输出低电平最大0.5V。L
29、S-TTL输入高电平最小2V,输出高电平最小类2.5V,、类2.7V,典型值3.4V,输入低电平最大类0.7V,、类0.8V,输出低电平最大类0.4V,、类0.5V,典型值0.25V。nRF2401采用CMOS点评标准CMOS是场效应管构成,TTL为双极晶体管构成 CMOS的逻辑电平范围比较大(515V),TTL只能在5V下工作CMOS的高低电平之间相差比较大、抗干扰性强,TTL则相差小,抗干扰能力差CMOS功耗很小,TTL功耗较大(15mA/门) CMOS的工作频率较TTL略低,但是高速CMOS速度与TTL差不多相当。为了降低功耗nRF2401采用的工作电压为3.3V。5.1.2 两种电平供
30、电与转化的解决方案 在本设计中采用11173.3来讲5V的TTL电平转化为3.3V的CMOS电平供nRF2401使用。而他们的I/O接口具有兼容性,因此不必做其他的处理。5.2单片机相关电路 表5-1 P1的特殊功能引脚号第二功能P1.0T2(外部定时计数器输入),时钟输出P1.1T2EX(定时计数器T2的)捕捉重载触发信号P1.5MOSI(在线编程系统用)P1.6MISO(在线编程系统用)P1.7SCK(在线系统编程用)表5-2 P3的特殊功能引脚号第二功能P3.0 RXD串行输入口P3.1 TXD串行输出口 P3.2 /INT0外部中断0 P3.3 /INT1外部中断1P3.4 T0计时器
31、0外部输入P3.5 T1计时器1外部输入 P3.6 /WR外部数据存储器写选通 P3.0 /RD外部数据存储器读选通5.2.1 单片机复位电路为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。一般微机电路正常工作需要供电电源为5V5%,即 4.755.25V。由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器 稳定工作时,复位信号才被撤除,微机电路开始正常工作。目前为止,单片机复位电路主要有四种类型:(1)微分型复位电路;(2)积分型复位电路;(3)比较器型复位电路;(4)看门狗型
32、复位电路。电路图如下:图5-1 复位电路5.2.2 晶振电路电路图如下:图5-2 晶振电路晶振是晶体振荡器的简称,在电气上它可以等效成一个电容和一个电阻并联再串联一个电容的二端网络,电工学上这个网络有两个谐振点,以频率的高低分其中较低 的频率是串联谐振,较高的频率是并联谐振。由于晶体自身的特性致使这两个频率的距离相当的接近,在这个极窄的频率范围内,晶振等效为一个电感,所以只要晶 振的两端并联上合适的电容它就会组成并联谐振电路。这个并联谐振电路加到一个负反馈电路中就可以构成正弦波振荡电路,由于晶振等效为电感的频率范围很窄, 所以即使其他元件的参数变化很大,这个振荡器的频率也不会有很大的变化。晶振
33、有一个重要的参数,那就是负载电容值,选择与负载电容值相等的并联电容,就可以得到晶振标称的谐振频率。 一般的晶振振荡电路都是在一个反相放大器(注意是放大器不是反相器)的两端接入晶振,再有两个电容分别接到晶振的两端,每个电容的另一端再接到地,这两个电容串联的容量值就应该等于负载电容,请注意一般IC的引脚都有等效输入电容,这个不能忽略。5.2.3单片机串口电路单片机内部串口与RS232电平转化电路: 图5-3 单片机内部串口与RS232电平转化电路5.3单片机与nRF2401接口电路5.3.1 电平转化图5-4 1117 3.3v电压转换电路5.3.2 单片机和nRF2401的连接图5-5 nRF2
34、401接口电路5.4系统总体电路图见附录6 6 结论本设计采用以CSMA/CA为基础的无线网络通信协议,以89S52和nRF2401为硬件平台,不仅有处理突发性多主式通信需求的能力并具有一定的纠错能力和抗干扰能力,和自动识别路由的能力。从很大程度上改善了旧无线网络轮询式工作,效率较低和通信不可靠的问题;同时也具有很好的移植性,能应与用于现今大部分系统与场所。同时本系统具有很好的扩展性能。虽然我们的设计基本实现了我们计划的功能,但是还是有很多的不足,比如说在系统的稳定性和系统反应速度方面还有很大的欠缺,可这些不足正是我们去更好的研究更好的创造的最大动力,只有发现问题面对问题才有可能解决问题,不足
35、和遗憾不会给我打击只会更好的鞭策我前行,今后我更会关注新技术新设备新工艺的出现,并争取尽快的掌握这些先进的知识,更好的为祖国的四化服务。通过这次比较完整的无线网络应用系统的设计,我摆脱了单纯的理论知识学习状态,和实际设计的结合锻炼了我的综合运用所学的专业基础知识,解决实际工程问题的能力,同时也提高我查阅文献资料、设计手册、设计规范以及电脑编程等专业能力水平,而且通过对整体的掌控,对局部的取舍,以及对细节的斟酌处理,都使我的能力得到了锻炼,经验得到了丰富,并且意志品质力,抗压能力及耐力也都得到了不同程度的提升。虽然毕业设计内容繁多,过程繁琐但我们的收获却更加丰富。各种系统的适用条件,各种元器件的
36、选用标准,各种程序的实用算法,我都是随着设计的不断深入而不断熟悉并学会应用的。和老师的沟通交流更使我从经济和实用性的角度对设计有了新的认识也对自己提出了新的要求。提高是有限的但提高也是全面的,正是这一次设计让我积累了实际经验,使我的头脑更好的被知识武装了起来,也必然会让我在未来的工作学习中表现出更高的应变能力,更强的沟通力和理解力。致 谢经过四年的学习,现在终于要毕业了。在学习期间经历了风风雨雨,在各位老师和同学的帮助和支持下最终得以顺利完成。在此,首先感谢我的老师,感谢各位老师这四年中在学习中、生活上的关心和照顾;其次感谢各位同学,同学们在生活中给予很大的帮助,在学习上也给极大的鼓舞。指导老
37、师董承廷和忽晓伟治学严谨,学识渊博,平易近人,在我做设计和论文期间对我的教诲和指导将使我终生受益。无论是在平时的阶段,还是在论文的选题、资料查询、开题、研究、设计和撰写的每一个环节,都得到导师的悉心指导和帮助。借此机会向两位老师表示衷心的感谢!在毕业设计的这段时间里,其他老师们也都言传身教,以他们广博的知识,敏锐的洞察力,多年的教学和实际工作经验,在毕业设计上给予我很大的帮助。在本次设计中我学到的不仅是科学知识和工作方法,更学到了作为一个研究人员应有的治学态度以及为人处世的道理,这一切都将使我终身受益。谨在此向各位帮助过我的老师致以崇高的敬意和衷心的感谢!再次感谢几年来传授我知识的老师们,感谢
38、我的家人对我学业上的支持和鼓励,感谢所有关心帮助过我的人。参考文献1 谭浩强 C程序设计 清华大学出版社 1999.122 李群芳 肖看 单片机原理,接口及应用 清华大学出版社 2005.33 张义和 王敏男 例说51单片机 人民邮电出版社 2008.4 4 (美)加斯特 802.11无线网络权威指南(第2版) 东南大学出版社 20075 李文仲 段朝玉ZigBee无线网络技术入门与实战北京航空航天大学出版社 2008.66 黄智伟 全国大学生电子设计竞赛系统设计 北京航天航空大学出版社 20067 谢淑如 郑光钦 杨渝生 PCB 99SE电路版设计 清华大学出版社8 (美)查普曼|译者:满永
39、奎 电机原理及驱动电机学基础 清华大学 2008.79 何立民 红外技术应用:光电光子器件及传感器化学工业出版社 2004.1010 段九洲 放大电路实用设计手册 辽宁科学技术出版社,2002.511 魏永广 现代传感技术东北大学出版社 200110 Jiawei Han,Micheline Kamber.Data Mining:Concepts and Techniques.Copyright 2001 by Morgan Kaufmann Publishers,Inc. 11 Lan Tian. Electronic information science professional Eng
40、lish.Copyright 2005 by Tsinghua University Press.附 录1/*/uchar SPIwrite_word(uchar uuchar) /通过SPI格式 写一个字节uuchar的函数 uchar bit_ctr;for(bit_ctr=0;bit_ctr8;bit_ctr+) mosi = (uuchar & 0x80); uuchar = (uuchar 1); sck = 1; uuchar |= miso; sck = 0; return(uuchar); /*/uchar SPIread(uchar adress)/从SPI器件中读出一个字节
41、,adress为地址uchar reg_val;csn= 0; SPIwrite_word(adress); reg_val=SPIwrite_word(0); csn= 1; return(reg_val); /*/SPIwrite(uchar reg,uchar date)/写寄存器uchar status;csn = 0; status = SPIwrite_word(reg); SPIwrite_word(date); csn = 1; return(status); /*/ read_shuzu(uchar adr,uchar * x,uchar changdu) /可一次写入N个字
42、节内容 uchar status,uchar_ctr;csn =0; status=SPIwrite_word(adr); for(uchar_ctr=0;uchar_ctrchangdu;uchar_ctr+)xuchar_ctr=SPIwrite_word(0); csn=1; return(status); /*/write_shuzu(uchar adr,uchar *p,uchar zishu)/用于SPI一次读出N个字节uchar status,uchar_ctr;csn=0; status=SPIwrite_word(adr); for(uchar_ctr=0; uchar_ct
43、rzishu; uchar_ctr+) SPIwrite_word(*p);p+;csn = 1; return(status); 附 录 2void congfig_2401() /nRF2401配置函数csn=1;ce=0;sck=0;delay(10);write_shuzu(0x2a,adress,5);/写入P0本机地址write_shuzu(0x30,adress,5);/写入目的地址SPIwrite(0x21,0x01); /全部禁止自动应答 P0准许SPIwrite(0x22,0x01); /仅使能通道0SPIwrite(0x23,0x03); /所有通道地址宽度5字节SPIwrite(0x24,0x07); /所有通道自动重发7ciSPIwrite(0x25,1); /射频通道00SPIwrite(0x26,0x03); /发射功率0db 速率1mSPIwrite(0x31,txrx_wide); /P0通道32字节接受宽度SPIwrite(0x20,0x0f); /00,写入00001110, encrc, 16位校验,上电,发送模式delay(10);附 录3/*/Jieshou(uchar *f,uchar *s) /通过指针的形式发送n个连续的字节uint i;P0=0x00; /指示while(shoufa_hanshu(s,shou)!=j