Kendryte K210 关于CTM2210LB的通讯

13 篇文章 24 订阅 ¥39.90 ¥99.00
本文介绍了使用 Kendryte K210 芯片与 CTM2210LB 模块进行无线开关功能的通信实现。通过设置50us定时器中断,监测IO电平变化来解析EV1527协议。强调在中断中使用volatile关键字的重要性,以确保变量及时更新,避免潜在问题。分享了作者在项目中遇到的教训,并提供了相关博客链接作为参考。
摘要由CSDN通过智能技术生成

我们目前的项目里面有无线开关这么一个功能,那么我们就用到CTM2210LB(接收)和CTM2150L(发送)的模块,接收模块与K210的IO连接

默认CTM2210LB与CTM2150L就可以配对,如果需要修改其他的,需要用烧录器去修改,这里就不详细说如何修改了,因为我自己都没修改过

然后CTM2210LB是标准的EV1527协议,需要使用IO去解

之前想得比较复杂,想着用定时器加外部中断去做,但是仔细想想以及参考了各位博主的资料,最后决定只用定时器就可以搞定

原理其实很简单,就是定一个50us的定时器进去中断,然后查询IO的高低电平,如果为低电平就+1,然后去计算时间

以我这个为例子,低电平的时间:

bit0:500us左右

bit1:200us左右

同步码:6ms左右

这里要注意一点,只要是在中断里面的变量,都需要加volatile,包括修改寄存器之类的,都需要加,不要问我为什么,我不会告诉你们因为没加这个搞了我好几天,后面还是专业大神提醒

其实是这样的,加上volatile之后你的值会及时得到更新,因为读取值是在缓存的,有些时候没及时更新&#x

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

smile_5me

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值