基于mega16智能小车GPS导航系统设计毕业设计

上传人:1888****888 文档编号:38551176 上传时间:2021-11-08 格式:DOC 页数:30 大小:2.20MB
收藏 版权申诉 举报 下载
基于mega16智能小车GPS导航系统设计毕业设计_第1页
第1页 / 共30页
基于mega16智能小车GPS导航系统设计毕业设计_第2页
第2页 / 共30页
基于mega16智能小车GPS导航系统设计毕业设计_第3页
第3页 / 共30页
资源描述:

《基于mega16智能小车GPS导航系统设计毕业设计》由会员分享,可在线阅读,更多相关《基于mega16智能小车GPS导航系统设计毕业设计(30页珍藏版)》请在装配图网上搜索。

1、学号: 毕业设计题 目: 基于mega16的GPS智能小车GPS导航系统设计专 业: 通信工程 班 级: 09通信工程一班 姓 名: 指导教师: 吴 慧 二 一 三 年 四 月电气工程系目 录摘 要IIAbstractIII第一章 绪论- 1 -第二章 系统总体结构图- 2 -第三章 硬件模块设计- 3 -3.1 Mega 16最小系统- 3 -3.1.1复位线路的设计- 3 -3.1.2晶振电路的设计- 4 -3.1.3 A/D转换滤波线路的设计- 4 -3.1.4 JTAG仿真接口设计- 5 -3.1.5 电源设计- 5 -3.1.6 按键设计- 5 -3.2 L298模块- 6 -3.3

2、 超声波模块- 6 -3.4 红外模块- 6 -3.5 LCD12864模块- 7 -3.6 无线模块NRF24L01- 7 -3.7 GPS模块C3-470B- 8 -第四章 软件设计- 10 -4.1 软件平台AVR开发环境介绍- 10 -4.2 软件总体设计- 10 -第五章 系统实现及测试- 12 -5.1 原理图及PCB绘制- 12 -5.1.1 altium designed简介- 12 -5.1.2 原理图及PCB设计- 12 -5.2硬件焊接及组装- 13 -5.3 实际测试- 14 -第六章 总结及致谢- 15 -参考文献- 16 -附录- 17 -摘 要GPS的使用现在已经

3、非常普及,大到航空航海系统,小到个人移动设备,都有着它的身影。随着GPS的民用化与成本的降低,已经走入了人们的日常生活中,很多手机、PDA 等手持设备都配备了GPS功能。就功能而言,GPS就是在地球经纬座标系下对被测对象的方位进行测定,同时可以提供较高精度与实时的测定数据。本论文设计的系统是基于GPS智能小车导航,实现目标是使用两个单片机进行指定目标导航即一个单片机实现设定目标相应的经度和纬度另一个单片机实现避障寻址,由于成本及条件限制本论文采用Mega 16单片机,测试场所仅限于学校。本论文主要研究GPS定位原理和技术,Mega 16单片机编程及相关模块应用,LCD12864显示控制,单片机

4、无线通信研究等。关键字:GPS;Mega 16;单片机;LCD12864;无线通信Abstract The use of GPS is now very popular, big to the aviation navigation system, small to personal mobile devices, has its shadow. As the GPS MinYongHua and cost reduce, has walked into People's Daily life, a lot of mobile phones, PDA and other handhel

5、d devices are equipped with the GPS function. In terms of functionality, GPS is the object to be measured under the latitude and longitude earth coordinate system of the bearing were determined, and at the same time can provide high accuracy and real-time measurement data. This paper designs the int

6、elligent system is based on GPS car navigation, your goal is to use two specified target navigation is a single-chip microcontroller to achieve goal setting corresponding latitude and longitude of the microcontroller is another obstacle avoidance addressing, due to the cost and conditions 16 single-

7、chip microcomputer, this paper adopts the Mega test place only in schools.GPS positioning principle and technology, this thesis mainly study Mega 16 microcontroller programming and related module application, LCD12864 display control, single chip wireless communication research, etc. key words: GPS;

8、 Mega 16; Single chip microcomputer; LCD12864; Wireless communicationI铜陵学院毕业论文(设计)第一章 绪论基于国内外研究结果,本论文设计一个简单系统模拟汽车智能导航,该系统实现功能有:一、实时显示小车位置即相应的经度和纬度;二、可以设定目标位置即相应的经度和纬度;三、小车寻址实现智能避障;四、实现两个单片机无线通信等。- 23 -第二章 系统总体结构图本论文设计的是智能小车导航寻址系统,基于该系统要实现的功能可以将系统划分两个部分:一、无线收发及显示模块如图2-1所示,该模块包括:无线模块、LCD12864、mega16最小

