这其实是一个无意间出现的Bug,本来EK-TM4C123开发板上是16M的晶振,我突然想到假如我把这个晶振设置为8M,系统时钟会变的怎么样呢?于是把SYSCTL_XTAL_16MHZ修改为SYSCTL_XTAL_8MHZ,顺利的编译,没有问题,编译器是不会知道你板子上实际是8M晶振的,点击Debug全速运行,咦,板子怎么没有反应了。退出debug,重新进行Debug,结果出现了提示:
随即闪退,出现了下面的提示。
再次修改为SYSCTL_XTAL_16MHZ也进不去仿真了,莫非只能删除工程,重新建工程吗?
这时候我想起了修改配置文件试试,打开.ccxml文件
重新选择仿真器和芯片,点击保存配置
点击Debug重新进入仿真,又开始全速运行了。
===============================================
因此有时候出现莫名其妙的错误的时候,很可能就是一个小问题导致的。
疑问:编译器是如何检测到实际外部晶振不是8M,而是16M的呢?
Susan Yang:
谢谢您的分享!
关于这个错误,我们是有一个专门的wiki介绍的,您可以参考一下
software-dl.ti.com/…/troubleshooting-data_verification_errors.html