MAPLAB IDE编译的HEX,用MAPLAB X IPE烧写时代码没响应。

一、现象

       使用MAPLAB X IDE附带的MAPLAB X IPE工具烧写程序,直接将工程编译生成的hex文件拿去烧写,可以大大的提高生产效率,避免了传统使用工程直接烧写要打开工程加载文件的繁琐。由于老版工具 MAPLAB IDE没有对应的烧写hex文件的方式,所以直接将hex移到MAPLAB X IPE烧写。在烧写过程中发现代码烧写进去但跑不起来的问题,然而用MAPLAB IDE工程直接烧写代码能够正常运行。

二、解决方法

      经分析得知PIC单片机的时钟、看门狗等配置位在MAPLAB IDE中是集成在工具栏选项里并没有生成代码,而MAPLAB X IDE则是将这些配置位生成代码作为预编译形式如下图所示。

    于是便将这部分配置位的代码移到MAPLAB IDE里编译生成hex,然后拿去MAPLAB X IPE烧写,发现烧完后代码是能正常运行的。

三、总结

    MAPLAB IDE工程在没有写配置位代码的情况下并没有将其编进hex里,所以烧hex时,时钟等并没有开起来,单片机运行失败。

猜你喜欢

转载自blog.csdn.net/wanruiou/article/details/109627509