Soft_SI4463 记录
2019.09.07~2019.10.14 研究si4463的一主多从半双工跳频通信

前期准备工作

1、买的网上si4463模块,卖家提供demo程序。可实现简单的一对一发送接收。
2、模块标称加上外部弹簧天线后,传输距离可达2km。实测在墙体遮挡较少时,确实能达到1km以上的传输距离。
3、准备si4463的数据手册(芯科官网或者卖家提供的资料包都有),si446x_datasheet,si446x_API。这两个芯科没有提供中文版本,si446x_datasheet可以参考官方的si4438_datasheet_cn,si446x_API可以参考百度文库里的si446x_API_cn,机翻水平,凑合能看。

需要实现的功能

1、简单的一对一收发。demo程序可实现。
2、一主多从跳频接收。主机只做侦听,跳频接收多台从机的在各自信道上发出的数据包。
3、载波侦听功能。当多台从机在一个信道上发送数据时,载波侦听可以解决数据碰撞的问题。即在当前信道上发送数据包之前,先进行载波侦听,如果当前信道上没有设备在发送数据包,本机即可发送;如果当前信道上有设备在发送数据包,采用一定的处理机制,如简单的延时避退算法,以避免数据碰撞。
4、一主一从半双工通信。主机发送一个数据包给从机,从机在接收到数据包之后,再回一个数据包给主机。
5、一主多从半双工跳频通信。采用频分复用,主机分别与信道0~N上的从机进行半双工通信。

实验过程

1、demo程序实验通过。

2、根据手册资料,si4463支持跳频接收。
si4463跳频接收分为两种:手动跳频和自动跳频。可参考https://blog.csdn.net/byteman_wang/article/details/37610355的介绍
手动跳频可通过RX_HOP或者STAR_RX,自动跳频采用HOP表的方式,通过设定跳频条件,跳频条目数以及表中的跳频条目。详细内容可参考si446x_datasheet中5.3.1.2. Automatic RX Hopping and Hop Table
3、载波侦听可参考https://blog.csdn.net/blog_xu/article/details/80597028
实验过程中用了前导码检测

uint8_t si4463_detect_preamble( uint8_t *pRead )
{uint8_t l_Cmd[ 4 ] = { 0 };l_Cmd[0] = GET_INT_STATUS;        l_Cmd[1] = 0xFB;l_Cmd[2] = 0x00;l_Cmd[3] = 0xFF;SI446x_Write_Cmds( l_Cmd, 4 );       SI446x_Read_Response( pRead, 9 );   if (pRead[4] & 0x02) {//If set, PREAMBLE_DETECT interrupt is pendingreturn 1;}return 0;
}

实验过程中遇到的问题

1、SPI之前没了解过。补课https://www.analog.com/media/cn/analog-dialogue/volume-52/number-3/introduction-to-spi-interface_cn.pdf。这女硕士确实讲的清楚明白。

2、demo程序中,有个头文件#include “radio_config_Si4463.h”。这个是由芯科配套的WDS开发软件生成,根据个人需求可以生成相应的头文件,加到自己的工程里,即可。
可参考http://www.ebyte.com/new-view-info.aspx?id=237
3、在逻辑分析仪解析si4463的SPI时,发现问题。在只有一对一收发的时候,数据包发送中断跟接收中断基本同步,差值只有307.4us。但是一旦在接收完之后再发送这种操作,主机IRQ跟从机IRQ就不同步了。重新配置RF_PKT_LEN寄存器可解决。

SI4463软件开发记录相关推荐

  1. 森笔记app软件 开发记录

    软件介绍下载 该软件是本人学习安卓开发而创作的一款通知提醒.笔记创作的app,笔记可以选择背景图片,更改字体颜色等特色功能. 该软件下载地址https://senzhijing.github.io/x ...

  2. 寒假小软件开发记录02--布局

    软件的布局,对activity_main.xml文件进行编辑,添加ImageView和EditText分别对应图片区域和文本框内容. 我使用的是android studio,添加进去后切换到可视化布局 ...

  3. 图像处理软件开发记录(六) 图像特效(浮雕、怀旧)

    专栏地址:http://blog.csdn.net/column/details/imagep.html 本篇文章主要记录一下图像处理软件中的图像特效(浮雕.怀旧)的实现过程. 图像浮雕效果 浮雕的算 ...

  4. RISCV-ISA软件开发记录

    五代 RISC 处理器 C906 C910: 1. RISCV处理器的工作状态机 RISCV 处理器工作时,有三种大的工作场景,分别是常态工作时,低功耗工作时以及调试工作时.当转换条件满足时,不同的状 ...

  5. 软件开发心得点滴记录

    软件开发心得点滴记录 一见 创建日期:2013/6/27 1. 前言 自从2002年大学毕业后一直沉浸于软件开发之路,平时喜欢思考和归纳,时常会产生一点心得和想法,回想起来是一笔宝贵的财富,只可惜陆陆 ...

  6. 五.开发记录之ubuntu系统安装各个软件

    专栏系列文章如下: 一.开发记录之AHRS.惯导传感器SBG-Ellipse-N传感器配置和使用_goldqiu的博客-CSDN博客_sbg传感器数据格式 二.开发记录之派勤工控机远程使用和ubunt ...

  7. TCL电子软件开发生活记录(更新中)

    一.惠州实习篇: 大致情况介绍: 黑龙江人,签约深圳软件开发工程师7月份正式工作,3.7在惠州海外设计中心软件产品2组实习,实习岗统一为实习生,没有具体的职位,不过工作内容是将来签约的方向.一般是三个 ...

  8. 三.开发记录之移动硬盘装ubuntu系统的配置、环境、各类软件安装和备份等

    专栏系列文章如下: 一.开发记录之AHRS.惯导传感器SBG-Ellipse-N传感器配置和使用_goldqiu的博客-CSDN博客 二.开发记录之派勤工控机远程使用和ubuntu和ROS环境配置_g ...

  9. 软件开发架构模式浅谈:一些思考和实践记录

    一 背景和问题 我个人平时会比较慎用"架构"这个词 一方面是觉得业界有很多架构大师和架构模式,而我的认知和实践有限: 另一方面是因为这个词看着挺高大上.有点务虚,如果不结合实际场景 ...

  10. 今天我要坚持每天写博客,记录我每天软件开发学习情况

    自从高中开始我想学习软件开发,因为种种原因,种种借口,今天学一点,然后等了几天又没有学习了,走了好多的弯路,我也知道还不知道怎么学习,哪怕我今年都33岁了,我心里还有一点梦想,我想用软件开发做为起步, ...

最新文章

  1. 使用vmware 报错 解决方法
  2. CvArr、Mat、CvMat、IplImage、BYTE转换(总结而来)
  3. vue Draggable实现拖动改变顺序
  4. redis数据结构对象
  5. ※归并排序(merge sort)
  6. c语言 椭圆周长,高中数学公式大全
  7. IT职业技能图谱:IT工程师学习路线
  8. 相敬如宾 你将获得更多敬重
  9. va start linux头文件,va_start/va_end函数-linux
  10. RS232转RS485的接口原理图(附图)
  11. TZC Python编程入门教程 ————题解
  12. CAN 总线的常用拓扑
  13. 毕设:基于CNN卷积神经网络的猫狗识别、狗品种识别(Tensorflow、Keras、Kaggle竞赛)
  14. linux下,Telnet连接输入正确的用户名和密码后,却还一直提示输用户名和密码,解决方案。
  15. Spring Data Commons 官方文档学习
  16. 最好的免费WordPress音频播放器插件
  17. 【FPGA Verilog】手把手教你实现一个DDS信号发生器
  18. 系统之家win7 32位64位iso极速旗舰版 v12.1
  19. Sql Server 快速查看表结构
  20. UnboundLocalError: local variable 'end_page' referenced before assignment

热门文章

  1. dll注册,但是对DllRegisterServer的调用失败,错误代码0x80070716
  2. 【工控入门】组态软件概念科普与基本构架描述
  3. 雨林木风YN9.9三分极速速终结版 http://www.51ylmf.cn
  4. 固体火箭发动机装药拓扑优化(观点)
  5. 保护眼睛——设置WIN7和XP 窗体、Chrome、IE网页背景颜色(zz)
  6. HTTP、HTTP2.0、SPDY、HTTPS 你应该知道的一些事
  7. 电脑爱好者 2008年第24期 12月下
  8. springboot+vue汽车4S店车辆销售维修管理系统java源码
  9. php文章重复度检测,彻底解决网站存在的内容重复度的方法
  10. 图的应用--最小生成树