为了拯救米仔做功课时越来越低的脑袋,打算做一个距离测试设备戴在她头上。如果离书本太近就滴滴叫。
做原型比较顺利,买来的测距模块精度也不错。画了一个简单的板子就打样了。掉链子的地方却发生在芯片上。
为了方便用了最熟悉的ATMEGA328P,但是发现arduino的bootloader烧不进去。总是提示stk500_initialize(): (b) protocol error, expect=0x10, resp=0x01这类错误。
我是用一个arduino当ISP往328P里面烧,这个步骤几年前就搞过,没有发生过问题,怎么现在不行了?
于是把自己的各种小开发板来一个个的测,发现都无法烧录bootloader了。折腾了好几天,想想唯一不同的就是用的IDE环境是最新1.8.9。于是上官网去下了个1.16.13试试。虽然这个老版本第一次烧录的时候也会报错,但是第二次就成功了。
看来官方确实修改了什么地方的代码,感觉是让验证的步骤更严格了吧。
网友评论