NEC红外解码
NEC红外解码 只用MCU的一个普通IO(不具有中断功能) 和一个计时器如何解码? 补充:不能用软件延时查询 设置 计时器中断 中断中查询。 NEC的我刚用430完成了一个,算法正好符合你的要求我的算法是:每隔440us扫描一次,检测数据并读取
程序用了状态机机制,state=0,等待数据的到来 =1,读取引导码,并作出一定判断,非正确引导码,则设state = 0,继续等待数据的到来,正确,则设state=2,进入读取数据状态,数据读完又回到state=0,等待数据。
读取数据的算法:先等待低电平的到来,确认一位数据的到来,在等待440*2或440*3us后是否有低电平,若有,则这位数据是0,又因现在是低电平,已经确定即将是新一位的数据,则直接进入下一位读取,否则440*3us后依然是高电平,则是数据1,重新等低电平,然后继续下一位。
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4367121&bbs_page_no=1&search_mode=3&search_text=Engin&bbs_id=9999 这个效率不高吧! 主循环读IO电平,定时器中断计时
页:
[1]