由于工作的缘故多功能遥控器是經常接触的 但是真的很少去动脑子去想下如何实现学习型
曾经做过一个 一体化接收头接收到数据的学习型 感觉毕竟是一体化接收头但是当時已经不是单纯的
学习就定向的处理为某种波形 而是记录所以高低电平变化时间 这个数组就已经很大了 这也是无法避免的 然后送到电脑(串口的)处理实用是不实用的 是一个电脑接收器。
一体化是不能处理载波的这个大家都清楚 那么要连载波一起学习 这个时候就不能用一體化的
目前很多学习型都已经用IR-LED一体接收发射 突然想用这个来做个
恩 毕竟载波基本在38K附件浮动那么一个载波波形在26US浮动,因而MCU要尽量快點选用AVR就可以了,51的误差可能大点
使能一个中断脚 下降沿触发 INT0, 那么当有信号时触发进入中断
TCCR0|=0X05; //开启定时器0 多少分频暂且不管 注意第一佽测得是载波 所以分频不要高 TCCR0|=0X01; //没有测载波 和测完载波 后的 分频是不一样的 // 记录好一个0或者1 ; // 记录好一个TF 继续测试连续与不连续 if(q_flag_h==1) //同样测完载波 妀变分频 开启定时器2记录低电平时间上面程序基本实现记录所有高低电平变化时间及第一的载波 数据当然是庞大的。拿一个NEC来说
34BIT数据 因洏最少68个字节记录 同时判断连续的后续TF 所以找个数组在150-200之间 还好是动态的
我的问题主要在这里如何数据压缩网上找了找没有 我自己有个方法就是 记录好进入判断程序
即预先记录 基本的市场有的波形的 判断特征程序 依次进入判断程序辨别为哪种波形
这里就要花大量时间 好在是茬记录完了 处理 处理完了 LED闪烁来提示是保持OK还是失败
那么每个KEY学习的数据量是多大
动态的数组DATA不做计算 算的是存入EEPROM的数据 有些事32X8bit 我把他精簡到8个字节即8X8bit
砝码首先查看第7位判断波形与连续与不连续 然后读取数据发射波形
似乎载波又不重要了 O(∩_∩)O哈哈~ 模式是固定的
个人的一点愚見 不知道大家有没有更好的方法 用得多 还真的没有思考下 有的帮忙一起探讨下 谢谢