最近在做BLDC无传感器控制器,用的microchip的DSPIC30F4011 16位单片机,焊了一个核心板。目前主流的烧写工具是pickit3,有钱的用ICD,基本也是公司给配的。
当天买官方的烧写器,发现两个月前出了一款PICKIT4,价格和pickit3一样¥300,看了一下pickit4的手册,外观和功能都比3要好很多,于是直接买了pickit4。
顺便一说,pickit4需要高版本的MPLAB X IDE(4.15以上),不然识别不了,毕竟是新设备。
今天测试
pickit 4 仿真器,发现连不上在线,报 Reception on endpoint 129 failed,get device ID
faild
之类的错误。还会提示烧录器速度过快,调低速度后还是报获取ID失败。看了一下配置,应该是板子和烧录器的电源不共地造成的,参考点平不同。解决方法是烧录器设置里,把烧录器供电打开,使用烧录器的电源给板子供电,不要独立供电!pickit3倒是都可以。
具体步骤见下:
第一步:文件-》项目属性打开
第二步:选择pickit4
第三步:选项卡选择power,第一个打钩,从仿真器取电,目标电压按照单片机选择。
顺带一提,这个电压值不只是供电电压,最后也会作为仿真器的参考点平,用来通信,某些山寨仿真器的电平值是固化的,为了兼容5V和3.3V单片机,通常会把点平设成4V多的常电。这种情况下单片机可以工作,但是参考点平就乱了,需要自己手动看运气能不能填对。
第四步:可以烧写了。可以看到烧写器提示供5V电,烧写完成。
注意:烧写的时候板子不要独立供电,也不需要独立供电,PICKIT4会给过5V常电。否则会影响通信,报获取的ID值非法。
以上,希望对大家有所帮助。