NRF24L01功能使用文档

NRF24L01功能使用文档
NRF24L01功能使用文档

开发文档介绍

开发文档介绍 软件开发文档是软件开发使用和维护过程中的必备资料。它能提高软件开发的效率,保证软件的质量,而且在软件的使用过程中有指导,帮助,解惑的作用,尤其在维护工作中,文档是不可或缺的资料。 软件文档可以分为开发文档和产品文档两大类。 开发文档包括:《功能要求》、《投标方案》、《需求分析》、《技术分析》、《系统分析》、《数据库文档》、《功能函数文档》、《界面文档》、《编译手册》、《QA 文档》、《项目总结》等。产品文档包括:《产品简介》、《产品演示》、《疑问解答》、《功能介绍》、《技术白皮书》、《评测报告》。用户文档《安装手册》、《使用手册》、《维护手册》、《用户报告》、《销售培训》等。 开发文档 1. 《功能要求》-- 来源于客户要求和市场调查,是软件开发中最早期的一个环节。 客户提出一个模糊的功能概念,或者要求解决一个实际问题,或者参照同类软件的一个功能。有软件经验的客户还会提供比较详细的技术规范书,把他们的要求全部列表书写在文档中,必要时加以图表解说。这份文档是需求分析的基础。 2. 《投标方案》-- 根据用户的功能要求,经过与招标方沟通和确认,技术人员开 始书写《投标方案》,方案书一般包括以下几个重要的章节:前言-- 项目背景、公司背景和业务、技术人员结构、公司的成功案例介绍等。需求分析-- 项目要求、软件结构、功能列表、功能描述、注意事项等。技术方案-- 总体要求和指导思想、技术解决方案、软件开发平台、网络结构体系等。项目管理-- 描述公司的软件开发流程、工程实施服务、组织和人员分工、开发进度控制、软件质量保证、项目验收和人员培训、软件资料文档等。技术支持-- 公司的技术支持和服务介绍、服务宗旨和目标、服务级别和响应时间、技术服务区域、技术服务期限、授权用户联系人等。系统报价-- 软、硬件平台报价列表、软件开发费用、系统维护费用等。项目进度-- 整个项目的进度计划,包括签署合同、项目启动、需求分析、系统分析、程序开发、测试维护、系统集成、用户验收、用户培训等步骤的时间规划。 3. 《需求分析》-- 包括产品概述、主要概念、操作流程、功能列表和解说、注意 事项、系统环境等。以《功能要求》为基础,进行详细的功能分析( 包括客户提出的要求和根据开发经验建议的功能) ,列出本产品是什么,有什么特殊的概念,包括哪些功能分类,需要具备什么功能,该功能的操作如何,实现的时候该注意什么细节,客户有什么要求,系统运行环境的要求等。这里的功能描述跟以后的使用手册是一致的。 4. 《技术分析》-- 包括技术选型、技术比较、开发人员、关键技术问题的解决、 技术风险、技术升级方向、技术方案评价,竞争对手技术分析等。以《需求分析》为基础,进行详细的技术分析( 产品的性能和实现方法) ,列出本项目需要使用什么技术方案,为什么,有哪些技术问题要解决,估计开发期间会碰到什么困难,技术方案以后如何升级,对本项目的技术有什么评价等。 5. 《系统分析》-- 包括功能实现、模块组成、功能流程图、函数接口、数据字典、 软件开发需要考虑的各种问题等。以《需求分析》为基础,进行详细的系统分析( 产

nRF24L01无线通信模块使用手册12

深圳市德普施科技有限公司 nRF24L01无线通信模块使用手册 一、模块简介 该射频模块集成了NORDIC公司生产的无线射频芯片nRF24L01: 1.支持2.4GHz的全球开放ISM频段,最大发射功率为0dBm 2.2Mbps,传输速率高 3.功耗低,等待模式时电流消耗仅22uA 4.多频点(125个),满足多点通信及跳频通信需求 5.在空旷场地,有效通信距离:25m(外置天线)、10m(PCB天线) 6.工作原理简介: 发射数据时,首先将nRF24L01配置为发射模式,接着把地址TX_ADDR和数据TX_PLD 按照时序由SPI口写入nRF24L01缓存区,TX_PLD必须在CSN为低时连续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10μs,延迟130μs后发射数据;若自动应答开启,那么nRF24L01在发射数据后立即进入接收模式,接收应答信号。如果收到应答,则认为此次通信成功,TX_DS置高,同时TX_PLD从发送堆栈中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(ARC_CNT)达到上限,MAX_RT置高,TX_PLD不会被清除;MAX_RT或TX_DS置高时,使IRQ变低,以便通知MCU。最后发射成功时,若CE为低,则nRF24L01进入待机模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入待机模式2。 接收数据时,首先将nRF24L01配置为接收模式,接着延迟130μs进入接收状态等待数据的到来。当接收方检测到有效的地址和CRC时,就将数据包存储在接收堆栈中,同时中断标志位RX_DR置高,IRQ变低,以便通知MCU去取数据。若此时自动应答开启,接收方则同时进入发射状态回传应答信号。最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。 三、模块引脚说明

NRF24L01无线模块收发程序例程

//下面是接收的NRF24L01的程序。 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// #include #include "nrf24l01.h" #include #define uchar unsigned char #define uint unsigned int sbit IRQ =P1^2;//输入 sbit MISO =P1^3; //输入 sbit MOSI =P1^1;//输出 sbit SCLK =P1^4;//输出 sbit CE =P1^5;//输出 sbit CSN =P1^0;//输出 uchar RevTempDate[5];//最后一位用来存放结束标志 uchar code TxAddr[]={0x34,0x43,0x10,0x10,0x01};//发送地址 /*****************状态标志*****************************************/ uchar bdata sta; //状态标志 sbit RX_DR=sta^6; sbit TX_DS=sta^5; sbit MAX_RT=sta^4; /*****************SPI时序函数******************************************/ uchar NRFSPI(uchar date) { uchar i; for(i=0;i<8;i++) // 循环8次 { if(date&0x80) MOSI=1; else MOSI=0; // byte最高位输出到MOSI date<<=1; // 低一位移位到最高位 SCLK=1; if(MISO) // 拉高SCK,nRF24L01从MOSI读入1位数据,同时从MISO输出1位数据date|=0x01; // 读MISO到byte最低位 SCLK=0; // SCK置低 } return(date); // 返回读出的一字节 } /**********************NRF24L01初始化函数*******************************/ void NRF24L01Int() {

nRF24L01无线通信模块使用手册

nRF24L01无线通信模块使用手册 一、模块简介 该射频模块集成了NORDIC公司生产的无线射频芯片nRF24L01: 1.支持2.4GHz的全球开放ISM频段,最大发射功率为0dBm 2.2Mbps,传输速率高 3.功耗低,等待模式时电流消耗仅22uA 4.多频点(125个),满足多点通信及跳频通信需求 5.在空旷场地,有效通信距离:25m(外置天线)、10m(PCB天线) 6.工作原理简介: 发射数据时,首先将nRF24L01配置为发射模式,接着把地址TX_ADDR和数据TX_PLD按照时序由SPI 口写入nRF24L01缓存区,TX_PLD必须在CSN为低时连续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10μs,延迟130μs后发射数据;若自动应答开启,那么nRF24L01在发射数据后立即进入接收模式,接收应答信号。如果收到应答,则认为此次通信成功,TX_DS置高,同时TX_PLD 从发送堆栈中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(ARC_CNT)达到上限,MAX_RT置高,TX_PLD不会被清除;MAX_RT或TX_DS置高时,使IRQ变低,以便通知MCU。最后发射成功时,若CE为低,则nRF24L01进入待机模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入待机模式2。 接收数据时,首先将nRF24L01配置为接收模式,接着延迟130μs进入接收状态等待数据的到来。当接收方检测到有效的地址和CRC时,就将数据包存储在接收堆栈中,同时中断标志位RX_DR置高,IRQ 变低,以便通知MCU去取数据。若此时自动应答开启,接收方则同时进入发射状态回传应答信号。最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。 二、模块电气特性 参数数值单位 供电电压5V 最大发射功率0dBm 最大数据传输率2Mbps 电流消耗(发射模式,0dBm)11.3mA 电流消耗(接收模式,2Mbps)12.3mA 电流消耗(掉电模式)900nA 温度范围-40~+85℃ 三、模块引脚说明 管脚符号功能方向 1GND电源地 2IRQ中断输出O 3MISO SPI输出O 4MOSI SPI输入I 5SCK SPI时钟I 6NC空 7NC空 8CSN芯片片选信号I 9CE工作模式选择I 10+5V电源

NRF24L01功能使用文档

NRF24L01使用文档 基于c8051f330单片机

目录 芯片简介 (3) 1 NRF24L01功能框图 (4) 2 NRF24L01状态机 (5) 3 Tx与Rx的配置过程 (7) 3.1 Tx 模式初始化过程 (7) 3.2 Rx模式初始化过程 (8) 4控制程序详解 (9) 4.1 函数介绍 (9) 4.1.1 uchar SPI_RW(uchar byte) (9) 4.1.2 uchar SPI_RW_Reg (uchar reg, uchar value) (10) 4.1.3 uchar SPI_Read (uchar reg); (10) 4.1.4 uchar SPI_Read_Buf (uchar reg, uchar *pBuf, uchar bytes); (11) 4.1.5 uchar SPI_Write_Buf (uchar reg, uchar *pBuf, uchar bytes); (11) 4.1.6 void RX_Mode(void) (12) 4.1.7 void TX_Mode(void) (13) 4.2 NRF24L01相关命令的宏定义 (13) 4.3 NRF24L01相关寄存器地址的宏定义 (14) 5 实际通信过程示波器图 (16) 1)发射节点CE与IRQ信号 (17) 2)SCK与IRQ信号(发送成功) (18) 3)SCK与IRQ信号(发送不成功) (19)

