pupist 发表于 2013-4-29 14:04:39

AVR tiny13 可以对PB5写0实现reset么

想要在程序内触发复位这样可以么?

turf456 发表于 2013-4-29 14:17:14

将复位引脚用作IO口就没有复位功能了。

zhangyidao 发表于 2013-4-29 16:04:31

直接程序跳转到0000不就行了?

xuboluan 发表于 2013-4-29 18:23:01

2楼正解,作为普通I/O使用无复位功能

xwkm 发表于 2013-4-29 20:09:33

zhangyidao 发表于 2013-4-29 16:04 static/image/common/back.gif
直接程序跳转到0000不就行了?

这样不算复位。
要复位简单。main()第一句wdt_disable.写一个函数:
void ResetMCU()
{
cli();
wdt_enable(WDT_100MS);
while(1);
}
然后你懂的。

pupist 发表于 2013-5-6 21:50:07

xwkm 发表于 2013-4-29 20:09 static/image/common/back.gif
这样不算复位。
要复位简单。main()第一句wdt_disable.写一个函数:
void ResetMCU()


我觉得goto到0也可以吧就是不知道main之前初始化变量那段程序会不会被执行啊

pupist 发表于 2013-5-6 22:26:19

zhangyidao 发表于 2013-4-29 16:04 static/image/common/back.gif
直接程序跳转到0000不就行了?

问题来了怎么实现跳到0呢goto 0?

xwkm 发表于 2013-5-8 11:14:22

pupist 发表于 2013-5-6 21:50 static/image/common/back.gif
我觉得goto到0也可以吧就是不知道main之前初始化变量那段程序会不会被执行啊 ...

asm("jmp 0")不会复位外设。
而看门狗的复位属于硬件复位。外设会被完全复位。PC也会从0起步的。

kjspace123 发表于 2013-5-24 13:57:26

看不懂,混合编程啊
页: [1]
查看完整版本: AVR tiny13 可以对PB5写0实现reset么