PIC için Yazılımsal Reset Yöntemleri

Başlatan baran123, 02 Ekim 2016, 18:48:12

baran123

Merhaba, Yazılımsal reset konusunu araştırırken şöyle bir kod ile karşılaştım.
void reset(void)
{
    asm("CLRF PCLATH");
    asm("GOTO 0");
}

Fakat daha sonra kullandığım işlemci "Enhanced mid-range" ailesinden olduğu için aşağıdaki linkten
https://en.wikipedia.org/wiki/PIC_instruction_listings
"14-bit enhanced PIC additional instructions" Kısmını inceledim ve "reset" komutu olduğunu fark ettim.
Yani aynı işlemi şöylede yapabiliriz.
void reset(void)
{
    asm("RESET");
}

Peki 2 yöntem arasındaki fark nedir ? Ben asm olarak "reset" komutunu çalıştırırsam bu komut reset atmak için ne gibi bir işlem yapar ?

esensoy

İki komut aynı işlem olmayabilir,
GOTO 0 dediğinizde tüm registerlar reset durumuna dönüyor mu acaba?
En tehlikeli an "zafer" anıdır.

Erol YILMAZ


baran123

Alıntı yapılan: esensoy - 02 Ekim 2016, 19:51:18
İki komut aynı işlem olmayabilir,
GOTO 0 dediğinizde tüm registerlar reset durumuna dönüyor mu acaba?
Evet hocam dönmüyormuş.