1、 摘要 : 本 作品以控制芯片 ATMEGA16 控制 NRF24L01,简单的演示了新型的无线传输的性能及其潜在的意义。 NRF24L01 是先进的 单片射频收发芯片,工作于 2.4 2.5 GHz ISM 频段。工作电压为 1.9 3.6 V,有多达 125 个频道可供选择。可通过 SPI 写入数据,最高可达 10 Mb s,数据传输率最快可达2 Mb s,并且有自动应答和自动再发射功能。 NRF24L01 数据传输率快,数据写入速度高,内嵌的功能更完备。 在我们的创新制作作品里,我们利用新的技术,结合我们课程中学到的 AVR 单片机,实现 了无线图像的传输。 关键词 : AVR 单片机,
2、 NRF24L01,无线图像的传输 1 目 录 1. 作品概述 . 1 2. 系统功能分析 . 1 2.1 AVR 最小系统 . 1 2.1.1. 主控芯片 ATMEGA16 原理 . 1 2.2 AVR 外围硬件线路 . 4 2.2.1. 复位线路的设计 . 4 2.2.2. 晶振电路的设计 . 4 2.2.3. AD 转换滤波线路的设计 . 4 2.2.4. JTAG 仿真接口设计 . 5 2.3 LM2596 功能 . 5 2.3.1. LM2596 开关电压调节器 . 5 2.3.2. LM2596 开关电 压调节器特点 . 5 2.3.3. 典型应用(固定输出) . 6 2.3.4.
3、 LM2596 端口用法 . 6 2.4 LCD12864 功能 . 7 2.4.1. LCD12864 模块的 20 个引脚定义如下: . 7 2.4.2. LCD12864 模块接口说明: . 8 2.5 NRF24L01 功能 . 9 2.5.1. NRF24L01 作用及原理 . 9 2.5.2. NRF24L01 工作模式: . 10 2.5.3. 待机模式: .11 2.5.4. 掉电模式: .11 2.5.5. 数据包处理方式: . 12 2.5.6. NRF24L01 电路部分 : . 13 2.5.7. NRF24L01 的使用: . 14 3. 系统设计 . 15 3.1.
4、1. 发射和接收主控板系统电路图 . 15 3.1.2. 主电路图 . 16 3.1.3. 程序流程图: . 17 致 谢 . 18 参考文献 . 18 附录一: . 19 发射接收主要程序分析: . 19 1 1. 作品概述 以单片机 ATMEGA16 为平台,使用两组单 片机,一个做主机,一个作从机。主机,即发射端,用软件编程,把图像制作成相应格式的编码,通过 AVR 单片机,把控制命令和数据写入到 NRF24L01。 NRF24L01 以 16位 CRC 校验后把命令和数据发射出去。接收端的 NRF24L01 接收信号之后通过一定的时序传送给从机 ATMEGA16,经过单片机处理程序之后
5、,发送到液晶上面显示,实现了 2.4G 的无线图像传输。 2. 系统 功能 分析 采用 ATMEGA16 单片机作为微处理器 ,外围电路包括: 开关电源电路 AVR 最小系统 2.4G 无线发射单元; 接收端电路包括: AVR 最小系统 开关电源电路 2.4G 无线接收单元 LCD12864 液晶显示单元; 2.1 AVR 最小系统 2.1.1. 主控芯片 ATMEGA16 原理 32 个可编程的 I/O 口 16K 字节的系统内可编程 FLASH 512 字节的 EEPROM 1K 字节的片内 SRAM 2 32 个通用工作寄存器 ,所有的寄存器都直接与算术逻辑单元(ALU) 相连接。在典型
6、的 ALU 操作中,两个位于寄存器文件中的操作数同时被访问,然后执行运算,结果再被送回到寄存器文件。 用于边界扫描的 JTAG 接口,支持片内调试与编程。 片内 16K 字节的 ISP Flash 允许程序存储器通过 ISP 串行接口进行在线程序下载 六个可以通过软件进行选择的省电模式:空闲模式、 ADC 噪声抑制模式、省电模式、掉电模式、 Standby 模式以及扩展的 Standby 模式 引脚说明 : 图 1 芯片 ATMEGA16 VCC 数字电路的电源 GND 地 端口 A(PA7.PA0) 端口 A 做为 A/D 转换器的模拟输入端。 端口 A 为 8 位双向 I/O 口,具有可编
7、程的内部上拉电阻。其输出缓冲器具3 有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内 部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口 A 处于高阻状态。 端口 B(PB7.PB0) 端口 B 为 8 位双向 I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口 B 处于高阻状态。端口 B 也可以用做其他不同的特殊功能 端口 C(PC7.PC0) 端口 C 为 8 位双向 I/O 口,具有可编程的
8、内部上拉电阻。其输出缓冲器具 有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口 C 处于高阻状态。如果 JTAG 接口使能,即使复位出现引脚 PC5(TDI)、 PC3(TMS)与 PC2(TCK)的上拉电阻被激活。 端口 D(PD7.PD0) 端口 D 为 8 位双向 I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。在复位过程中,即使系 统时钟还未起振,端口 D 处于高阻状态。端口
9、 D 也可以用做其他不同的特殊功能 RESET 复位输入引脚。持续时间超过最小门限时间的低电平将引起系统复位。持续时间小于门限间的脉冲不能保证可靠复位。 XTAL1 反向振荡放大器与片内时钟操作电路的输入端。 XTAL2 反向振荡放大器的输出端。 AVCC AVCC 是端口 A与 A/D 转换器的电源。不使用 ADC 时,该引脚应直接4 与 VCC 连接。使用 ADC 时应通过一个低通滤波器与 VCC 连接。 AREF A/D 的模拟基准输入引脚。 2.2 AVR 外围 硬件线路 1.复位线路 2.晶振线路 3.AD 转换滤波线路 4.ISP 下载接口 5.JTAG 仿真接口 6.电源 2.2
10、.1. 复位线路的设计 Mega16 已经内置了上电复位设计。并且在熔丝位里,可以控制复位时的额外时间,故 AVR 外部的复位线路在上电时,可以设计得很简单:直接拉一只 10K 的电阻到 VCC 即可 (R0)。为了可靠,再加上一只 0.1uF的电容 (C0)以消除干扰、杂波。当 AVR 在工作时,按下 S0开关时,复位脚变成低电平,触发 AVR 芯片复位。 重要说明 :实际应用时,如果你不需要复位按钮,复位脚可以不接任何的零件, AVR 芯片也能稳定工作。即这部分不需要任何的外围零件。 2.2.2. 晶振电路的设计 Mega16 内置 RC 振荡线路,可以产生 1M、 2M、 4M、 8M的
11、振荡频率 。 2.2.3. AD 转换滤波线路的设计 为减小 AD 转换的电源干扰, Mega16 芯片有独立的 AD 电源供电。 建议 在 VCC 串上一只 10uH 的电感( L1),然后接一只 0.1uF 的电容到地( C3)。5 Mega16 内带 2.56V 标准参考电压。 重要说明 :实际应用时,如果你想简化线路,可以 将 AVCC 直接接到VCC, AREF 悬空。即这部分不需要任何的外围零件。 2.2.4. JTAG 仿真接口设计 仿真接口也是使用双排 2 5 插座。需要四只 10K 的上拉电阻。 重要说明 :实际应用时,如果你不想使用 JTAG 仿真,并且不想受四只10K 的
12、上拉电阻的影响,可以将 JP1 JP4 断开。 2.3 LM2596 功能 2.3.1. LM2596 开关电压调节器 LM2596 开关电压调节器是降压型电源管理单片集成电路,能够输出 3A的驱动电流,同时具有很好的线性和负载调节特性。固定输出版本有 3.3V、5V、 12V, 可调版本可以输出 1.2V 37V 之间的各种电压。 2.3.2. LM2596 开关电压调节器特点 3.3V、 5V、 12V 的固定电压输出和可调电压输出 可调输出电压范围 1.2V 37V 4% 输出线性好且负载可调节 输出电流可高达 3A 输入电压可高达 40V 采用 150KHz 的内部振荡频率,属于第二代
13、开关电压调节器,功耗小、效率高 低功耗待机模式, IQ 的典型值为 80 A TTL 断电能力 6 具有过热保护和限流保护功能 封装形式: TO-220( T)和 TO-263( S) 外围电路简单,仅需 4个外接元件, 且使用容易购买的标准电感 2.3.3. 典型应用(固定输出) 图 2 LM2596 固定输出 2.3.4. LM2596 端口用法 VIN 正输入端,在这个管脚处必须加一个适当的输入旁路电容来减小暂态电压,同时为 LM2596 提供所需的开关电流。 GND 接地端。 Output 输出端,这个脚上的电压可在( +VIN-VSAT)和 -0.5V(大约)间转换。为了减小耦合,
14、PCB 上连接到该脚的铜线区 域要尽量小。 Feedback 反馈端, 这个管脚把输出端的电压反馈到闭环反馈回路。 7 2.4 LCD12864 功能 2.4.1. LCD12864 模块 的 20 个引脚定义如下: 图 3 LCD12864 1# Vss 逻辑电源地 2# VDD 逻辑电源正 5v 3# V0 LCD 驱动电压 4# RS 数据 /指令选择:高电平为数据,低电平为指令 5# R/W 读 /写选择:高电平为读数据,低电平为写数据 6# E 读写使能,高电平有效, 下降沿锁定数据 7# DB0 数据输入输出引脚 8# DB1 数据输入输出引脚 9# DB2 数据输入输出引脚 10
15、# DB3 数据输入输出引脚 11# DB4 数据输入输出引脚 12# DB5 数据输入输出引脚 13# DB6 数据输入输出引脚 14# DB7 数据输入输出引脚 15# CS1 片选择号,低电平时选择前 64列 16# CS2 片选择号,低电平时选择后 64列 8 17# RET 复位信号,低电平有效。 18# VEE 输出 15v 电源给 V0 提供驱动电源 19# A 背光电源 LED 正极 20# K 背光电源 LED 负极 2.4.2. LCD12864 模块 接口说明: 图 4 LCD12864 接口说明 具体的电路还是两个电阻。一个背光限流电阻。一个液晶驱动电压调节电阻。背光电
16、阻还是任何时候在 19、 20 脚与电源之间串上个 100 欧电位器接上电源。调节电位器到合适亮度。具体值最好是到调试完程序能够正常显示后再将阻值确定换成固定电阻。液晶驱动电压的调整在数据线、电源线接好的前提下是在 Vee(-15v)和地之间 接一个电位器。中间接V0,通过调节电位器来调节 V0 上的电压。当 V0 上为 -15V 时为全暗 (液晶显示为全黑 )。当 V0为 0V 时为全亮。调节电位器使屏幕从全暗刚好变到亮时,便可进行程序的调试。待屏幕显示正常后,进行对比度的细调,然后测量这两边的阻值在地和 V0 之间、 V0 和 Vee 之间换成两个固定电阻焊上就好了。注意在 V0的电压是在一个很小的范围有效。我的就是在 -2.2 -2.5 这个范围。仔细调节 V0 和地之间的电阻使 V0上的电压在 2.3V。
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。