芯片简介 NRF24L01是NORDIC公司最近生产的一款无线通信通信芯片,采用FSK调制,内部集成NORDIC自己的Enhanced Short Burst 协议。可以实现点对点或是1对6的无线通信。无线通信速度可以达到2M(bps)。NORDIC公司提供通信模块的GERBER文件,可以直接加工生产。嵌入式工程师或是单片机爱好者只需要为单片机系统预留5个GPIO,1个中断输入引脚,就可以很容易实现无线通信的功能,非常适合用来为MCU系统构建无线通信功能。

生物软件使用说明书大全

生物软件使用说明书大全 生物软件使用说明书大全 转自: SPSS10教程 SAS6.12统计教程 统计软件SAS 8.2教程 Stata统计学教程入门 Eviews3.1使用入门教程1 软件中文使用说明书大全 ? ·NoteExpress初级教程(step by step) ? ·常用生物软件简介汇总(window 版) ? ·STATISTICA/w 5.0及其在医学中的应用 ? ·利用Excel处理统计数据 ? ·数据分析、科技绘图的必备工具-Microcal O () ? ·Band Leader中文使用说明书 ? ·BioEdit中文使用说明书下载 ) ? ·Cn3D中文说明书下载 ? ·Gel-PRO ANALYZER凝胶定量分析软件演示操作 ) ? ·Gene Construction Kit中文使用手册 ) ? ·aminoXpress中文使用说明书 ) ? ·DNAtools中文说明书下载 ? ·综合性序列分析软件DNAStar中文使用说明书 ) ? ·Reference Manager 10中文使用说明书 ? ·Genamics中文使用说明书) ? ·Vector NTI9.0中文使用说明书 ) ? ·Winplas中文使用说明书 ? ·RNA Structure 3中文使用说明书) ? ·Primer Premier中文使用说明) ? ·进化树分析及相关软件使用说明) ? ·观察生物分子的窗口——RasMol 2.6 ) ? ·RNAdraw1.1b2功能介绍) ? ·SEQUIN3使用中文说明书 ? ·JELLYFISH 1.3 使用手册) ? ·Omiga使用中文说明书 ? ·Excel 提速12招 ? ·修复受伤的Excel文件 ? ·用好Word 2003的比较功能 ? ·抓图高手:SnagIt使用技巧3例 ? ·DNASTAR-MAPDRAW软件使用教程[图解] ? ·DNASTAR-EDITSEQ软件使用教程[图解] ? ·核酸序列分析软件DNAssist1.0教程[图解] ? ·BandScan使用教程[图解] ? ·蛋白序列分析软件包ANTHEPROT 4.3中文说明书

