用si4438做无线收发,首先确认spi有没有问题,没问题可以做下一步,读个芯片的寄存器,比如说读0x01和0x10看看能不能读成功,读出来带有38等字样的代表成功,能读成功基本上代表spi是没有问题的。

接着是配置si4438,配置程序是别人给的,或者wds生成,只要没问题都ok,关键是在初始化流程上,在初始化流程上面犯了以下错误:

1、因为是系统是ucos,所以新建了一个任务,但是出现了问题后来发现是内存空间不足,在去掉task任务之后就不会出现指针跑飞跑到堆栈外的问题。

2、少了BSP_IntVectSet这句会出错。因为少了这一句所以中断进不去,得不出数据。

网上说使用uC/OS编写中断函数和使用STM32硬件函数库编写中断函数是不同的,推荐使用uC/OS提供的函数编写中断。

3、在rf_init中,    
        ENABLE_RF_CHIP();         // 使能射频芯片
     
         OSTimeDly(300);

ENABLE_RF_INT();
在初始化rf_init中,使能射频完以后,ostimedly的300延时是必须的,没有则读不出来数据。使能射频芯片后的300ms以后才能开中断,这个尤为重要。

4、还有一点要值得注意的是,关闭射频和使能射频芯片中间也要有一个时间,具体2ms就可以了。

下图就是相对应读设备状态位和收回的数据。

关于si4438以往犯的一些错误相关推荐

  1. 基民读基金评级常犯四个错误

    (转)基民读基金评级常犯四个错误     2007-09-05 00:41:27 大 中 小 标签: 证券/理财 基金 纠错一:从前冠军不等于现在牛基 ·景顺内需从第1名跌到第106名 ·一二季度前3 ...

  2. Verilog与SystemVerilog编程陷阱:怎样避免101个常犯的编码错误

    这篇是计算机类的优质预售推荐>>>><Verilog与SystemVerilog编程陷阱:怎样避免101个常犯的编码错误> 编辑推荐 纠错式学习,从"陷阱 ...

  3. Python 程序员最常犯的十个错误

    常见错误1:错误地将表达式作为函数的默认参数 在Python中,我们可以为函数的某个参数设置默认值,使该参数成为可选参数.虽然这是一个很好的语言特性,但是当默认值是可变类型时,也会导致一些令人困惑的情 ...

  4. FPGA逻辑设计回顾(1)新手易犯的逻辑综合错误之always块

    前言 注:本文首发自FPGA逻辑设计回顾(1)新手易犯的逻辑综合错误之always块 本文中用到了如下的小标题: "心中有路"与综合推断 "心中无路"与无从推断 ...

  5. c语言程序框一点数字就消失,你用C语言编程时,会犯下面的错误吗?

    原标题:你用C语言编程时,会犯下面的错误吗? C编译的程序对语法检查并不像其它高级语言那么严格,这就给编程人员留下"灵活的余地",但还是由于这个灵活给程序的调试带来了许多不便,尤其 ...

  6. 我犯了一个错误,您能指出吗?

    这是我最近在项目中犯的一个错误,您能指出吗? 这个项目在数据访问方面使用了传统的Repository模式.为此,我定义了一个Repository基类,可以让每个不同的Repository继承它: pu ...

  7. Python 程序员最常犯的十个错误,作为小白的你是不是也经常犯?

    常见错误1:错误地将表达式作为函数的默认参数 在Python中,我们可以为函数的某个参数设置默认值,使该参数成为可选参数.虽然这是一个很好的语言特性,但是当默认值是可变类型时,也会导致一些令人困惑的情 ...

  8. 用了mysql报oracle错误_Oracle认证:PHP开发者常犯的MySQL错误

    [IT168技术]为了方便广大考生更好的复习,综合整理提供了Oracle认证:PHP开发者常犯的MySQL错误,以供各位考生考试复习参考,希望对考生复习有所帮助. PHP开发者常犯的10个MySQL错 ...

  9. CTO 太水!犯了低级错误,还删除代码隐藏证据!

    转自:InfoQ   刘志勇.Tina 从大公司聘请来的 CTO 太水,犯了个低级错误,事后还故意删除代码隐藏证据. 上周末,黑客组织 DDoSecrets 利用 SQL 注入漏洞,入侵了极右翼社交媒 ...

  10. 组装电脑最容易犯的五大错误

     组装电脑最容易犯的五大错误 (1)主板篇 大部分JS都说华硕主板好,大品牌的话能差吗?(能说出这话的人就可以证明他没有能耐,只能信品牌.) 我可以告诉你们,如果大品牌真 的全部都这么好,为什么其他品 ...

最新文章

  1. python中modify是什么意思_python – Django中的override_settings和modify_settings有什么区别?...
  2. 牛客 - 汉诺塔(思维+dp)
  3. hive UDF函数
  4. Catlyst 6509告警信息--把trunk口配置成access
  5. SpringBoot(10)
  6. 2020中科院sci分区查询_2020年中科院分区(基础版)更新
  7. 远离“数据呆” 对业务的理解和思考永远高于分析技术的选择
  8. python 识别图形验证码_Python图片验证码降噪处理实例!此乃识别验证码神技!...
  9. 一个项目的简单开发流程——需求、数据库、编码
  10. tomcat利用setenv对内存的限制和docker中tomcat内存的优雅配置
  11. Visual Studio 2012 RC 发布
  12. Win7 Windows照片查看器无法显示此图片,因为计算机上的可用内存可能不足
  13. 「沙龙回顾」从技术演进角度看猫眼电影
  14. 超简单的用PS(PhotoShop)转换png为ico,简单的制作favicon.ico,使用画图工具转换PNG为ICO图标,不用下什么插件软件什么玩意儿的
  15. (转)wuauclt.exe病毒解决方案
  16. 微信小程序----Grid(九宫格)(flex实现九宫格布局)
  17. springboot整合Hystrix 熔断器
  18. Deferred Shading VS Deferred Lighting
  19. 【unityshader小实例】 轮廓外发光(光晕)
  20. 【图像分类案例】(10) Vision Transformer 动物图像三分类,附Pytorch完整代码

热门文章

  1. 三菱凌云3故障代码_三菱故障代码一览表
  2. 车机没有carlife可以自己下载吗_雷克萨斯NX 原车carlife转换无线carplay
  3. 【Chapter 1】什么是软件架构
  4. 恒定湿热试验条件及标准-环境试验中的湿热试验报告
  5. 测试小故事82:好好说话
  6. 苹果手机搭建php服务器,给自己搭建iPhone Installer软件源
  7. 【笔记】openwrt - Dnsmasq替换SmartDns+ADguardHome、koolproxy
  8. ios 测试证书配置
  9. HART协议学习记录
  10. 广东省地方税务局电子办税服务厅--卡在注册ca证书界面的处理