dahili reset komutu

Başlatan subram, 10 Ocak 2012, 23:55:38

subram

18f252 ile yaptığım bir sistem var. sistemde 1 adet ana modül 12 adet yan modül var. 485 üzerinden haberleştiriyorum. takıldığım bir yer var. ana modülden komut geldiğinde yan modülleri "yazılımsal olarak" resetleyebilir miyim?

yazılımsal olarak olmazsa donanımsal olarak şu yöntem mantıklı mı;
yan modüllerin bir bitini kendi MCLR ucuna bağlayıp sürekli high konumunda tutsam ana modülden komut geldiğinde bu biti lowa çeksem devreyi otomatik olarak resetlesem nasıl olur. bu işi bir transistör üzerinden mi yapmalı yoksa direk bağlantı olur mu?
http://www.elektronark.org  Türkiyede Elektronik Kültürünü Değiştirmeye Geliyoruz

justice_for_all

#1
transistor uzerinden yapsaniz iyi olur.kullanacaginiz pinin portunda program icinde giris veya cikislari degistirmeyin  (program baslangicindan sonra ) cunku her giris cikis ayarlamanizda pin degisir ve yan modulleriniz reset atar bu benim basima gelmisti.

veya yan modullere kod gondererek wdt acilabilirmi onu bilmiyorum cunku konfig ayarlarini en basta veriyosunuz.
Deneyip de başaramayanları değil, yalnızca denemeye bile kalkışmayanları yargıla.   Gökhan Arslanbay

kudretuzuner

Merhaba
R46 nolu dirence PIC'in pinlerinden birinden çıkış vererek yazılımsal reset yapabilirsiniz.
https://rapidshare.com/files/2021270302/surnas_1.rar
Amatör

justice_for_all

bide en cok su hata yapiliyor once port tanimlamasi yapiliyor daha sonra portlarin baslangicta high veya low olmasi tanimlaniyor aslinda tam tersi olmasi gerekir.cunku port tanimlamalariniz yaptiginiz anda portlar gelisiguzel 1 veya 0 alacaktir buda yan modullere gereksiz reset atar.
Deneyip de başaramayanları değil, yalnızca denemeye bile kalkışmayanları yargıla.   Gökhan Arslanbay

subram

yanıtlar için teşekkürler.
http://www.elektronark.org  Türkiyede Elektronik Kültürünü Değiştirmeye Geliyoruz

justice_for_all

hocam gordumki yan modulun cokmus bence transistorun beyzini her modulun pinine bagla ana moduldende kendıni resetle diye msj gondr okendini resetlesin tabi pic kilitlenirse bu yontem ıse yaramaz bilmiyorum ana modulunde yeterı kadar bos pin varmı eger varsa ilk yontem daha garantı
Deneyip de başaramayanları değil, yalnızca denemeye bile kalkışmayanları yargıla.   Gökhan Arslanbay

subram

wdt yi açmak mantıklı. yapılabilir gibi. ama benim zamanım yok. yan modüle transintör ekledim ve şuan devreyi basmaya başladım. sabaha montajı biter herhalde :)
http://www.elektronark.org  Türkiyede Elektronik Kültürünü Değiştirmeye Geliyoruz

Maxim

#7
pardon arkadaşlar
basic te "reset" diye bir komut yokmu ?


edit:
sanırım yok
ama "reset" diye instraction var

yani kodun içine

asm
reset
endasm

yazılırsa işlemci reset olur heralde?

Mucit23

#8
Maxim dediğin şekilde çalışmıyor.

Ben biraz baktım İşlemcinin resetlenmesi için program sayaçlarının sıfırlanması gerekiyor. Yani Basic için bi if koşulunun içerisine aşağıdaki komutları yazarsanız koşul doğrulandığı anda işlemci resetlenir;
     PCLATH=0
     PCL=0
Ama gerçekten sadece program sayaçlarını sıfırlamakla gerçekte yapılmış gibi İşlemci resetlenirmi bilmiyorum. Datasheede bakmak lazım. Reset nedir? Nasıl gerçekleşir.? Hangi koşullarda gerçekleşir? Registerleri iyi incelemek lazım.

Maxim

denedinizmi ?
(ayrıca bu reset olayı 16F lerde yok 18F olacak)

Mucit23

ben 16F de dediğini denedim. Haklı olabilirsin. 18F lerde reset birazda gelişik. RCON var Ama 16F de dediğim komutlar çalışıyor. 18F dede bi deneyeyim dediğinizi..

Mucit23

Evet 18F de dediğin şekilde çalıştı.
    @Asm
      reset
    @EndAsm
Protonda denedim ama

Maxim

Alıntı yapılan: Mucit23 - 11 Ocak 2012, 10:25:40
Evet 18F de dediğin şekilde çalıştı.
    @Asm
      reset
    @EndAsm
Protonda denedim ama

protonda zaten "reset" komutu var  :D

Mucit23

Reset komutuna alternatif ;)

Maxim

alternatif derken anlamadım ?

18F datasheetlerinde sadece RESET diye bir bölüm var
donanım reset , yazılım reset..
bir kaç reset çeşidi var anlatılıyor
mclr ile reset, watch dog ile reset neyse..

reset komutu da bir seçenek

zaten başlığı açan arkadaş aynen bunu yazmış
"ana modülden komut geldiğinde yan modülleri "yazılımsal olarak" resetleyebilir miyim? "

picbasicte reset diye bir komut yok zannediyorum buna en doğru cevabı @ete verir
o yüzden
asm
reset
endasm

komutunu bi denemek lazım diye düşündüm picbasicte .


proton+ ta zaten reset diye bir komut var
yazın kodun içine reset
pic baştan başlar.