9、系统,实现的功能有:实时显示小车位置即相应的经度和纬度、发送目标位置即所要寻址目标经度和纬度;二、小车导航及控制模块如图2-2所示,该模块包括:无线模块、GPS模块C3-470B、小车驱动模块L298、小车避障单元超声波避障和红外避障,实现的功能有:GPS导航、小车避障、无线接送及发射命令,下面先从总体设计再到这两个方面进行设计。Mega16无线模块NRF24L01按键LCD12864图2-1 无线收发及显示模块Mega16无线模块NRF24L01C3-470B智能小车驱动模避障模块图2-2 小车导航及控制模块 第三章 硬件模块设计 3.1 Mega 16最小系统 Mega16最小系统可分为:

10、复位线路、晶振线路、AD转换滤波线路、ISP下载接口、JTAG仿真接口、电源电路。图3-1 mega16最小系统设计原理图3.1.1复位线路的设计图3-2 mega16复位电路 Mega16复位源有五种分别为:上电复位、外部复位、看门狗复位、掉电检测复位、JTAG AVR复位。本系统设计复位电路采用上电复位这一复位源进行复位mega16 。当mega16在工作时,按下S0开关时,复位脚变成低电平,触发mega16复位。3.1.2晶振电路的设计图3-3 mega16晶振电路Mega16已经内置RC振荡线路,由于RC振荡线路不稳定,特别是在要求高的情况下,例如通信速率很高的情况就需要外部晶振,该系

11、统使用外部晶振电路,C1和C2两个电容起滤波及抗干扰的作用。3.1.3 A/D转换滤波线路的设计图3-4 mega16 A/D转换滤波线路为了减少A/D转换干扰,本系统采用独立电源对A/D供电,在AVCC上串联一只10uH的电感(L1)然后接一只0.1uF的电容到地(C3),如图3-4所示。3.1.4 ISP下载接口设计ISP下载接口,无需额外添加器件仅使用双排25插座。这种情况下PB5(MOSI)、PB6(MISO)、PB7(SCK)、复位脚仍可以正常使用,不受ISP下载接口的干扰,如图3-5所示。图3-5 mega16 ISP下载接口3.1.4 JTAG仿真接口设计图3-6 mega16J

12、TAG仿真接口仿真接口类似ISP下载接口但需要上拉四个10K电阻,如图3-6所示。3.1.5 电源设计图3-7 mega16电源设计本系统设计电源时采用最常见的5V和3.3V这两种电源,而且设计了这两种电源相互却换开关,如图3-7所示,当SW打在左边电源VCC为+5V此时绿色LED灯亮,反之VCC为.V此时红色LED灯亮。其中二极管D1、D2是防止电源极性接反,损坏电路。3.1.6 按键设计基于mega16的键盘设计,键盘接口为PA口如图3-8所示。图3-8 按键原理图3.2 L298模块L298驱动模块,可以驱动一个步进电机,2个直流减速电机,原理图如图3-9所示。图3-9 L298原理图3

13、.3 超声波模块 该模块在启动发射电路的同时启动单片机内部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波反射波时,接收电路 输出端产生一个负跳变,在INT0或INT1端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离,该模块实物图如图3-10所示。图3-10 超声波模块实物图3.4 红外模块当模块检测到前方障碍物信号时,电路板上绿色指示灯点亮电平,同时OUT端口持续输出低电平信号,该模块检测距离280cm,检测角度35°,检测距离可以通过电位器进行调节,顺时针调电位器,检测距离增加;逆时针调电位器,检测

14、距离减少。传感器主动红外线反射探测,因此目标的反射率和形状是探测距离的关键。其中黑色探测距离最小,白色最大;小面积物体距离小,大面积距离大。传感器模块输出端口OUT可直接与单片机IO口连接即可,也可以直接驱动一个5V继电器;连接方式:VCC-VCC;GND-GND;OUT-IO。比较器采用LM393,工作稳定,可采用3-5V直流电源对模块进行供电。当电源接通时,红色电源指示灯点亮。原理图如图3-11所示。图3-11 红外模块3.5 LCD12864模块   本系统使用该模块是为了实现的功能是显示智能小车当前位置信息及设定目标位置信息,LCD12864实物图如图3-12所示。

15、选用的是带中文字库的LCD12864,这样可以减少代码长度,提高代码效率,该模块可以使用并行或者串行接口,内部含有中文字库及ASCII字符集,方便有效。图3-12 LCD12864实物图3.6 无线模块NRF24L01模块简介:(1)2.4GHz全球开放ISM频段免许可证使用。(2)最高工作速率2Mbps,高效GFSK调制,抗干扰能力强。(3)126频道,满足多点通信和跳频通信需要。(4)内置硬件CRC检错,和点对点通信地址控制。(5)低功耗,1.9-3.6V工作,待机模式下22uA;掉电模式900nA。(6)内置2.4GHz天线,体积小巧:15mm×29mm。(7)模块可软件设置地

16、址,只有收到本机地址时才会输出数据(提供中断提示),可直接接各种单片机使用,软件编程非常方便。(8)内稳压电路,使用各种电源包括DC/DC开关电源均有很好的通道效果。(9)2.54mm间距接口,DIP封闭。(10)工作于Enhanced ShockBurst具有Automatic packet handling,Auto packet transaction handling,具有可选的内置包应答机制,极大地降低丢包率。(11)与51单片机P0口连接的时候,需要加10K的上拉电阻,与其余口连接不需要。(12)其他系列的单片机,如果是5V的,请参考该系列单片机IO口输出电流大小,如果超过10mA

17、,需要串联电阻分压,否则容易烧毁模块!如果是3.3V的,可以直接和RF24L01模块的IO口线连接。比如AVR系列单片机。如果是5V的一般串接2K的电阻实物图如图3-13所示。图3-13 无线模块NRF24L01实物图说明:1)VCC脚接电压范围为:1.9V-3.6V,不能在这个敬意之外,超过3.6V将会烧毁模块。推荐电压3.3左右。2)除电源VCC和接地端,其余脚都可以直接和普通的5V单片机IO口直接相连,无需转换。当然对3V左右的单片机更加适用了。3.7 GPS模块C3-470BC3-470B是一个高效能、低耗电的智慧型卫星接收模组或称做卫星接收引擎,他采用美国瑟孚SiRF star II

18、I 公司所设计的第三代卫星定位接收晶片,是一个完整的卫星定位接收器具备全方位功能,能满足专业定位的严格要求与个人消费需求。特色:(1) 采用SiRF第三代高效能晶片高灵敏度、低耗电量晶片STAR III ,内建ARM7TDMI CPU 可符合客制需求。(2) 具备快速定位及追踪20颗卫星的能力。(3) 体积超小,仅 25.4 × 25 × 7公u91d0。(4) 晶片内建200,000个卫星追踪运算器,大幅提高搜寻及运算卫星讯号能力。(5) 内建RTCM SC-104 DGPS和WASS/EGNOS解调器。(6) 低耗电量, 具备有省电模式(Trickle-Power)功能

19、,以及在设定的时间才启动的定时定位(Push-to-Fix)功能。(7) 支援NMEA-0183 v2.2版本规格输出。GPS VCCC3-470BRXDTXDGNDVCCTXDAT89S52RXDGNDVCCTXDMega16GND图3-14 GPS模块C3-470B与单片机连接图天线如图3-14所示结构图,GPS模块只有4个端口与单片机连接,其中VCC、GND为供电部分,TXD、RXD为串行通信部分。由于C3-470B属于独立模块,所以在系统原理图、PCB中未加入其封装,而是采用从PCB中的单片机串行口以及VCC、GND分别引出4条线,采用引线的方式与GPS相连接。第四章 软件设计4.1

20、软件平台AVR开发环境介绍AVR的集成开发环境有很多,首当其冲的应该还是IAR,为什么呢,因为当初AVR 还在ATMEL 胎中酝酿的时候,IAR 公司参与了AVR 的设计,因此可以认为IAR 有更为正统的血液,它最了解AVR,它的编译器编出来的代码应该最优秀。好比你生的孩子还是你最了解至少相当长一段时间是这样的。事实上,IARfor AVR 确实展现了这个实力,它的功能确实最为强大,无论是源代码编写还是软件乃至硬件仿真,编译出来的代码也十分优秀。但是事物总是相对存在的,优点有时就意味着缺点。IAR 功能全面而强悍,代价就是它的软件界面比较复杂,设置选项多,网上的资料也比较少,最要命的是这个软件

