Không có mô tả

dropLin 67cabbfcdd V11 优化射频驱动,`RF.c`的`RF_TxMode`、`RF_RxMode`增加延时 6 tháng trước cách đây
STM32F10x_FWLib 92f9ba041e first commit 11 tháng trước cách đây
app 92f9ba041e first commit 11 tháng trước cách đây
core 92f9ba041e first commit 11 tháng trước cách đây
keil_v5 24dfc24023 修复循环发送 8 tháng trước cách đây
peripheral 92f9ba041e first commit 11 tháng trước cách đây
project 24dfc24023 修复循环发送 8 tháng trước cách đây
radio 67cabbfcdd V11 优化射频驱动,`RF.c`的`RF_TxMode`、`RF_RxMode`增加延时 6 tháng trước cách đây
.gitignore 92f9ba041e first commit 11 tháng trước cách đây
README.md 67cabbfcdd V11 优化射频驱动,`RF.c`的`RF_TxMode`、`RF_RxMode`增加延时 6 tháng trước cách đây
keilkilll.bat 92f9ba041e first commit 11 tháng trước cách đây

README.md

一、项目名称

adapterBoardDriver

二、产品类型

演示板

三、应用场景

无线数据收发、测试通讯距离

四、传感器及驱动接口

五、按键

6个

  1. S1按键可以移动光标(选择的项会反显)向上选择设置项,或向上设置数值,可以循环移动选择
  2. S2按键可以返回上一个界面
  3. S3按键可以移动光标(选择的项会反显)向下选择设置项,或向上设置数值,可以循环移动选择
  4. S4按键功能待定
  5. S5按键,功能1:开机界面时,按下进入功能选择界面。功能2:确定选择项目。功能3:退出设置状态

六、LED指示灯

2个

  1. D5蓝色LED,发送成功指示灯灯
  2. D4红色LED,接收成功指示灯灯

七、显示器类型及驱动接口

深圳市晶联讯电子的液晶模块JLX19296G-382-PN 该液晶模块支持4线SPI串行接口和IIC接口,本项目使用IIC接口驱动,显示大小192*96 点阵

八、功耗要求

九、供电方式

支持三种供电

  1. USB的MICRO-B插头供电
  2. 3*5号电池供电
  3. 2pin的PH座子供电,注意电压不能超过5V

十一、尺寸

87mm*131.5mm

十二、射频频段

433MHz、433MHz、490MHz、868MHz、915MHz

十三、射频芯片方案

PAN3020

十四、主控芯片方案

AT32F413RCT7该MCU与STM32F103RCT6软硬件兼容

十五、认证要求

十六、外部连接接口

十七、编译器

MDK-ARM Standard Version: 5.14.0.0

十八、编程语言

C99标准

十九、SDK版本

STM32F10x_StdPeriph_Lib_V3.5.0

二十、功能描述

数据包收发测试

发送测试

接收测试

功能参数设置

二十一、备注说明

射频驱动移植

  1. 需要将文件夹radio中的API全部移植,与硬件相关的已全部定义在radio/myRadio_gpio.c中,若目标平台也是C语言环境,将文件夹radio中的文件拷贝过来后,只需对应的修改radio/myRadio_gpio.c文件中的GPIO定义既可,由于myRadio_gpio.c中用到的GPIO是宏定义在project/board.h,所以也需要将radio/board.h中的定义移植过来。如果MCU平台也是相近的,只需修改project/board.h中对应的宏定义即可。
  2. 本公司为了统一demo程序,将射频相关的操作重新定义了一层,详见radio/myRadio.c,无线应用开发,可以参考借鉴。

射频芯片驱动IO口说明

无线应用开发注意事项

无线频率

  1. 避免使用中心频率为射频芯片使用的晶体频率整数倍的,比如晶体频率为32MHz,就需要避免使用448MHz的中心频点

驱动调试

  1. 首先保证SPI通讯正常,具体SPI时序需根据射频芯片要求设置,可通过示波器或者逻辑分析仪进行硬件分析
  2. SPI通讯正常后,进一步调试查看寄存器操作,读写寄存器,若能正常操作,基本可判定移植成功了

通讯距离

影响无线传输距离的因素

  1. 无线电频谱,包括使用的无线频段和无线波特率
  2. 发射功率
  3. 天线增益,不同增益的天线对无线信号的接收效果影响很大
  4. 路径损耗,主要是包括无线使用的周围环境,比如楼宇、树木山峰遮挡
  5. 其他的无线信号干扰

二十二、软件开发

template Version

V04

工程文件架构

..\adapterBoardDriver_xxxxxxxxxxxxxxx_Vxx
├──app \\常用应用模块封装
|  └──
├──core    \\MCU内核文件
|  └──
├──STM32F10x_FWLib \\MCU官方库函数
   └──
├──image   \\md文件显示用的图片
|  └──
├──keil_v5 \\keil编译器工程文件,包含编译生成的HEX文件
|  └──Object  \\编译生成的HEX文件在此文件夹
├──peripheral  \\项目用到的MCU外设
|  └──
├──project \\项目的主函数和GPIO定义包含文件
|  └──
├──radio   \\射频底层驱动文件
|  ├──myRadio_gpio.c  \\射频驱动接口硬件初始化
|  └──myRadio.c   \\为无线应用通用封装API

无线应用通用封装API-radio/myRadio.c

  1. 初始化-void myRadio_init(int agr0, void *agr1_ptr) 射频芯片驱动IO口初始化-myRadio_gpio_init() 射频基本参数初始化
  2. 射频运行底层执行API-void myRadio_process(void) 放在while循环中执行
  3. 射频进入休眠API-void myRadio_abort(void)
  4. 获取无线中心频率-uint32_t myRadio_getFrequency(void)
  5. 设置无线中心频率-void myRadio_setFrequency(uint32_t freq)
  6. 获取发射功率-int8_t myRadio_getTxPower(void)
  7. 设置发射功率-void myRadio_setTxPower(int8_t power)
  8. 获取无线波特率-uint8_t myRadio_getBaudrate(void)
  9. 设置无线波特率-void myRadio_setBaudrate(uint8_t br)
  10. 进入数据包发射模式-void myRadio_transmit(rfTxPacket_ts *packet)
  11. 进入数据包接收模式-void myRadio_receiver(void)
  12. 无线特殊模式功能-void myRadio_setCtrl(controlMode_te mode, uint32_t value) 单载波发射功能,预留 进入direct模式,预留 连续调制波,预留
  13. 射频中断回调函数void myRadio_gpioCallback(uint8_t index) 外部中断检测定义在myRadio_gpio.c
  14. 其他,官方未定义,属于第三方定义的常用API,不同厂家的射频方案不一定都能用

DAP仿真器配置

单片机型号:STM32F103RC

  • options -> Debug -> Setting -> Debug -> Connect &Reset Options -> Connect=Under Reset -> Reset=VECTRESET

版本更新

V09

  • 使用tick延时函数

V10

2024年4月12日

  • 射频初始化增加版本读取

V11

2024年11月27日

  • 优化射频驱动,RF.cRF_TxModeRF_RxMode增加延时

二十三、免责说明

1、本工程驱动软件只提供做演示项目使用,未经过大批量项目验证,客户需谨慎使用,如果使用在正式项目中引发的所有问题,本司概不负责。使用过程若发现任何问题,可及时与本司相关人员联系。 2、本工程所有文件可以用于商业性项目移植,无需向本司申请。