关于mega2560使用irremote库的头文件修改

买了块mega2560的板子,使用irremote库 https://github.com/shirriff/Arduino-IRremote 做发射信号测试,之前用uno能实现对机顶盒的控制了,可是切换到2560上就根本没有发射脉冲,(用收音机测试了一下红外发射头,没有嘟嘟的声音,比较土的办法),于是看了一下作者的wiki,发现可能是IRremoteInt.h里面没有针对 AVR_ATmega2560 型号设备设施PWM端口号,而uno则是默认使用了pin3,不过发现有1280的定义使用的是pin9,于是按照下面有个网友的建议,在IRremoteInt.h的205行,加上AVR_ATmega2560的支持,使用pin9端口





[code=cpp]#elif defined(AVR_ATmega1280) || defined(AVR_ATmega2560)[/code]



恢复正常使用!!!



PS:

之前说的发射到歌华机顶盒代码执行错误的问题(http://www.geek-workshop.com/for ... &extra=page%3D1),其实是调用send的时候bits数设置错了,歌华使用rc6协议,nbits为32irsend.sendRC6(0x8010A620, 32)复制代码
via - 极客工坊

标签: Arduino教程