21、非常的贵,好吧你说你有破解版,但是破解文件一般并不通用,而且破解方法一般都稍显繁琐。以上几条,对于新接触AVR 的人来说,几乎是迈不过的坎。 AVR studio,官方出品,因为它本身不支持C 语言,一般没有人用这个软件来做开发环境,一般我们只用它的仿真功能搭配其他C 编译器来用。 WINAVR,又称GCC AVR。GCC AVR 应该是目前使用率最高的AVR 开发环境了,软件体积小,界面简单易用,教程资料很多,代码效率高,最重要的是,它是完全免费的。但是它几乎没有仿真调试的功能。所以使用GCC AVR+AVR studio 搭建AVR IDE。WinAVR-20060421 GCCAVR编译

22、器,GCCAVR是一款免费的编译器,编译功能也挺强的。总得来说还是一款很好的开发软件。 4.2 软件总体设计系统软件设计包括两部分:一是:接收显示及发送命令程序软件设计流程图如图4-1所示;二是:接送和发送及避障程序,实现智能小车导航避障功能,软件设计流程图如图4-2所示。接收现在位置信息显示目标经度、纬度及现在位子信息输入目标经度、纬度发送目标位置初始化程序图4-1 显示主机程序框图判断是否到达目标位置接收现在位置信息小车避障初始化程序发送现在位置信息发送完成信息 N Y图4-2 执行主机程序框图第五章 系统实现及测试5.1 原理图及PCB绘制该系统原理图设计采用altium designe

23、d设计原理图及PCB,本章节叙述该系统怎样设计包括硬件及软件设计。5.1.1 altium designed简介Altium Designer 是Altium公司Protel系列软件基于Windows平台的最新产品,是Altium公司总结了多年的技术研发成果,是对Protel 99 SE以及Protel DXP不断修改、扩充新设计模块和多次升级完善后的产物。Altium Designer 6是完全一体化的电子产品开发系统下的一个版本。Altium Designer 是将设计流程、集体化PCB设计、可编程器件设计和基于处理器设计的嵌入式软件开发功能整合在一起的电路设计系统。5.1.2 原理图及P

24、CB设计由于本系统所涉及器件太多,原理图在第二章就分别列出在此就不再赘述,下面列出PCB图及3DPCB图,如图5-1、5-2。图5-1 系统PCB图图5-2 系统PCB3D效果图5.2硬件焊接及组装 根据需要购置了所需材料,如图5-3、5-4所示。按照电气要求进行组装完成的效果图如图5-5所示。图5-3 电路板及所需器件图5-4 小车底盘图5-5 完成后效果图5.3 实际测试该系统实际测试在铜陵学院内进行,测试如图5-6,测试范围在图书馆及教学楼。图书馆教学楼图5-6 测试示意图测试结果:发送第六章 总结及致谢 在撰写本论文过程中遇到了很多困难也得到很多人的帮助,在此给予我帮助的同学老师表示对

25、他们感谢,在撰写论文过程中我做了以下工作: 2013年3月我选定论文课题为基于mega16智能小车GPS导航系统设计,我选定这个题目是因为未来汽车会朝向智能化方向发展,所以我打算用一个简单的模型模拟智能汽车导航系统,由于AVR单片机我是第一次接触,我买了一块mega16开发板,学习了mega16各个模块的操作,深入了解了mega16这款单片机,还有GPS技术,也是我比较陌生的一个知识,我阅读了相关文献,为以后论文撰写奠定基础。 4月开始着手系统总体设计,绘制原理图及PCB图,由于绘制原理图我以前使用过altium designed这款软件所以决定使用这款软件绘制原理图及PCB图,在这个过程中我

26、遇到的好多困难,特别是PCB图绘制,同样这次论文撰写我也学会了好多知识,明白了以前不明白的知识,例如:我在学习PCB图绘制时老师说要将模拟地和数字地两个分开我一直不明白,这次论文撰写我明白了为什么及怎样分开,这个过程是最辛苦的也是同学老师给我最多的帮助的过程,在此我由衷表示对他们的感谢。 5月是对硬件电路的调试及软件的编写,我将我做好的PCB板发到工厂做出一块样板,做好之后开始对硬件的安装和调试,焊接PCB板时我使用到各种封装的电子器件,为此我请教了我们学校实验室丁老师,在她的悉心教导下我很快掌握了各种封装的电子器件的焊接要领,焊接完毕,就是对PCB板的测试,首先,使用万用表测试,测试有没有虚

