这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 关于非调试模式运行的一点心得体会

共6条 1/1 1 跳转至

关于非调试模式运行的一点心得体会

菜鸟
2010-10-17 23:02:55     打赏

 

收到小开发板之后,对照论坛里的各位高手的指导,新建了一个项目,运行通过了一个点亮LED的程序。所以真的非常感谢论坛的各位前辈、兄弟们,没有你们我都不知道我自己要搞多长时间才能运行第一个哪怕是最简单的点亮LED的程序。感觉网上的资料挺少的,特别是中文的资料,比如编译环境的设置使用的详细说明,FFMC-8FX内核的讲解等。 前面的关于项目的建立,编译调试等已经有好几位高手已经做了详细的介绍,我就不再说这些了,我就说说我调试时碰到的一些问题。 小目标板上有一个三色灯(分别由P06\P63\P62控制,低电平点亮),我调的这个程序是用这三个灯按照不同的组合依次显示红、绿、蓝、黄、紫、青、白(三基色配色原理)。每种颜色显示停留的时间大概是1~2秒左右,代码在后面。 模式开关处于“D”(DUBEG)时能够正常的看到程序的运行,但模式开关处于“N”(自由运行)时却每次都只能看到红点亮,且隔了1秒钟左右会闪动一下。当时很郁闷,心想为什么不能正常运行呢,而且根据观察的现象可推测目标板的MCU在周期性的复位。仔细一想,感觉很有可能是看门狗复位。这时赶快登陆论坛,可没找到反映这个问题的……。 后面就查看《MB95F264K硬件手册》,刚开始还没找到看门狗的相关操作,仔细看了几遍才找到原来文档里称呼其为“硬件/软件监视定时器”(呵呵……,希望各位不要笑话,小弟学识太浅,感觉这款单片机确实有很多跟其他单片机不同的地方)。 文档里提到了这样一句话(文档的第168页):“硬件启动(硬件监视)时,监视定时器功能在复位后自动启动”。意思是不是看门狗定时器在硬件上电复位后就自动启动了呢?暂且认为它是,于是我又继续查看文档,里面讲到向WDTC的WTE3\WTE2\WTE1\WTE0位写入0101时可以清零监视定时器(文档的第173页),暂且理解为“喂狗”。 看到这时我赶快迫不及待的修改了我刚刚的程序,在里面加了上面提到的喂狗的操作,下载完程序后,使目标板的MCU运行在“N”(自由运行)模式,问题真的解决了!



关键词: 关于     调试     模式     行的     一点     心得体会    

菜鸟
2010-10-17 23:05:25     打赏
2楼
下面是我的一段代码:   #include"mb95200.h"   void Init (void) {    DDR0_P06 = 1;    //设置端口输出    DDR6_P62 = 1;    //设置端口输出    DDR6_P63 = 1;    //设置端口输出 }     void delay(unsigned char tim) {unsigned char i,j;        for(i=0;i<tim;i++)     {            for(j=0;j<250;j++);            WDTC=0x05;           //喂狗     } }   void main (void) {    Init ();    while(1)    {     PDR0_P06 = 0;     PDR6_P62 = 1;     PDR6_P63 = 1;     delay(200);     //红色         PDR0_P06 = 1;     PDR6_P62 = 0;     PDR6_P63 = 1;     delay(200);     //绿色         PDR0_P06 = 1;     PDR6_P62 = 1;     PDR6_P63 = 0;     delay(200);     //蓝色          PDR0_P06 = 0;     PDR6_P62 = 0;     PDR6_P63 = 1;     delay(200);     //黄色         PDR0_P06 = 0;     PDR6_P62 = 1;     PDR6_P63 = 0;     delay(200);     //紫色          PDR0_P06 = 1;     PDR6_P62 = 0;     PDR6_P63 = 0;     delay(200);     //青色          PDR0_P06 = 0;     PDR6_P62 = 0;     PDR6_P63 = 0;     delay(200);     //白色    } }

菜鸟
2010-10-17 23:06:27     打赏
3楼
文档里很多我没怎么看明白的地方,比如说监视定时器的软件和硬件之分到底是怎么回事。还有编译调试环境的具体操作等,比如当我在设置芯片型号为实际的型号MB95F264K时会提示错误,而选择MB95F204K就好了…… 后面我将会慢慢“研究”,也请各位前辈、兄弟们多多指教,把自己调试过程中的一些心得体会发到论坛上,让大家一起学习下。

专家
2010-10-18 08:22:53     打赏
4楼
因为配置文件里面没有MB95F264K的这个型号!!所以你选择这个CPU的话会提示错误的!

菜鸟
2010-10-18 09:23:27     打赏
5楼

哦,原来是这样啊,这次明白了,非常感谢 halibote523


菜鸟
2010-10-25 14:24:52     打赏
6楼

不错不错。。。学习了。。。。下班回家。我也开始去跑跑看。。。


共6条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]