1527编码协议_EV1527解码,我也贡献一个,抗干扰,自适应.....

EV1527解码,我也贡献一个,抗干扰,自适应, 经测试比买的解码成功率高,具体多少没计算,通过示波器看到;

/*

中断处理函数 、每次中断查询一下电平;

手册16个CLK(一个数据位)的时间是

最大4.24ms(4240us)/16= 265us; 最小230us/16=14us; 分频时间是4us;

同步头高电平至少4个时钟;识别同步头分2步

第一步高电平时间大于等于40us,小于265*4*1.2 = 1060*1.2=1270us;

第二步 低电平时间是高电平时间的31倍,留20%余量26倍-36倍之间;

计算电平时间 (高电平时间 + 低电平时间) / 32 ;

数据宽时间要在这个数值的 正负20% 之间

*/

INTERRUPT_HANDLER(EXTI_PORTA_IRQHandler, 3)

{

static U16 data_h_time;  //

static U16 data_l_time;  //

static U16  bit_time_min;

static U16  bit_time_max;

static U8  decode_KEY;

static U32 decode_ID;

U16 temp;

static U8  ev1527_rx_last;

U16 ev1527_new_time;

disableInterrupts();

ev1527_new_time  = (uint16_t)TIM2->CNTRH << 8;

ev1527_new_time |= (uint16_t)(TIM2->CNTRL);

if(EV1527_RX)  //接收编码高电平

{

if(ev1527_rx_last==0)   //上次是低电平,有跳变

{

EV1527_COUNT_CLEAR;

if(ev1527_decode_state>sync_h)

<
  • 3
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值