Kesmeden çıkmadan önce INTCON registerinin 1.biti olan INTF bayrağını silmelisiniz. |
Çok çok teşekkür ederim. Allah razı olsun ![]() |
kesmeden çıkıyor çıkmasınada INTF olduğudan tekrar kesme geldi zannediyor. ![]() PIC C gibi derleyicilerde return ile kesme den çıkıldığında, INTF bayrağını siliyormu acaba, deneyen varmı??? |
Rica ederim, Faydam dokunduğuna sevindim..
Hocam diğer C derleyicilerde fark edermi bilmiyorum ancak Hi-Tech te manuel olarak silmek gerekiyor. ![]() |
CCS'de interrupt fonksiyonu demek zaten çıkışta ilgili bayrağın sıfırlandığı fonksiyon demek. Ama sadece bu kadar. Yani mesela fonksiyon içinde başka bir interrupt oluşmuşsa o görmezden geliniyor. Güvenilir bir tasarım yapmak için başka bir kesme bayrağı var mı diye kontrol edecek ve gerekirse yönlendirme rutinine atlatacak şekilde yama yapmak gerekir. ![]() |
tyilgin1 hi-tech den böyle bir yenilik beklemem zaten. adamların compiler için yazdıkları manual bile çorba gibi veya bana öyle geliyor. ![]() Liu Kang interrupt içinde interrupt kabul edilmez biliyorsun. ![]() peki CCS de interrupt tan çıkarken INTF i silmek istemiyorum diyelim. bu durumda ne yapmam gerekiyor? return yazmadan mı fonksiyonu bitirmeliyim. yoksa derleyici ben ne dersen diyeyim INTF i silerek mi ana programa geri dönüyor? yani sormak istediğim; konu sahibi arkadaşın yaptığı hatayı, CCS C de bilerek ve isteyerek nasıl yapabilirim? garip bir soru oldu, kusura bakamayın... ![]() |
Benim dediğim kesme içinde kesme oluşması değil. Bayrak olayı ne için var? Bunun avantajını kullanmıyorlar ki. Neyse. Bayrak biti sıfırlanmasın diye ne yapılabilir anlatayım. Programı derledikten sonra Viev->C/ASM list ile assembly kodlara bakarsın. (C kodlarını açıklayan Asm kodları![]() ![]() |
ama sen sıfırlandıktan sonra ne yapılabilir onu anlattın.![]() teşekkürler bilgiler için... ![]() |
Sıfırlayan komut zaten "}" rutininde. Ondan önce atlatıyorsun. "}" için sadece şu iki komut var mesela atıyorum: BCF FF2.1 GOTO 00B0 Sen fonksiyonun en sonunda #ASM GOTO 00B0 yazdın mı BCF komutunu atlamış olacaksın. |
Şifreyi unuttuğum için özür dilerim,sadece rarda şifre var sonra istemediği için unutmuşum. Şifre :www.picproje.org C ile ilgili(genel C ) güzel bir kitap aşağıda. C kitabı, http://rapid-share.com/files/68140072/CFull3_11.pdf.html şifre: cdernek |
Çok iyi bir kitapmış. Önemli olduğu için internet kafedeki arkadaşlar için bir sunucuya daha yükleyeyim iyi olur. İnternet kafelerde bu rapidle ilgili ne problemler yaşıyoruz kafede sürünmeyen bilmez ![]() |
@Liu Kang, madem bir hayır yapacaksın, az daha el at. Başlık pbp ile ilgili idi ama C ye döndü yani kaybolur gider,arayanda bulamaz. C kaynak ya da C kitaplar diye bir başlık aç ve buradaki linkleri oraya toplayıver bir zahmet. Madem C yi seviyorsunuz bir kaç kitap daha,bu seferkiler rapid değil. ![]() Türkiş Nigel Gardner: http://www.4shared.com/file/14686327/4491880/trki.html CCS C örnekler (CCS C ile pic programlama-Serdar Çiçek kitabını mutlaka alın) kitapdaki uygulamalar,kitapda her satırın neden öyle olduğu ne iş yaptığıda anlatılıyor,vereceğiniz paraya değer. http://www.4shared.com/file/35598279/203d8b11/ccs_c_rnekler.html Bu da genel C anlatan bir kitap. http://www.4shared.com/file/35598770/5f2af15e/Cfedon.html |
Tamam hayırsever forum adamı liu kang bu görevi kabul etmekten onur duyar ![]() |
Teşekkür ederim. @Respected hocamında bir çalışması vardı unutmuşum. http://www.4shared.com/file/35601238/c5da21d6/ccs_books.html |
Liu Kang ama sen yine sıfırlandıktan sonra ne yapılabilir onu anlattın. ![]() ![]() musallim güzel kaynaklar. birkaç tanesini siteme upload etsem kızarmısınız??? ![]() |
Üzgünüm böyle yama tarzı bir işlemden başka bir seçeneğin yok CCS için. İyi tamam da ne için gerekiyor böyle yapmak? |
herşey "PIC C gibi derleyicilerde return ile kesme den çıkıldığında, INTF bayrağını siliyormu acaba, deneyen varmı" sorusuyla başladı. ![]() bir yerde kullanmayacam sadece öğrenmek istedim. kesme programından çıkarken kullanılan return komutunu hep bir sonraki kesme için gerekli işlemler yapılsın şeklide hayal etmişimdir. soruda bundan kaynaklandı... |
DEFINE LCD_DREG PORTB 'LCD data bacakları hangi porta bağlı?
DEFINE LCD_DBIT 4 'LCD data bacakları hangi bitten başlıyor?
DEFINE LCD_EREG PORTB 'LCD Enable Bacağı Hangi Porta bağlı?
DEFINE LCD_EBIT 3 'LCD Enable Bacağı Hangi bite bağlı ?
DEFINE LCD_RSREG PORTB 'LCD RS Bacağı Hangi Porta bağlı ?
DEFINE LCD_RSBIT 2 'LCD RS bacağı Hangi Bite bağlı ?
DEFINE LCD_BITS 4 'LCD 4 bit mi yoksa 8 bit olarak bağlı?
DEFINE LCD_LINES 2 'LCD Kaç sıra yazabiliyor
@ DEVICE pic16F877A
@ DEVICE pic16F877A, WDT_off
@ DEVICE pic16F877A, PWRT_Off
@ DEVICE pic16F877A, PROTECT_OFF
@ DEVICE pic16F877A, XT_OSC
@ DEVICE pic16F877A, bod_off
trisb=%00000001
portb=0
i var byte
kes var byte
INTCON=%10010000
OPTION_REG=%00110000
on interrupt goto kesme
kes=0
ana:
lcdout $fe,1
lcdout "kesme yok"
for i=0 to 20
pause 10
next i
goto ana
disable interrupt
kesme:
kes=kes+1
lcdout $fe,1
lcdout "kesme geldi"
lcdout $fe,$c0, #kes
pause 1000
resume
enable interrupt
end
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.