一、遥控器和接收头类型
1.1 天地飞 WFT06X-A 2.4GHz 6通道遥控器
商品规格:六通道2.4G
1.2 WFR06S 2.4G 6通接收机
■产品规格:
频 段: 2.400GHz-2.483GHz
灵 敏 度: -97dBm
地面直线距离:大于700米
解码方式: PPM/PCMS 1024/PCMS 4096
电 源: 4.8-6V
尺 寸: 34.85×21×11.3mm
重 量: 5.8g
关于PPM解码方式,可以查看这篇文章。
https://www.docin.com/p-1556658364.html
1.3 对频说明:
1)发射机调到对频状态
2)接收机通电,长安SET键,灯闪硕进入对频状态,灯熄灭,对频成功!
那么如何对频呢?
一般流传的方法是:先摁住遥控器上的SET按钮,打开遥控器电源开关,遥控器上LED灯变红色并闪亮;再摁住接收器上LINK 按钮并打开接收电源开关,接收和遥控器的LED灯变绿并常亮。则对频成功。
1.4 模块线的连接
1.5 遥控器通道, tempup1, tempup2, tempup3 - - - 等值的测量范围,如图所示
二、程序开发
程序链接:
https://download.csdn.net/download/qq_37788383/11887785
2.1 主函数程序
#include "stm32f10x.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "wlfy.h"
extern u32 tempup1; //通道 1 捕获总高电平的时间
extern u32 tempup2; //通道 2 捕获总高电平的时间
extern u32 tempup3; //通道 3 捕获总高电平的时间
extern u32 tempup4; //通道 4 捕获总高电平的时间
extern u32 tempup5; //通道 5 捕获总高电平的时间
extern u32 tempup6; //通道 6 捕获总高电平的时间
int main(void)
{
delay_init(); //延时函数初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
TIM4_Cap_Init(0xffff,72-1);
TIM5_Cap_Init(0xffff,72-1);
uart_init(9600);
while(1)
{
printf("tempup 1 is %d rn",tempup1);
printf("tempup 2 is %d rn",tempup2);
printf("tempup 3 is %d rn",tempup3);
printf("tempup 4 is %d rn",tempup4);
printf("tempup 5 is %d rn",tempup5);
printf("tempup 6 is %d rn",tempup6);
printf("rn");
printf("rn");
printf("rn");
printf("rn");
delay_ms(2000);
}
}
2.2 遥控器 通信程序
关于遥控器到底如何控制你要控制的东西,根据tempup1、tempup2、tempup3 - - -的值,自己另行编程序
.h头文件
#include "sys.h"
void TIM4_Cap_Init(u16 arr, u16 psc);
void TIM5_Cap_Init(u16 arr, u16 psc);
上一篇:BD2/GPS 双模接收机模块STM32F103x开发
下一篇:GY-273 三轴电子指南针STM32F1x开发
推荐阅读最新更新时间:2024-11-11 14:38
设计资源 培训 开发板 精华推荐
- 使用 Silicon Labs 的 Si2704 的参考设计
- 基于 INA250A4 传感器板的 i.MX 应用案例研究中的电流测量
- USBI2CCLICK,基于 MCP2221 USB 2.0 至 I2C/UART 协议转换器的评估套件
- 2.9寸超薄长待机ESP32全0805封装电子墨水屏
- 红外遥控报警器(原理图+PCB图+程序+说明文档).rar
- 使用 ROHM Semiconductor 的 BD9A100MUV-E2 的参考设计
- #第六届立创电赛#DIY数码灯
- 使用 ROHM Semiconductor 的 BD46482 的参考设计
- 使用 ON Semiconductor 的 TN7D51 的参考设计
- 奔腾剃须刀改磷酸铁锂电池供电 XT2059 充电