详细功能介绍及使用说明

关键使用说明在使用过程中的翻译机最下方的信息栏中都有简明说明,本文档将更详细的对每个功能及使用技巧做说明: 一、基本功能 1、设置文件——保存设置文件:保存当前所有设置到SFSave文件夹中,便于下次导入使用而不用重复操作 2、设置文件——导入设置文件:从SFSave文件夹中导入指定的设置文件从而沿用之前保存的设置 3、窗口——窗口置顶:可以控制窗口是否永久置顶 4、帮助:内有简明使用步骤,BUG反馈途径等帮助信息 5、推广:雨滴网相关的网址 6、获取游戏窗口句柄:划定识别区之前以及导入设置文件之后的必须步骤,在不更换游戏程序的前提下不用重复捕获。点击按钮后会有特殊蓝色半透明阴影出现(以下简称迷雾)。迷雾会随着鼠标的位置识别有句柄的窗口并将其覆盖(常见于WIN7或以上系统)或交替闪烁(常见于XP系统)。鼠标移动到游戏窗口后迷雾自动将其覆盖,左键单击迷雾即可捕获覆盖的窗口,右键单击放弃捕获。捕获完毕后会弹出确认窗口,若正确捕获,窗口内能看到缩小的游戏画面。 7、划定识别区:在游戏画面上直接划定一个矩形区域,本软件会对该区域进行OCR(光学字符识别)从而提取文字。点击按钮后覆盖游戏窗口的迷雾又会出现,直接在迷雾上框出要识别的区域即可,操作方式与普通截图软件类似(即左键单击想划定的区域的起点,鼠标移到终点再左键单击一次即可)。右键可重画已经指定起点但还未指定终点的识别区,若起点也未指定,则会退出划区模式而放弃划区。在之前划定过识别区的前提下,显示的绿框是之前已经划定的识别区,红框是正要划定/修改的识别区。 8、修改识别区:点击并成功“划定识别区”后该按钮会变为“修改识别区”。功能与“划定识别区”相同,直接无视之前的识别区在迷雾上划定新识别区即可。右键单击放弃修改。 9、激活:获取游戏窗口句柄并划定识别区后,或者,导入设置文件并获取游戏窗口句柄后;就具备了激活翻译循环的基本条件。点击按钮即可激活翻译循环。程序将自动开始循环翻译。 10、暂停:点击“激活”按钮后,该按钮将变为“暂停”。点击按钮后将停止翻译循环。 11、添加翻译栏:可以新增一行翻译栏,多个翻译栏使用的是同一游戏句柄,故新增翻译栏不必重新获取游戏句柄。但不同的翻译栏有各自的设置,互不影响,需要单独进行设定。 12、删除翻译栏:删除最下方的翻译栏。为防止手滑删除,删除后大部分设置仍会保留。 13、修改标签:“激活”按钮上方的标签可以修改,便于用户记忆翻译栏对应翻译的是什么东东。 二、扩展功能【注意】:以下设置只有点确定后才生效,点取消放弃所做的任何更改。 1、自动化设置:点击后弹出对应设置窗口,能切换手动模式和自动模式(默认)。自动模式下能设定翻译时间间隔(默认2秒)以减少CPU开销。时间间隔可以输入0~99的整数。CPU性能在酷睿I3或以上的可以尝试设置为0秒以获得最佳性能。手动模式下每次翻译完毕后会自动停止翻译,需要手动激活才进行一次识别、翻译。 2、真人语音设置:点击后弹出对应设置窗口,能进行真人语音朗读的相关设置,包括:是否开启、音量、是否等待朗读完毕再开始下一轮翻译。 提示:点击“激活”按钮下方的小喇叭可以直接开启/关闭语音朗读。