27、焊等问题。幸运的是焊接很好没有问题,接下来就是软件的编写,我参考了书本及网上资料编写了各个模块的程序,同时学习了AVR单片机软件开发平台;下面就是测试阶段,我选择的测试地点是图书馆到教学楼,测试很成功这是是我欣慰。 转眼间论文的撰写就要结束,也就意味着大学学习即将结束,感谢四年给我帮助的老师和同学,由于我的学术水平有限,有不妥之处希望指出。参考文献附录论文部分程序/*函数名:void delay(unit i)函数功能:延时函数*/void delay(unit i) while(-i);/*函数名:void Read_busy()函数功能:读忙函数*/void Read_busy() uch

28、ar temp;uchar flag=1;while(flag=1) DDRA=0X00;/A口设为输入,准备读数据/PINA=0XFF;/C口设为输出delay(10);RS_L; /RS=0delay(10);RW_H; /RW=1delay(10);EN_H; /EN=1delay(100);temp = PINA; /读端口Adelay(100);DDRA=0XFF; /端口A改为delay(10);EN_L; /EN=0delay(10);if(temp&0x80)flag = 0;/*函数名:void write_LCD_command(uchar CMD)函数功能:写命令

29、函数*/void write_LCD_command(uchar CMD) Read_busy();delay(10);RS_L; /RS=0delay(10);RW_L; /RW=0delay(10);LCD_databus=CMD; /输出指令delay(10);EN_H; /EN=1delay(10);EN_L; /EN=0delay(10);/*函数名:void write_LCD_data(uchar value)函数功能:写数据函数*/void write_LCD_data(uchar value)Read_busy();delay(10);RS_H; /RS=1delay(10)

30、;RW_L; /RW=0delay(10);LCD_databus=value; /输出指令delay(10);EN_H; /EN=1delay(10);EN_L; /EN=0delay(10);/*函数名:void Set_page(uchar page)函数功能:设置页*/void Set_page(uchar page) page=0XB8|page;write_LCD_command(page);/*函数名:void Set_line(uchar startline)函数功能:设置显示的起始行*/void Set_line(uchar startline) startline=0XC0

31、|startline;write_LCD_command(startline);/*函数名:void Set_column(uchar column)函数功能:设置显示的列日期:*/void Set_column(uchar column) column=column&0X3F;column=0X40|column;write_LCD_command(column);/*函数名:void SetOnOff(uchar onoff)函数功能:显示开关函数*/void SetOnOff(uchar onoff) onoff=0X3E|onoff;write_LCD_command(onof

32、f);/*函数名:void SelectScreen(uchar screen)函数功能:选屏*/void SelectScreen(uchar screen) switch(screen) case 0: CS1_L;CS2_L; break;case 1: CS1_L;CS2_H; break;case 2: CS1_H;CS2_L; break;/*函数名:void ClearScreen(uchar screen)函数功能:清屏*/void ClearScreen(uchar screen) uchar i,j;SelectScreen(screen);for(i=0;i<8;i

33、+) Set_page(i);Set_column(0);for(j=0;j<64;j+) write_LCD_data(0X00);/*函数名:void InitLCD()函数功能:LCD初始化*/void InitLCD() Read_busy();SelectScreen(0);SetOnOff(0);SelectScreen(0);SetOnOff(1);SelectScreen(0);ClearScreen(0);Set_line(0);/*函数名:void Display(uchar ss,uchar page,uchar column,uchar *p)函数功能:LCD12

34、864显示汉字*/void Display(uchar ss,uchar page,uchar column,uchar *p) uchar i;SelectScreen(ss);Set_page(page);Set_column(column);for(i=0;i<16;i+) write_LCD_data(pi);Set_page(page+1);Set_column(column);for(i=0;i<16;i+) write_LCD_data(pi+16);/*函数名:char SPI_RW(char data)函数功能:NRF24L01的SPI写时序*/char SPI_

35、RW(char data)char i,temp=0; for(i=0;i<8;i+) / output 8-bit if(data & 0x80)Hign_24L01_MOSI ; / output 'uchar', MSB to MOSIelseLow_24L01_MOSI; data = (data << 1); / shift next bit into MSB.temp<<=1;Hign_24L01_SCK ; / Set SCK high.if(PINB&0x10)temp+; / capture current MIS

36、O bitLow_24L01_SCK; / .then set SCK low again return(temp); / return read uchar/*函数名:char SPI_Read(char reg)函数功能:NRF24L01的SPI时序*/char SPI_Read(char reg)char reg_val;Low_24L01_CSN; / CSN low, initialize SPI communication.SPI_RW(reg); / Select register to read from.reg_val = SPI_RW(0); / .then read re

