基于nrf24l01模块的无线通信系统设计内容摘要:
编程器。 在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash,使得 AT89S52 在众多嵌入式控制应用系统中得到广泛应用。 AT89S51 具有如下特点: 40 个引脚, 8k Bytes Flash 片内程序存储器, 256 bytes 的随机存取数据存储器( RAM), 32 个外部双向输入 /基于 nRF24L01 模块的无线通信系统设计 8 输出( I/O)口, 5个中断优先级 2层中断嵌套中断, 2个 16 位可编程定时计数器 ,2 个 全双工串行通信口,看门狗( WDT)电路,片内时钟振荡器。 引脚图如图 此外, AT89S51 设计和配置了振荡频率可为 0Hz 并可通过软件设置省电模式。 空闲模式下, CPU 暂停工作,而 RAM 定时计数器,串行口,外中断 系统可继续工作,掉电模式冻结振荡器而保存 RAM 的数据,停止芯片其它功能直至外中断激活或硬件复位。 同时该芯片还具有 PDIP、TQFP 和 PLCC 等三 种封装形式,以适应不同产品的需求。 图 单片机管脚图 ( 1) 主要功能特性 : 178。 兼容 MCS51 指令系统 178。 8k可反复擦写 (1000 次) ISP Flash ROM 178。 32个双向 I/O 口 178。 工作电压 178。 2个 16位可编程定时 /计数器 178。 时钟频率 033MHz 基于 nRF24L01 模块的无线通信系统设计 9 178。 全双工 UART 串行中断口线 178。 256x8bit 内部 RAM 178。 2个外部中断源 178。 低功耗空闲和省电模式 178。 中断唤醒省电模式 178。 3级加密位 178。 看门狗( WDT)电路 178。 软件设置空闲和省电功能 178。 灵 活的 ISP 字节和分页编程 178。 双数据寄存器指针 ( 2) AT89S52 单片机引脚介绍 : 引脚如图 ,以下是各引脚的说明。 VCC: AT89S52 电源正端输入,接 +5V。 VSS:电源地端。 XTAL1:单芯片系统时钟的反向放大器输入端。 XTAL2:系统时钟的反向放大器输出端,一般在设计上只要在 XTAL1和 XTAL2 上接上一只石英振荡晶体系统皆可以工作了,此外可以在两个引脚与地之间加入一 20PF 的小电容,可以使系统更稳定,避免噪声干扰而死机。 RESET: AT89S52 的重置引脚,高电平工 作,当要对晶片重置时,只要对此引脚点评提升至高电平并保持两个机器周期以上的时间,AT89S51 便能完成系统重置的各项动作,使得内部特殊功能寄存器内容均被设成已知状态,并且至地址 0000H处开始读入程序代码而执行程序。 EA/Vpp:“ EA”为英文“ External Access”的缩写,表示存取外部程序代码之意,低电平动作,也就是说当引脚为低电平后,系统会调用外部的程序代码(存于外部 EPROM 中)来执行程序。 因此在 8031 及 8032中, EA 引脚必须接低电平,因为其内部无程序存储器空间。 如果使用8751 内部程 序空间时,引脚要接成高电平。 此外,在将程序代码烧录至8751 内部 EPROM 时,可以利用此引脚来输入 21 V的烧录高压( Vpp)。 PORT0( ― ):端口 0是一个 8 位宽的开路电极( Open Drain)双向输出入端口,共有 8 个位, 表示位 0, 表示位 1,依此类基于 nRF24L01 模块的无线通信系统设计 10 推。 其他三个 I/O 端口( P P P3)则不具有此电路组态,而是内部有一提升电路, P0 在当做 I/O 用时可以推动 8 个 LS的 TTL 负载。 如果当 EA 引脚为低电平时(即取用外部程序代码或数据存储器), P0就以多工方式提供地址总线( A0― A7)及数据总线( D0― D7)。 设计者必须外加一个锁存器将端口 0送出的地址锁住成为 A0― A7,再配合端口 2 所送出的 A8― A15 合成一个完整的 16 位地址总线,而定位地址到 64K 的外部存储器空间。 PORT1(― ):端口 1 也是具有内部提升电路的双向 I/O 端口,其输出缓冲器可以推动 4 个 LS TTL 负载,若将端口 1 的输出设为高电平,使是由此端口来输入数据。 如果是使用 8052 或是 8032 的话, 又当作定时器 2 的外部缓冲输入脚,而 P。 1 可以有 T2EX 功能,可以做外部中断输入的触发引脚。 PORT2(― ):端口 2 是具有内部提升电路的双向 I/O 端口,每一个引脚可以推动 4 个 LS 的 TTL 负载,同样地,若将端口 2 的输出设为高电平时,此端口便能当成输入端口来使用。 P2 除了当做一般 I/O端口使用外,若是在 AT89S51 扩充外接程序存储器或数据存储器时,也提供地址总线的高字节 A8― A15,这个时候 P2便不能当做 I/O来使用了。 PORT3( ― ):端口 3 也具有内部提升电路的双向 I/O 端口,其输出缓冲器可以推动 4 个 TTL 负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控 制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。 其引脚分配如下: : RXD,串行通信输入。 : TXD,串行通信输出。 : INT0,外部中断 0 输入。 : INT1,外部中断 1 输入。 : T0,计时计数器 0 输入。 : T1,计时计数器 1 输入。 : WR,外部数据存储器的写入信号。 : RD,外部数据存储器的读取信号。 基于 nRF24L01 模块的无线通信系统设计 11 单片机控制模块 单片机控制模块由 AT89S52 最小系统组成,其中包括单片机,晶振电路和复位电路。 ( 1)、晶振电路 晶振电路由两个 30pF 电容和一个 12MHz 晶体振荡器构成,接入单片机的 X X2引脚。 ( 2)、复位电路 单片复位端低电平有效。 单片机最小系统如图 : 图 单片机最小系统 E A /V P31X119X218R E S E T9RD17WR16IN T 012IN T 113T014T115P 1 0 / T1P 1 1 / T2P 1 23P 1 34P 1 45P 1 56P 1 67P 1 78P 0 039P 0 138P 0 237P 0 336P 0 435P 0 534P 0 633P 0 732P 2 021P 2 122P 2 223P 2 324P 2 425P 2 526P 2 627P 2 728P S E N29A L E / P30T X D11R X D10U18 0 C 5 2C13 0 p FC23 0 p FX11 2 M H zX1X2V C CR11 0 KC31 0 u FR E S E TP 1 0P 1 1P 1 2P 1 3P 1 4P 1 5P 1 6P 1 7P 2 0P 2 1P 2 2P 2 3P 2 4P 2 5P 2 7P 2 6D0D1D2D3D4D5D6D7R E S E T R X DT X DA L EP S E NIN T 0IN T 1T0T1RDWRX1X2基于 nRF24L01 模块的无线通信系统设计 12 单片 nRF24L01 无线模块 nRF24L01 芯片概述 nRF24L01 是一款新型单片射频收发器件 ,工作于 GHz~ GHz ISM 频段。 内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块 ,并融合了增强型 ShockBurst 技术,其中输出功率和通信频道可通过程序进行配置。 nRF24L01 功耗低 ,在以 6 dBm 的功率发射时,工作电流也只有 9 mA。 接收时,工作电流只有 mA,多种低功率工作模式 (掉电模式和空闲模式 )使节能设计更方便。 nRF24L01 主要特性如下: GFSK 调制 ; 硬件集成 OSI 链路层 ; 具有自动应答和自动再发射功能 ; 片内自动生成报头和 CRC 校验码 ; 数据传输率为 l Mb/s 或 2Mb/s; SPI 速率为 0 Mb/s~ 10 Mb/s; 125 个频道 ; 与其他 nRF24 系列射频器件相兼容 ; QFN20 引脚 4 mm179。 4 mm 封装 ; 供电电 压为 V~ V。 引脚功能及描述 nRF24L01 的封装及引脚排列如图所示。 各引脚功能如下: 基于 nRF24L01 模块的无线通信系统设计 13 图 nRF24L01 封装图 CE:使能发射或接收。 CSN, SCK, MOSI, MISO: SPI 引脚端 , 微处理器可通过此引脚配置 nRF24L01: IRQ:中断标志位 ; VDD:电源输入端 ; VSS:电源地 ; XC2, XC1:晶体振荡器引脚。 VDD_PA:为功率放大器供电,输出为 V; ANT1,ANT2:天线接口 ; IREF:参考电流输入。 工作模式 通过配置寄存器可将 nRF241L01 配置为发射、接收、空闲及掉电四种工作模式,如表所示。 待机模式 1 主要用于降低电流损耗,在该模式下晶体振荡器仍然是工作的 ; 待机模式 2 则是在当 FIFO 寄存器为空且 CE=1 时进入此 模式; 待机模式下,所有配置字仍然保留。 基于 nRF24L01 模块的无线通信系统设计 14 在掉电模式下电流损耗最小,同时 nRF24L01 也不工作,但其所有配置寄存器的值仍然保留。 表 1: nRF24L01 四种工作模式 模式 PWR_UP PRIM_RX CE FIFO 寄存器状态 接收模式 1 1 1 发射模式 1 0 1 数据在 TX FIFO 寄存器中 发射模式 1 0 1→0 停留在发送模式,直至数据发送完 待机模式 2 1 0 1 TX FIFO 为空 待机模式 1 1 0 无数据传输 掉电 0 工作原理 发射数据时,首先将 nRF24L01 配置为发射模式:接着把接收节点地址 TX_ADDR 和有效数据 TX_PLD 按照时序由 SPI 口写入 nRF24L01 缓存区, TX_PLD 必须在 CSN 为低时连续写入,而 TX_ADDR 在发射时写入一次即可,然后 CE 置为高电平并保持至少 10μs ,延迟 130μs 后发 射数据。 若自动应答开启,那么 nRF24L01 在发射数据后立即进入接收模式,接收应答信号(自动应答接收地址应该与接收节点地址 TX_ADDR 一致)。 如果收到应答,则认为此次通信成功, TX_DS 置高,同时 TX_PLD 从 TX FIFO 中清除。 若未收到应答,基于 nRF24L01 模块的无线通信系统设计 15 则自动重新发射该数据 (自动重发已开启 ),若重发次数 (ARC)达到上限, MAX_RT 置高, TX FIFO 中数据保留以便在次重发。 MAX_RT或 TX_DS 置高时,使 IRQ 变低,产生中断,通知 MCU。 最后发射成功时 ,若 CE 为低则 nRF24L01 进入空闲模式 1。 若发送堆栈 中有数据且 CE 为高,则进入下一次发射。 若发送堆栈中无数据且 CE 为高,则进入空闲模式 2。 接收数据时 ,首先将 nRF24L01 配置为接收模式,接着延迟 130μs 进入接收状态等待数据的到来。 当接收方检测到有效的地址和CRC 时,就将数据包存储在 RX FIFO 中,同时中断标志位 RX_DR置高, IRQ变低,产生中断,通知 MCU去取数据。 若此时自动应答开启,接收方则同时进入发射状态回传应答信号。 最后接收成功时,若 CE 变低,则 nRF24L01 进入空闲模式 1。 在写寄存器之前一定要进入待机模式或掉电模式。 如下图,给出 SPI 操作及时序图: 图 SPI 读操作 图 SPI 写操作 配置字 SPI 口为同步串行通信接口,最大传输速率为 10 Mb/s,传输时先传送低位字节,再传送高位字节。 但针对单个字节而言,要先送基于 nRF24L01 模块的无线通信系统设计 16 高位再送低位。 与 SPI 相关的指令共有 8个,使用时这些控制指令由 nRF24L01 的 MOSI 输入。 相应的状态和数据信息是从 MISO 输出给 MCU。 nR。基于nrf24l01模块的无线通信系统设计
相关推荐
测技术具有直观、可监视范围广、可获取更多种类的交通参 数以及费用较低等优点、因而可广泛应用于交叉路口和公路干线的交通监视系统中。 视频车辆检测技术未来趋势 ( 1)智能化 视频车辆检测技术经过多年的发展,检测精度、深度、范围等指标都有很大的提高,但系统的智能化程度还十分有限,距离“人脑”的判断能力还很远。 ( 2) 视觉检测立体化 体视觉是计算机被动测距方法中最重要的距离感知技术之一。
{ if(bActive()) { ()。 DrawGLScene()。 ::SwapBuffers(wglGetCurrentDC())。 } else { ShowWindow(m_hWnd,SW_SHOWMINIMIZED)。 WaitMessage()。 } } } 使用 PeekMessage 而不是 GetMessage,这样当消息队列中没有消息时便不会等待而是返回一个 FALSE
元都要进行一系列的逐个片元操作,这样最后的象素值 BZ 送入帧缓冲器实现图形的显示。 OpenGL 图形操作步骤 在上面说明了 OpenGL 的基本工作流程,根据这个流程可以归纳出在 OpenGL 中进行主要的图形操作直至在计算机屏幕上渲染绘制出三维图形景观的基本步骤: ( 1) 建立景物模型 根据基本图形单元建立景物模型,并且对所建立的模型进行数学描述( OpenGL 中把:点、线、多边形
片封装,不利于焊接,需要 PCB制板,大大增加了成本和开发周期。 方案三 :采用宏晶科技有限公司的 STC12C5A60S2增强型 51单片机作为主控芯片。 此芯片内置 ADC和 SPI总线接口,且内部时钟不分频,可达到 1MPS。 而且价格适中。 考虑到此系统需要不用到 ADC,从性能和价格上综合考虑我们选择方案一,即用 AT89C51作为本系统的主控芯片。 无线通信模块方案 方案一:采用
统计值,称为净推介者值,以此预测顾客对公司产品或服务的态度是否忠诚,是否愿意继续购买和推荐,并在此基础上预8测公司的长期利润增长10。 NPS 的具体调研和统计方法如下11:NPS 调查问题:您是否愿意推荐我们给您的亲人、朋友或同事。 推介者被动者贬低者109876543210非常愿意非常不愿意图 NPS 问卷调查顾客根据NPS调查问题的回答能最终计算出“净推介者值”。
....................................................................................................................... 37 测试方案设计 .....................................................................