Board logo

标题: HCS08如何最简单的进行软件reset [打印本页]

作者: chimey    时间: 2006-11-3 11:30     标题: HCS08如何最简单的进行软件reset

我用HCS08系列zigbee的MC13213,


如果最简单的实现软件复位?很多芯片实现起来都非常容易,但HCS08好象没有直接的,只能通过WATCHDOG.太麻烦了吧,难道我想复位的时候就把WATCHDOG打开并且不去喂而达到复位的效果??有没有简单直接一点的方法啊???


作者: strongchen    时间: 2006-11-3 14:02

有啊,非法指令复位,又快又简单。
作者: chimey    时间: 2006-11-3 14:14

如何非法??能举个列子吗?我汇编不行,只会c

我是HCS08GB60
作者: strongchen    时间: 2006-11-3 16:19

#include /* for EnableInterrupts macro */
#include "derivative.h" /* include peripheral declarations */


void MCU_init(void); /* Device initialization function declaration */


volatile const char IllegaInstrct = 0x8D;

void main(void) {

/* Uncomment this function call after using Device Initialization
to use the generated code */
/* MCU_init(); */

EnableInterrupts; /* enable interrupts */

/* include your code here */



for(;;) {
__RESET_WATCHDOG(); /* feeds the dog */

asm
{
LDHX @IllegaInstrct
JMP ,X
}


} /* loop forever */
/* please make sure that you never leave this function */
}

作者: nishui_2000    时间: 2006-11-6 15:13

好办法,我以前复位都是用的看门狗强制超时这种复位方法。
作者: zhwdy81    时间: 2006-11-22 13:11

的确不错
作者: nishui_2000    时间: 2006-12-8 19:42

请问一下斑竹:
这种方法能用在S12上么?如果用的S12单片机,这种指令可以么?
作者: strongchen    时间: 2006-12-11 10:25

S12并没有非法指令复位,只有中断。但是如果S12的COP打开的话,只要写的不是0x55和0xAA,就会马上复位。
作者: llm5271    时间: 2008-3-17 21:34

QQ群:3641537 欢迎插入
作者: silentdawn    时间: 2008-8-29 19:55

进入死循环,停止喂狗就可以了吧


作者: strongchen    时间: 2008-9-1 10:38

那需要等定时溢出。
作者: 317772899    时间: 2008-9-3 10:40

受益匪浅


作者: awnuxue886    时间: 2008-9-3 15:02

有需要MC9S12DG128核心子板、S12BDM并且有8位、16位开发板和开发工具

或者有问题可以联系我

QQ262342506

邮箱:awnuxue886@yahoo.com.cn

复制网页连接到地址栏中就可以购卖了淘宝支付宝定购。

购卖网站:http://shop34763529.taobao.com/?queryType=all&catId=null&categoryName=null&searchWord=null&order=descent&browseType=table#pagebar






欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0