015_STM32程序移植之_NRF24L01模块

发布者:MysticalGarden最新更新时间:2024-08-16 来源: cnblogs关键字:STM32  程序移植 手机看文章 扫描二维码
随时随地手机看文章
  1. 引脚接线图如下所示

STM32引脚

NRF24L01引脚

功能

GND

GND


3.3V

3.3V


PB8

CE


PB9

CSN


PB13

SCK


PB15

MOSI


PB14

MISO


PB12

IRQ





STM32引脚

CH340引脚


GND

GND


3.3V

3.3V


TXD

RXD


RXD

TXD


 

  1. NRF24L01分为主从,就是一个发送一个接受,两个的接线图都是按照上面的来进行接线

  2. 移植程序

  3. 移植成功发送程序之后进行复制成为接受程序,并更改main.C就行了

  4. 将刚才一直成功的发送程序下载到发送的那个STM32上面去

  5. 将接受的程序下载到接受的那个STM32上面去,

  6. 注意,上面的接受发送硬件不一样,不要下载错了

  7. 分别下载完毕后用串口助手看

  8. 左边是发送的,右边是接受的,具体接受发送的内容下载程序来看main.C那里

这里不再解析,注意哪个是发送哪个是接受就好了


关键字:STM32  程序移植 引用地址:015_STM32程序移植之_NRF24L01模块

上一篇:017_STM32程序移植之_AS608指纹模块
下一篇:014_STM32程序移植之_L298N电机驱动模块

推荐阅读最新更新时间:2024-11-08 11:10

