bu uyarı nedir? ayrıca işlemci hangi komutla reset olur?

Başlatan erkan614, 14 Aralık 2007, 12:02:54

arslan74

Merhaba,

PIC serisi sizinde bildiğiniz RISC mimarisi üzerine kurulu. Burada komutlarla data aynı anda işlenir. Bunlar 8 bit işlemci olduğuna göre geriya kalan kısım komut yapısıyla alakalı. PIC18 serisi 8bit komut yapısına sahib olduğu için, PIC16 serisine bir cok üstünlükleri var. En başta komut sayıları fazla, bank ve page olayı ortadan kalkmış durumda. 12 ve 16 serisinde bunlar cok büyük problem haline geliyordu.

Selamlar.

erkan614

şimdi 16f877a entegresi pbp ile yazılımsal olarak resetlenemiyormu?
olmaz böle bişi insan bu durumlarda keşke programı baştan asm ile yazsaydım diyor.

arkadaşlar vardır basit bi yolu herhangi bişekilde reset olcak. bu kadar basit. ****ama yazılımsal olarak****

not: aslında programı başka bi mantık ile resete ihtiyac olmadan yazdım ama yinede merak içindeyim. f877 pbp ile nasıl reset yapılır

varmı fikri olan?

arslan74

Alıntı yapılan: "erkan614"şimdi 16f877a entegresi pbp ile yazılımsal olarak resetlenemiyormu?
olmaz böle bişi insan bu durumlarda keşke programı baştan asm ile yazsaydım diyor.

arkadaşlar vardır basit bi yolu herhangi bişekilde reset olcak. bu kadar basit. ****ama yazılımsal olarak****

not: aslında programı başka bi mantık ile resete ihtiyac olmadan yazdım ama yinede merak içindeyim. f877 pbp ile nasıl reset yapılır

varmı fikri olan?

Merhaba,

16F877'de yazılımsal reset yok. 18F452 istediğin olay var.

Selamlar

aslan_korhan

Şimdi PIC reset olunca ne oluyor ?
Programın değişkenleri sıfırlanıyor ve en başamı gidiyor ?

Bu durumda
CLEAR              ' Bütün değişkenleri sıfırla 
goto baslangic   ' Programın ilk başlangıcı


gibi birşey yaparsan reset atmış gibi olmazmı?
Dünyada 10 çeşit insan vardır. Binary bilen ve bilmeyenler.

arslan74

Alıntı yapılan: "aslan_korhan"Şimdi PIC reset olunca ne oluyor ?
Programın değişkenleri sıfırlanıyor ve en başamı gidiyor ?

Bu durumda
CLEAR              ' Bütün değişkenleri sıfırla 
goto baslangic   ' Programın ilk başlangıcı


gibi birşey yaparsan reset atmış gibi olmazmı?

Burada bir şeyi gözardı ediyorsunuz. Bu işlem ancak hiç bir alt fonksiyonua dallanmamış ise olabilir. Yani stack yığınında birşey olmamış olması gerek. Eğer öyle olur ise bu bir reset görevi görmez. Aksine programın tüm çalışma şeklini bozar.

Alt programlarda böyle bir şey yapmadan önce stack olayını sıfırlanması gerek.

Birde Main programı içinde return komutunu kullanın nasıl bir tepki vereceğini bilmiyorum, ama belki istediğiniz işlemi görür.

Selamlar

aslan_korhan

Nasıl bir program yazdığını bilmediğimden birşey diyemiyeceğim. Ama dediğin gibi stack olayınada dikkat edersen bir sorun çıkmaması gerekir...
Dünyada 10 çeşit insan vardır. Binary bilen ve bilmeyenler.

erkan614

butun değişkenleri (nekadar değişikliğe uğramış register ve port varsa) sıfırlayıp goto başla ya göndererek hallettim zaten.

benim çözemediim wdt veya mclr niin yaptığı reset gibi bişi yapmak.

6. alt programda adam reset butonuna (ki o buton hezaman reset görevinde değil bazen stop/resume işi görüyo) basınca kısa yoldan reset atsın. işimiz kolaylaşsın