NRF24L01无线模块C语言程序

NRF24L01无线模块C语言程序 24MHz晶振 #include #include #include #include #include #include #define U8 unsigned char #define U16 unsigned int #define TX_ADDR_WITDH 5 //发送地址宽度设置为5个字节 #define RX_ADDR_WITDH 5 //接收地址宽度设置为5个字节 #define TX_DATA_WITDH 1//发送数据宽度1个字节 #define RX_DATA_WITDH 1//接收数据宽度1个字节 #define R_REGISTER 0x00//读取配置寄存器 #define W_REGISTER 0x20//写配置寄存器 #define R_RX_PAYLOAD 0x61//读取RX有效数据 #define W_TX_PAYLOAD 0xa0//写TX有效数据 #define FLUSH_TX 0xe1//清除TXFIFO寄存器 #define FLUSH_RX 0xe2//清除RXFIFO寄存器 #define REUSE_TX_PL 0xe3//重新使用上一包有效数据 #define NOP 0xff//空操作 #define CONFIG 0x00//配置寄存器 #define EN_AA 0x01//使能自动应答 #define EN_RXADDR 0x02//接收通道使能0-5个通道 #define SETUP_AW 0x03//设置数据通道地址宽度3-5 #define SETUP_RETR 0x04//建立自动重发 #define RF_CH 0x05//射频通道设置 #define RF_SETUP 0x06//射频寄存器 #define STATUS 0x07//状态寄存器 #define OBSERVE_TX 0x08//发送检测寄存器 #define CD 0x09//载波 #define RX_ADDR_P0 0x0a//数据通道0接收地址 #define RX_ADDR_P1 0x0b//数据通道1接收地址 #define RX_ADDR_P2 0x0c//数据通道2接收地址 #define RX_ADDR_P3 0x0d//数据通道3接收地址 #define RX_ADDR_P4 0x0e//数据通道4接收地址 #define RX_ADDR_P5 0x0f//数据通道5接收地址

Gblocks使用说明书-by florawz1

Gblocks使用说明书(by florawz) 1.首先打开软件,进入主页面 2.输入O ,然后回车,对话框显示输入一个文件或路径 此时将比对好的(.fas)文件拖入对话框。对话框即出现该文件的路径(如图) 按回车,即导入该序列。对话框上部出现下列信息 3.快速比对:输入G,然后回车。在原比对文件所在文件夹内即可出现Gblocks 已经处理好的文件

.fas-gb文件可用Bioedit和DNAMAN打开。 打开.htm文件,可查看可视化的处理结果(如图) 4.主菜单: t. 指定的序列类型(可以是蛋白质,DNA或者密码子)。 输入一个t,回车。序列类型改为Condons 再输入一个t,回车。序列类型改为DNA(如此循环修改)

o. 打开一个文件。必须为 NBRF/PIR 或 FASTA 格式 ,序列长度不限。打开 NBRF/PIR-格式的序列时,在序列备注第一行要注明序列类型 如: >P1;byflorawz ------MEYLLQEYLPILVFLGMASALAIVLILAAAVIAVRN--PDPEKVSAYECGFNAF D-DARMKFDVRFYLVSILFIIFDLEVAFLFPWAVSFASLS-DVAFWGLMVFLAVLTVGFA YEWKKGALEWA----------------------* (fas格式则不需要,第一行直接为>byflorawz即可) 注意:在使用Glocks分析前,序列缺口必须先消除。 在将比对文件拖进改软件时,要去路径掉末尾的空格。 打开多个文件 :必须建立一个path文件。输入各个相关文件的路径,在安装好的文件包内可以看到一个"paths"范例,用word打开此文件,即可看到各个文件的所在路径(如图) 多条比对序列的处理:如果所有的比对文件的路径都在一个paths文件,且各个比对文件的序列条数,以及物种的顺序都是相同的,那么这些比对文件在最后的结果中可以连接起来。如果各个比对文件的序列条数不同,那么也可以一起处理,但是最后不能连接。 b. 显示 Block 限制性参数 (详情见下页). s. 显示保存菜单(详情见下页). g. 处理计算 q. 退出 5.限定性参数菜单

系统功能操作说明手册

系统功能操作说明手册日期:2020年07月01日

目录 一、操作功能说明 (3) 二、采购意向公告发布操作说明 (3)

一、操作功能说明 为便于供应商及时了解政府采购信息,根据《河南省财政厅关于开展政府采购意向公开工作的通知》(豫财购〔2020〕8号)等有关规定,现增加【采购意向公告】功能,将采购单位政府采购意向进行公开。 本操作手册主要涉及功能:采购意向公告 二、采购意向公告发布操作说明 采购人登录【河南省电子化政府采购系统】点击【信息发布】菜单下的【采购意向公告】,操作如下图所示。 点击右上角的【起草公告】,在【编辑政府采购意向公告】页面进行政府采购意向公告的信息填写。

政府采购意向公告填写说明: 公告名称:单位名称+意向公告的开始年月至结束月+政府采购意向。 意向公告的开始年月至结束月填写说明:“年”可以手工输入四位数的阿拉伯数字年份,也可以点击“年”份输入框进行年份选择,操作如下图所示: “月”也可以手工输入阿拉伯数字1-12,也可点击“月”输入框进行月份的选择方法同上。 公告内容:

序号:手工输入采购内容排序的整数位数字。 采购项目名称:填写具体采购项目的名称。 预算金额:手工可输入整数位8位,小数位6位的金额,单位:万元。 预计采购时间:可以手工输入1-12月阿拉伯数字,也可点击“月”输入框进行月份的选择,注意:月份填写或输入必须在公告意向开始月份和结束月份内。 如填写的采购采购内容需要增加或删除可以点击后面的“增加”或“删除”图标进行操作,操作如下图所示: 公告信息填写完成后点击右上角的“保存”按钮,进行信息保存。操作如下图所示:

nrf24l01(2.4G模块)

NRF24L01(2.4G模块) 一、模块简介 (1)2.4GHz全球开放ISM频段免许可证使用。 (2)最高工作速率2Mbps,高效GFSK调制,抗干扰能力强。 (3)126频道,满足多点通信和跳频通信需要。 (4)内置硬件CRC检错,和点对点通信地址控制。 (5)低功耗,1.9-3.6V工作,待机模式下22uA;掉电模式900nA。 (6)内置2.4GHz天线,体积小巧:15mm×29mm。 (7)模块可软件设置地址,只有收到本机地址时才会输出数据(提供中断提示),可直接接各种单片机使用,软件编程非常方便。 (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,需要串联电阻分压,否则容易烧毁模块!如果是3.3V的,可以直接和RF24L01模块的IO口线连接。比如AVR系列单片机。如果是5V的一般串接2K的电阻。 二、接口电路 说明: 1)VCC脚接电压范围为:1.9V-3.6V,不能在这个敬意之外,超过3.6V将会烧毁模块。推荐电压3.3左右。 2)除电源VCC和接地端,其余脚都可以直接和普通的5V单片机IO口直接相连,无需转换。当然对3V左右的单片机更加适用了。 3)硬件上面没有SPI的单片机也可以控制本模块,用普通单片机IO口模拟SPI,不需要单片机真正的串口介入,只需要普通的单片机IO口就可以了,当然用串口也可以。 4)如果需要其他封装接口,比如密脚插针,或者其他形式的接口,可联系我们定做。 三、引脚说明

nrf24l01无线模块NRF24L01模块收发c程序

//许多人都在找nrf24l01无线模块的c程序;我以前刚接触无线//时用的就是nrf24l01模块;搜索了许多程序有很多都没法直接用;甚至还怀疑模块是不是被我搞坏了;拿去让别人检测模块又是好的;为避免大家走弯路;我将我的程序发出来供大家参考; 这是nrf24l01无线模块pcb图; 下面有Nrf24l01无线模块的收发c程序;以下程序经本人亲自测试;绝对能用!! 请注意以下几点: 1、24L01模块的电源电压是否为3V-3.6V之间; 2、如果您用的单片机是5V的话,请在IO口与模块接口之间串一个1K电阻; 3、检查模块的GND是否与单片机的GND相连接 4、先用程序进行调试,如果IO口不同,请更改IO口或相关时序; 5、如果是51系列单片机,晶振请选用11.0592M Hz; 模块供电最好用asm1117 5v转3.3v 稳压 测试单片机是stc89c52;at89c52 通用; 收发一体;