STM32单片机学习笔记(6):PWM波形产生
项目简介 利用CubMX生成基于32单片机的HAl库工程,然后编写程序在proteus上仿真验证。本项目最适合没有开发板的同学学习,零成本利用仿真软件率先入门STM32单片机。这是第六部分针对STM32单片机内置TIM模块的PWM波形产生的学习和理解。 硬件模块 STM32F103R4 示波器 软件工具 CubMX Proteus KEIL 电路连接图 工作流程 首先,在CubMX种设置号一些参数,选择TIM1定时器,按下图设置好工作模式。输出PWM的引脚是PB15引脚。 然后再按下图设置好预分频和计数值 最好设置好占空比,占空比=Pulse/Per,比如想要设置占空比为20%,而上面设置了计数值为1000,那
[单片机]
<font color='red'>STM32</font>单片机学习笔记(6):PWM波形产生
stm32单片机GPIO端口的特点及应用解析
一、GPIO的综合描述 stm32每一个GPIO端口拥有2个32bits的configuration寄存器(GPIOx_CRL,GPIOx_CRH),2个32bits的数据寄存器(GPIOx_IDR,GPIOx_ODR),1个32bits的set/reset寄存器(GPIOx_BSRR),1个16bits的reset寄存器(GPIOx_BRR)和1个32bits的Lock寄存器(GPIOx_LCKR)。 (一)每一个IO引脚都可以使用软件配置为以下几种模式: 1. 浮空输入 2. 带上拉输入 3. 带下拉输入 4. 模拟输入 5. 开漏输出——(此模式可实现hotpower说的真双向IO) 6. 推挽输出 7. 复用功能的推挽
[单片机]
STM32系列里RTC的亚秒特性及功能(下)
我们回到前面提到的需求,每隔50±20ms做唤醒,即30ms~70ms范围内实现唤醒都可以接受。如果说使用ALARM中断,相信很多人自然会想到,先设定一个ALARM点,等唤醒后再修改新的ALARM值,就这样延续下去。 这样操作也是可以的,即每次在ALARM中断里修改新的ALARM时间点。下图是对ALARM值进行编程的流程【设置时先要关闭ALARM,修改ALARM值后再手动开启ALARM单元】: 不过,结合眼前的应用需求,我们可以不使用上面的做法,而是巧妙地使用RTC亚秒特性来实现周期性的ALARM以满足需求。怎么个巧法呢?一起来看看。 先假定RTCCLK为32768Hz,RTC同步分频系数和异步分频系数分别为如下参数:
[单片机]
STM32 μC/OS系统进睡眠模式的方法
前段时间做基于μC/OS系统的开发,遇到一个问题,在运行任务的时候需要使CPU进入睡眠状态几秒钟,但直接调用__WFI();时没有效果,后来查找资料发现需要在空闲任务中调用。 下面是我让cpu进入睡眠状态的例子: void App_TaskIdleHook (void) { //检查标志确定是否需要睡眠 if(Flag_Power_Off != 0) { //关闭systick避免systick中断唤醒CPU SYSTICK_Cmd(DISABLE); Flag_Power_Off = 0; printf( sleep\r\n ); CLKPWR_Sleep(); printf( wake\
[单片机]
STM32 定时器输出比较主动模式
STM32的定时器还可以工作在输出主动模式TIM_OCMode_Active。这里所谓的主动模式,通俗地说就是当定时器的计数值达到比较值的时候,强制在引脚端输出高电平。在这里,我这里编写一个程序使定时器工作输出比较主动模式,然后经过已经时间的延时,然后在通道引脚电平就会强制被拉高。 下面就讲讲相关的代码,还是基于我自己的规范工程。 1、工程的修改 1)这里用到了定时器,所以需要将stm32f10x_tim.h添加到STM32F10x_StdPeriod_Driver工程组中。 2)打开stm32f0x_conf.h文件,将其中原先被屏蔽的语句:#include stm32f10x_tim.h 的注释去掉。 3)新建OCAc
[单片机]
<font color='red'>STM32</font> 定时器输出比较主动模式
STM32进阶-DHT11传感器的应用详细步骤
DHT11概述 接口说明 电源引脚 DHT11的供电电压为 3-5.5V。传感器上电后,要等待 1s 以越过不稳定状态在此 期间无需发送任何指令。电源引脚(VDD,GND)之间可增加一个100nF 的电容,用以去耦滤波。 DHT11数据处理 串行接口 (单线双向) DATA 用于微处理器与 DHT11之间的通讯和同步,采用单总线数据格式,一次 通讯时间4ms左右,数据分小数部分和整数部分,具体格式在下面说明,当前小数 部分用于以后扩展,现读出为零.操作流程如下: 一次完整的数据传输为40bit,高位先出。 数据格式:8bit湿度整数数据+8bit湿度小数数据 +8bi温度整数数据+8bit温度小数数据 +8bit校
[单片机]
<font color='red'>STM32</font>进阶-DHT11传感器的应用详细步骤
如何使用STM32实现systick的精确延时
SYSTICK寄存器初始化 void SysTick_Configuration(void) { if (SysTick_Config(SystemCoreClock / 100)) { while (1); } NVIC_SetPriority(SysTick_IRQn, 0x0); } SysTick_Config默认时钟为SysTick_CLKSource_HCLK,所以在这之前使用SysTick_CLKSourceConfig()选择系统时钟不会改变systick的时钟 static __INLINE uint32_t SysTick_Config(uint32_t ticks) { if (ticks 》 Sys
[单片机]
STM32自定义printf实现多串口互用
STM32 串口使用频繁的朋友可能知道一个问题,库自带的 USART_SendData 函数一次只能发送 1 Byte 字符 如果我们要输出一个带格式、带参数的串口数据就只能通过 sprintf 打印到一个临时数组,然后再使用一个for循环调用USART_SendData一个字符一个字符的输出,过程非常麻烦! 姜斌是一个非常怕麻烦的人所以这种方法无疑让我发疯!后来在原子(OpenEDV)那里购买了开发板拿到了例程。里面重定向了printf函数作为串口输出函数,有了这个函数之后就能够很轻松的参数输出,但问题就在这里我们串口1 串口2 都要带参数输出怎么办? 本次实验:自定义printf函数 实验数据来源: 配置usart
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved