【STM32F1】——无线收发模块RF200与串口通信
【STM32F1】——无线收发模块RF200与串口通信
一、简介
本篇主要对调试无线收发模块RF200的过程进行总结,实现了以下功能。
- 串口普通收发:使用STM32F103C8T6的USART2串口接收中断,实现两个无线收发模块RF200间的通信。
二、RF200介绍
- 电压:3.4-5.5V
- 工作频率:418~455MHz
- 发射功率:100mW
- 工作范围:1500m
- 通信方式:UART(默认9600波特率)
- 尺寸:39.5 * 18.3 * 7.0 mm
三、RF200的普通串口通信
-
接线:
-
程序简介:使用STM32F103C8T6的USART2实现9轴姿态模块JY901串口数据的读取,并利用USART1发送到串口助手。
-
实现思路:
1)配置串口USART2,开启接收中断
2)配置串口发送函数
3)进行模块间的通信(RF200-2发送数据,RF200-1发指令点亮MCU的灯) -
代码解析:
1)串口USART2配置(RF200使能):波特率9600
void RF200_Init(void) { // 时钟使能 RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2, ENABLE); //初始化USART外设 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); //由于USART外设在GPIOA 所以初始化GPIO // 发送串口 GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; // TX 输出设置为复用推挽输出 这里只用到了发送 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init