一大截不废话了;上程序;此程序是按键控制led;当按下s的时候对应接受的led会闪闪发光;很简单的~如果要实现其他更先进的功能;自己发掘吧~~ 务必将硬件连接正确;否则;它不会工作的~~当然做什么都要严谨~~错一点就差大了~~ 《《收发一体程序》》 #include #include typedef unsigned char uchar; typedef unsigned char uint; //****************************************NRF24L01端口定义

*************************************** sbit M ISO =P1^3; sbit M OSI =P1^4; sbit SCK =P1^2; sbit CE =P1^1; sbit CSN =P3^2; sbit IRQ =P3^3; //************************************按键*************************************************** sbit KEY=P2^0; //***************************************************************************** sbit led=P2^1; //*********************************************NRF24L01*********************** ************** #define TX_ADR_WIDTH 5 // 5 uints TX address width #define RX_ADR_WIDTH 5 // 5 uints RX address width #define TX_PLOAD_WIDTH 20 // 20 uints TX payload #define RX_PLOAD_WIDTH 20 // 20 uints TX payload uint const TX_ADDRESS[TX_ADR_WIDTH]= {0x34,0x43,0x10,0x10,0x01}; //本地地址uint const RX_ADDRESS[RX_ADR_WIDTH]= {0x34,0x43,0x10,0x10,0x01}; //接收地址//***************************************NRF24L01寄存器指令******************************************************* #define READ_REG 0x00 // 读寄存器指令 #define WRITE_REG 0x20 // 写寄存器指令 #define RD_RX_PLOAD 0x61 // 读取接收数据指令 #define WR_TX_PLOAD 0xA0 // 写待发数据指令 #define FLUSH_TX 0xE1 // 冲洗发送FIFO指令 #define FLUSH_RX 0xE2 // 冲洗接收FIFO指令 #define REUSE_TX_PL 0xE3 // 定义重复装载数据指令 #define NOP 0xFF // 保留 //*************************************SPI(nRF24L01)寄存器地址**************************************************** #define CONFIG 0x00 // 配置收发状态,CRC校验模式以及收发状态响应方式#define EN_AA 0x01 // 自动应答功能设置 #define EN_RXADDR 0x02 // 可用信道设置 #define SETUP_AW 0x03 // 收发地址宽度设置 #define SETUP_RETR 0x04 // 自动重发功能设置 #define RF_CH 0x05 // 工作频率设置 #define RF_SETUP 0x06 // 发射速率、功耗功能设置 #define STATUS 0x07 // 状态寄存器 #define OBSERVE_TX 0x08 // 发送监测功能 #define CD 0x09 // 地址检测 #define RX_ADDR_P0 0x0A // 频道0接收数据地址 #define RX_ADDR_P1 0x0B // 频道1接收数据地址

NRF24L01参考程序(包含多个实例)

(相关人员如觉得本人水平低下,还请见谅) Nrf24L01的使用程序和使用方法和简单操作: 功能: 无线对发程序。两个模块a,b,实现按下一个按键,会在对方的数码管上显示3或4,在本机上显示1,2。 当一个模块,比如a模块。当两个按键按下其中一个,则会在另一个模块b上显示数字3,4(具体根据按下哪个按键)。以上功能描述,B模块按键按下,如同a模块一样的功能,不做系统性描述了。 下面给出程序中几个地方的解释: #define READ_REG 0x00 // 读寄存器指令 #define WRITE_REG 0x20 // 写寄存器指令 #define RD_RX_PLOAD 0x61 // 读取接收数据指令 #define WR_TX_PLOAD 0xA0 // 写待发数据指令 #define FLUSH_TX 0xE1 // 冲洗发送FIFO指令 #define FLUSH_RX 0xE2 // 冲洗接收FIFO指令 #define REUSE_TX_PL 0xE3 // 定义重复装载数据指令 #define NOP 0xFF // 保留 类似这种的描述,可以等同于READ_REG =0x00;这个是经过实际程序测试出来的,比如 以下程序: #include #define k 0xfe void main() { P1=k; } 则会出现此类结果:

MOSI = (uchar & 0x80); // output 'uchar', MSB to MOSI uchar = (uchar << 1); // shift next bit into MSB.. SCK = 1; // Set SCK high.. uchar |= MISO; // capture current MISO bit SCK = 0; 此处为spi的核心,是spi协议的编程,其中uchar |= MISO; 表示uchar |= MISO | uchar; MOSI = (uchar & 0x80);其中0x80是1000 0000,与上uchar,这种&,是按位与,故可以从uchar提取出一个电平给mosi。 MOSI = (uchar & 0x80); // output 'uchar', MSB to MOSI uchar = (uchar << 1); 这两句组合起来用,就实现了把uchar编程8位2进制数后的每一位都可以发送给mosi;Uchar的只待对象,就是上面的诸如#define FLUSH_TX 0xE1 这样的数,或者是相关的发送数据。 *pBuf这个并不是一个主要的问题,实际这个是涉及指针问题的,带*的跟地址有关系,但是我们其实不需要很关心编译的时候数据被具体存入哪个地址,即使是很重要的数据。 void init_NRF24L01(void) { inerDelay_us(100); CE=0; // chip enable CSN=1; // Spi disable SCK=0; // SPI_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, 0); // 设置信道工作为2.4GHZ,收发必须一致 SPI_RW_Reg(WRITE_REG + RX_PW_P0, RX_PLOAD_WIDTH); //设置接收数据长度,本次设置为32字节 SPI_RW_Reg(WRITE_REG + RF_SETUP, 0x07); //设置发射速率为1MHZ,发射功率为最大值0dB } 在整个初始化中我们看到: CE=0; // chip enable CSN=1; // Spi disable 这是设置整个的状态。如过状态设置成待机,则引脚可能变为高阻。(以上并非全部引脚)

开发功能文档规范

1 系统环境 1.1开发平台介绍 IDE及版本介绍 1.2系统环境介绍 操作系统、版本、配置 1.3运行环境介绍 web容器、配置 1.4数据库介绍 名称、版本、工具介绍、配置 1.5插件介绍 名称、版本、环境要求、来源、使用介绍若有使用原版介绍作为文档附件 1.6 版本控制 版本控制方式、项目名称、服务器地址、使用说明 2 关键技术 说明系统采用的技术关键、技术升级方向、存在的技术风险、对技术方案的总体评价等等。 3 总体设计 3.1 体系结构 说明系统采用的体系架构(尽量用图示来辅助描述)。 3.2 主要功能 说明本系统实现的主要功能。

3.3 模块接口 各模块间接口所用到的数据接口(为其他的人提供的接口和需要使用的别人的接口) 3.3.1 提供的接口描述 3.3.2 使用接口描述 3.4 处理流程 说明本系统的主要处理流程(尽量用图示来辅助描述)。 4 数据结构设计 4.1 数据词典设计 写出包名及各个类的类名,及数据库的命名规则。 如果是面向对象写类间关系,若非面向对象写数据库命设计等。 给出本系统内所使用的每个数据结构、数据项的名称及它们之间的层次关系。 4.2 数据库设计 给出数据库名称、数据库表的设计、各表之间的关系、索引的设计等。 5 模块设计 说明各模块的设计考虑。每个模块的具体描述包括以下内容: 5.1 模块描述 说明该模块的主要功能、特点、逻辑流程。可采用“输入——处理——输出”的形式描述(尽量用图示来辅助描述)。

5.2 主要算法 说明该模块选用的算法,包括计算公式、计算步骤等。 5.3 主要方法或函数的设计 包括实现功能、名称、返回值、参数说明、与其它方法或函数的调用关系等。 5.4 主要界面的设计 描述与该模块相关的主要界面的设计及之间的跳转关系,各模块间传递的参数 6业务流程设计 包含完整的流程图 7 开发计划说明

nrf24l01无线模块

基于nRF24L01的无线温度采集系统设计 1引言 温度采集系统所采集的温度通常通过RS485、CAN总线通信方式传输至上位机,但这种方式维护较困难,不利于工业现场生产;而无线通信GPRS技术传输距离长,通信可靠稳定,但设计复杂、成本昂贵。这里采用工业级内置硬件链路层协议的低成本单芯片nRF24L01型无线收发器件实现系统间的无线 通信,完成无线信号的接收、显示及报警功能。 2nRF24L01简介 nRF24L01是一款工业级内置硬件链路层协议的低成本无线收发器。该器件工作于2.4GHz全球开放ISM频段,内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合增强型ShockBu rst技术,其输出功率和通信频道可通过程序配置。拥有ShockBurst和Enhanced ShockBurst两种数据传输模式。可直接与单片机I/O连接,外接元件数目少。nRF24L01功耗低,以-6dBm的功率发射时,工作电流仅9mA;接收时,工作电流仅12.3mA,多种低功率工作模式(掉电和空闲模式)更利于节能 设计。 3系统硬件设计 系统硬件设计主要由采集发送和接收显示两部分组成。图1为采集发送电路原理图,该电路主要由温度传感器DS18B20、单片机STC12LE5408和nRF24L01组成。 STC12LE5408是增强型8051单片机,速度快,集成度高,电压范围宽(2.2~3.8V),和MCS-5 1系列单片机指令系统完全兼容。其内部还有8KB Flash程序存储器,512字节RAM、2KB EEPRO M、4路PWM以及硬件看门狗(WDT)等资源.性价比高。 DSl8B20是DALLAS公司生产的单总线数字1-Wire温度传感器,可把温度信号直接转换成串行数字信号供单片机处理,采用1-Wire接口。DSl8B20的数据端DQ可通过4.7kΩ的上拉电阻接STC12LE5 408。nRF24L01的CE,CSN,SCK,MOSI,MISO,IRQ引脚则可接STC12LE5408的任意端口,但需在编程时注意,这里接至P1端口。由于nRF24L01具有接收数据功能,所以接收显示电路由单片机ST C12LE5408、nRF24L01和显示电路组成。所采集的数据也通过串口发送至PC机进行处理。

平台使用手册--使用说明文档

平台功能说明手册

目录 目录 (1) 登录系统 (2) 修改个人基本资料、登录密码、管理应用 (4) 查看正在教的课 (7) 创建/新建课程 (7) 归档/查看归档/取消归档 (8) 对课程进行归档 (8) 查看归档课程 (9) 对课程进行取消归档操作 (10) 进入正在教的课 (11) 查看课程的课程门户 (11) 编辑课程信息 (12) 查看课程评价 (13) 预览课程的页面 (14) 编辑目录 (14) 对课程进行发放设置 (15) 查看任务点进度及完成详情 (16) 发布最新讨论/通知/站内信 (17) 查看统计总览 (18) 查看课程总览 (18) 查看已完成任务点 (19) 查看学生数 (20) 查看讨论数 (21) 查看访问数 (22) 查看成绩管理 (23) 查看资料 (24) 查看/新建作业 (30) 为学生设置考试 (33) 与学生进行互动讨论 (35) 设置学生/教师/助教/菜单 (36) 进行云阅读 (40) 使用云盘 (42) 订阅/预览报纸 (43) 记录笔记 (44) 查看消息/公告/通知 (45) 退出系统 (46)

尔雅慕课化学习系统以课程为中心集成网络教与学的环境,集授课教师管理、课程学习与考核等管理功能为一体,是支撑网络远程教育的最重要应用系统,为教育行政部门和各学校,提供一个教师管理的综合性、一体化平台。该平台联系了教师和学生的关系,是师生沟通的桥梁。 教师使用尔雅慕课化学习系统呢? 下面对该系统的具体使用作出详细说明: 登录系统 利用有效的邮箱/帐号和密码,登录本系统。 1、打开浏览器,在地址栏中输入网站地址, 如https://www.360docs.net/doc/ac10233642.html,/portal ,如下图所示: 登录 2、用户在上图所示界面中,点击“登录”按钮。

NRF24L01无线发射简易教程

NRF24L01 简易教程

先来看接口电路,使用的IO 口不是唯一的哦,可随意定义接口,当然是在使用IO 口模拟SPI 且IRQ 中断引脚不使用的使用查询方法判断接收状态的情况下了。作为初探我们就是用简单的IO 模拟SPI 的方法了,中断使用查询的方式。那么该教程讲解的接口与单片机的连接如下: 首先您需要了解NRF24L01,请参阅“NRF24L01 芯片中文资料”或者“NRF24L01 芯片英文资料”。 我们的教程是以一个简单的小项目为大家展示NRF24L01 的使用方法与乐趣。我们所写的教程均是以这种方式的呢,让您在学习的时候明白它能做什么,使您学起来不至于枯燥无味。 作为简易的教程,我们只需要知道它是怎么使用的就够了,我们本教程的目的是用NRF24L01 发送数据和接收数据,且接收方会对比发送的数据与接收的数据,若完全相同则控制LED 闪烁一次,并且把接收到的数据通过串口发送到PC 端,通过串口工具查看接收到的数据。 具体的要求如下: 1、具备发送和接收的能力。 2、发送32 个字节的数据,接收方接收到正确数据之后给予提示,通过LED 闪烁灯形 式。 3、把接收到的数据传送到PC 进行查看。 4、发送端每隔大约1.5 秒发送一次数据,永久循环。以上是程序的要求,若您想自行 设计出硬件接口,您也是可以添加一条呢:使用DIY 方 式设计NRF24L01 的接口板,且包含含单片机平台,使用PCB 方式或者万用板方式均可。如果您想让自己学的很扎实,那么推荐您自行做出接口板子呢。当然若您的能力不足,那么我们不推荐自行做板呢,因为这样会增加您学习的难度,反而起到了反效果呢。 我们使用的方式是画PCB 的方式呢,若您自己做了接口板子,那么您可以对比下一呢,O(∩_∩)O! 我们知道NRF24L01 的供电电压是1.9V~3.6V 不能超过这个范围,低了不工作,高了可能烧毁NRF24L01 芯片。我们常用的STC89C52 的单片机的供电电压是5V,我们不能直接给24L01 这个模块供电,我们需要使用AMS1117-3.3V 稳压芯片把5V 转成3.3V 的电压为24L01 模块供电。 为此我们的设计原理图如下:包含单片机最小系统、供电系统、下载程序接口、5V 转3.3V 电路、NRF24L01 模块接口。并且全部引出单片机的IO 口,另外还加了5 个电源输出接口,为扩展使用。还包括了电源指示LED 以及一个IO 口独立控制的LED,这个独立控制的LED用于NRF24L01 接收成功闪烁指示。为了保证系统的稳定性,在设计中添加了两个滤波电容。

相关文档
最新文档