查看: 2616|回复: 4

[其他] 每天解决一个问题15-1:SPI多一个字节时钟读取才正确问题

[复制链接]
  • TA的每日心情
    擦汗
    2022-3-3 09:56
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    106

    主题

    836

    帖子

    4

    金牌会员

    Rank: 6Rank: 6

    积分
    1527
    最后登录
    2023-6-12
    发表于 2015-9-8 20:19:32 | 显示全部楼层 |阅读模式
    本帖最后由 jinyi7016 于 2015-9-8 22:02 编辑

    纯个人开发经历中的经验、出错及解决,纯手打文字方式,杜绝“Ctrl+C”、“Ctrl+V”,多多支持,收藏备用。

    背景
    用Ke02读取计量芯片的电压、电流、功率、电能、频率等数据,一般情况下正常,偶有一次收到一个很大的数据,而且有时电能会是一个非常大的数据,只有电能的读取是0xffffffff,其他数据也会相应的大也只是某一个字节为0XFF。
    要是多空读一次,的话,原来错的对了,但大部分时候是错的。
    解决
    SPI用了中断,改用查询方式,除电能外,其他的数据可以读取正常,则是中断的问题。
    去掉其他所有中断,而用中断读取,仍有错。不是中断优先级的问题。
    仔细查看SPI的中断函数,发现在中断中把RX,TX都有过关,开的操作,改成让RX一至打开 后,读取 正确。
    电能读取为0xffffffff,一般发生在刚上电读取 的时候,其他没有什么改变,于是将电能读取后加判断,电能也正确了。
    延伸
    对于中断,有它的方便之处,也有它的不便之处,在开关上,协议上的处理要格外小心,否则会出很多莫名其妙的问题。
    电能的错误,就是说不要对所有的数据手册都迷信不疑,手册也有出错的时候
    我知道答案 目前已有4人回答
    回复

    使用道具 举报

    该用户从未签到

    61

    主题

    965

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    2394
    最后登录
    1970-1-1
    发表于 2015-9-9 08:30:20 | 显示全部楼层
                   
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11

    主题

    251

    帖子

    0

    高级会员

    Rank: 4

    积分
    690
    最后登录
    2016-11-3
    发表于 2015-12-11 11:16:39 | 显示全部楼层
    什么东西                 
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2016-11-4 16:56
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    8

    主题

    602

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1842
    最后登录
    2020-8-25
    发表于 2015-12-11 11:31:33 | 显示全部楼层
    手册也有出错的时候
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    264

    帖子

    0

    高级会员

    Rank: 4

    积分
    694
    最后登录
    2024-9-22
    发表于 2015-12-11 16:44:12 | 显示全部楼层
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-9-12 14:57 , Processed in 0.092845 second(s), 24 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表