jicheng0622

【原创】飞思卡尔免费开发环境KDS调试时显示外设寄存器内容

1
阅读(2090) 评论(3)

    飞思卡尔免费的开发环境Kinetis Design Studio(以下内容简称KDS)已经出来不短时间了,目前已经最新版本为3.0了(啥?还不知道KDS是啥呢?low了,那赶紧先去飞思卡尔官网去瞅瞅KDS3.0吧),到现在已经有不少用户在使用开发了。可能之前使用过飞思卡尔芯片开发产品的博友会对飞思卡尔自己的开发环境Codewarrior比较熟悉,庆幸的是KDS与Codewarrior10.x的界面都是基于Eclipse的(现在Eclipse比较火啊,除了第三方专门做编译器的厂家外,貌似半导体厂商做自己IDE的都开始倾向于选择Eclipse呢比如TI的CCS4.0以上,毕竟免费而且界面也比较炫,不过Eclipse还是比较耗电脑资源的),所以从Codewarrior10.x迁移到KDS上还是会省不少事的,呵呵。

    不过怎么说呢,一个是KDS相对来说是比较新的,二是毕竟是免费的工具,虽然我觉着KDS已经做的不错了(KDS编译器用的GCC,调试工具用的GDB组件),但是我们真的不能那它去跟IAR和Keil之类的专门的第三方编译器去比(咱们国内经常有这种固有的惯性思维),毕竟这些工具是专业的商业公司开发和维护,且历经多年的沉淀积累,免费是有所牺牲的,这点在所难免啊,哈哈。

    对于KDS使用的新手来说,编译过程几乎没有什么变化,但是在调试可能立刻会有人发现其与Codewarrior10.x之间的不同,今儿个我就说说我们平时开发调试芯片时经常需要用到的芯片内部外设寄存器查看窗口,我们在使用KDS调试时会发现在Registers窗口中只能看到几个通用寄存器R0~R15及ARM内核相关的几个特殊寄存器而找不到所选MCU的外设寄存器,如下图所示,所以下面我就教教大家怎么把外设寄存器给它调出来,走着,开整:

image

1. 先确保进入调试环境即右上角选中Debug(C/C++窗口是平时编程窗口),然后点击菜单栏“Windows->ShowView->Other View”,选择Debug->EmbSys Registers,双击即可把该窗口添加到调试环境下;

image

2. 做完上述操作之后,可能有些博友看到EmbSys Registers窗口是有了,但是里面却什么都没有,遇到这种情况则需要仍保持在调试环境下,电机菜单栏“Window->Preferences->C/C++->Debug->EmbSys Register”,在里面以此选择我们正在调试的芯片,这里我以我手中的KL33为例,选择如下图1所示,然后点击OK即可看到在EmbSys register中已经显示出芯片内部所有的寄存器了,而且还能显示寄存器的地址和复位后的默认值,很强大吧,不过别高兴的太早,呵呵,为啥,且看下步分解(哈哈,俺喜欢卖点关子,这里我要不要找块醒木敲一下桌子找找讲评书的赶脚呢):

image

image

3. 续接上步,我们在上一步把芯片内部外设寄存器都显示出来后,点击运行再暂停会发现想看的寄存期值还是没有更新,这是因为EmbSys Register这个工具默认是每个寄存器都不更新的(这个工具是飞思卡尔某个大牛做的,我猜测其意图应该是不想每次暂停都通过调试器把所有寄存器值都读出来,虽然这样做也不难),我们具体想看那个寄存器只需要双击每个寄存器名前面带3个品字形小点的图标即可打开该寄存器的更新功能同时这个小图标会由灰色变成绿色以示工作中如下图所示,哈哈,虽然这几步配置下来有点小麻烦(只是第一次这样配置以后就不用管了),但是效果还是不错的,这个小工具还是挺有意思的,具体可以亲身体验一下。

image

    好了,本篇文章就到此结束了,说的应该够明白了,不过这“广告”做的再好不如实际体验一番,有兴趣的博友可以下载下来试一试吧,有什么心得可以博客下面留言交流,呵呵。撤了,未完待续~

  1. 很不错!!!!

  2. 学习了一下,谢谢你

  3. 这个工具挺实用,学习了