37、gistervalueHign_24L01_CSN; / CSN high, terminate SPI communicationreturn(reg_val); / return register value/*函数名:char SPI_RW_Reg(char reg, char value)函数功能:NRF24L01读写寄存器函数*/char SPI_RW_Reg(char reg, char value)char status;Low_24L01_CSN; / CSN low, init SPI transactionstatus = SPI_RW(reg); / select reg

38、isterSPI_RW(value); / .and write value to it.Hign_24L01_CSN; / CSN high againreturn(status); / return nRF24L01 status uchar/*函数名:char SPI_Read_Buf(char reg, char *pBuf, char uchars)函数功能:用于读数据,reg:为寄存器地址,pBuf:为待读出数据地址,uchars:读出数据的个数*/char SPI_Read_Buf(char reg, char *pBuf, char uchars)int status1,uch

39、ar_ctr;Low_24L01_CSN; / Set CSN low, init SPI tranactionstatus1 = SPI_RW(reg); / Select register to write to and read status ucharfor(uchar_ctr=0;uchar_ctr<uchars;uchar_ctr+)pBufuchar_ctr = SPI_RW(0); / Hign_24L01_CSN; return(status1); / return nRF24L01 status uchar/*函数名:char SPI_Write_Buf(char r

40、eg, char *pBuf, char uchars)函数功能:用于写数据:为寄存器地址,pBuf:为待写入数据地址,uchars:写入数据的个数*/char SPI_Write_Buf(char reg, char *pBuf, char uchars)char status1,uchar_ctr;Low_24L01_CSN; /SPI使能status1 = SPI_RW(reg); for(uchar_ctr=0; uchar_ctr<uchars; uchar_ctr+) /SPI_RW(*pBuf+);Hign_24L01_CSN; /关闭SPIreturn(status1);

41、/*函数名:void SetRX_Mode(void)函数功能:数据接收配置*/void SetRX_Mode(void)Low_24L01_CE;SPI_RW_Reg(WRITE_REG + CONFIG, 0x0f); / IRQ收发完成中断响应,16位CRC,主接收Hign_24L01_CE; Delay(1000);/注意不能太小/*函数名:char nRF24L01_RxPacket(char* rx_buf)函数功能:数据读取后放如rx_buf接收缓冲区中*/char nRF24L01_RxPacket(char* rx_buf) char revale=0;sta=SPI_Rea

42、d(STATUS); / 读取状态寄存其来判断数据接收状况if(sta&0x40) / 判断是否接收到数据 Low_24L01_CE; /SPI使能SPI_Read_Buf(RD_RX_PLOAD,rx_buf,TX_PLOAD_WIDTH);/ 读接受到的数据从RX_FIFO bufferrevale =1;/读取数据完成标志SPI_RW_Reg(WRITE_REG+STATUS,sta); /接收到数据后RX_DR,TX_DS,MAX_PT都置高为1,通过写1来清除中断标志return revale;/*函数名:void nRF24L01_TxPacket(char * tx_bu

43、f)函数功能:发送 tx_buf中数据*/void nRF24L01_TxPacket(char * tx_buf)Low_24L01_CE;/StandBy I模式SPI_Write_Buf(WRITE_REG + RX_ADDR_P0, TX_ADDRESS, TX_ADR_WIDTH); / 装载接收端地址SPI_Write_Buf(WR_TX_PLOAD, tx_buf, TX_PLOAD_WIDTH); / 装载数据SPI_RW_Reg(WRITE_REG + CONFIG, 0x0e); / IRQ收发完成中断响应,16位CRC,主发送Hign_24L01_CE; /置高CE,激发

44、数据发送Delay(600);/*函数名:void init_NRF24L01(void)函数功能:NRF24L01初始化*/void init_NRF24L01(void) Low_24L01_CE; / chip enable Hign_24L01_CSN; / Spi disable Low_24L01_SCK; / Spi clock line init highSPI_Write_Buf(WRITE_REG + TX_ADDR, TX_ADDRESS, TX_ADR_WIDTH); / 写本地地址SPI_Write_Buf(WRITE_REG + RX_ADDR_P0, RX_ADDRESS, RX_ADR_WIDTH); / 写接收端地址SPI_RW_Reg(WRITE_REG + EN_AA, 0x01); / 频道0自动ACK应答允许SPI_RW_Reg(WRITE_REG + EN_RXADDR, 0x01); / 允许接收地址只有频道0,如果需要多频道可以参考Page21 SPI_RW_Reg(WRITE_REG + RF_CH, 3); / 设置信道工作为2.4G

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

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


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