Haberler:

Eposta uyarılarını yanıtlamayınız ( ! ) https://bit.ly/2J7yi0d

Ana Menü

CCS INTERRUPT HATASI

Başlatan kalman, 15 Haziran 2005, 20:05:35

Petek

Alıntı yapılan: "kalman"Petek,
Benim anlatmak istediğim olay şöyle diyelim int_rb i açtınız ve aynı zamandada int_ex i açtınız ve interrupt geldiğinde sizce ne yapar önce İNTcon Registerde  duruma bakıp hangi kaynaktan geldiğine bakar ve o kaynağın ISR ine atlama yapılır diye biliyorum  pekala ikisi aynı anda gelse sizce hangisi öncelikli olur???

bildiğim kadarıyla  her interrupta 04h ya atlama yapılıyor ve interrupt
önceliği pıc 16fxx bulunmuyor

erkan amacım herkes bilgilerini paylaşsın ve yardımcı olsun son yazdıklarından dolayı biraz düşünmeni öneririm lütfen kırıcı olmayalım
sanada başarılar dilerim

Saygılarımla

Birincisi, iki interruptın aynı anda gelme olasılığı milyonda birdir (4 MHz kristal için). İkincisi Piclerde vektörel interrupt olmadığı için interrupt durumunda tek bir adrese gider 0x04.

nterrupt önceliğini CCS ayarlıyor. Detayına bakmadım ama muhtemelen siz ilk hangi interrupt rutinini tanımlamış iseniz öncelikle ona bakacaktır. Onu bitirdiğinde diğerlerine bakıyor mu bilemiyorum ama bakmasa da interruptan çıktıktan sonra diğerinin flagi (tabi int enable edilmişse) set edilmiş ise tekrar interrupta döner ve set edilen flagin hangisi olduğuna bakar. Dolayısıyle hem int_rb ve hem de int_ext aynı anda kullanılabilir. Bunda herhangi bir engel yok. İnterruptan çıkarken sadece hangisi için gelmiş ise onun flagini resetleyerek çıktığı için diğer flaglar set edilmiş ise interrupt onlar için tekrar harekete geçirilir.
“Önyargıları yıkmak atomu parçalamaktan zordur” A.Einstein