| Yazar | Mesaj |
srg | | Tarih: 10.01.2007, 13:18 Mesaj konusu: pic basic pro da interrupt sirasinda eeproma veri yazip okum | |
| pic basic pro da interrupt sirasinda eeproma veri yazip okuma konusunda yardimbekliyorum kullandigim chip f877 bir degiskene ilk anda 3000 degerini atayip belli komutlar calistiginda bu degeri birer birer azaltacagim ve anlik degerini kaydedip okuyacagim yardimlarinizi bekliyorum
tesekkurler
|
|
|
|
elek | | Tarih: 10.01.2007, 18:44 Mesaj konusu: | |
| tam olarak anlayamadım ama;
ON INTERRUPT GOTO git
kesme olduğunda "git" adındaki etikete gider.(alt programa gider)
alt program "RESUME etiket" komutu ile biter.alt program bitince etiket e gider.
DİSABLE komutu programda kullanılırsa , alt program çalışırken oluşacak kesmeler önlenir.
alt program o zaman şöyle biter;
.....
RESUME
ENABLE
........
(istersen kullanmayabilirsin)
pic basic de; örneğin pause 10000 komutu çalışırken kesme oluşursa,komut tamamlanınca kesme alt programına gidilir.
|
|
srg | | Tarih: 10.01.2007, 20:09 Mesaj konusu: | |
| sorunum bu degil asagida biraz acikladim eeproma veri yazip okuyamıyorum
yazdigim kod asagidaki gibi
tesekkurler
on ınterrupt goto kesme
.....
read 5,uvsayac
......
saykıl:
for i = 0 to 25
pause 10
next i
update = 1
goto ana_dongu
dısable
kesme:
salıse = salıse + 1
ıf salıse < 55 then kesmecık
salıse = 0
sanıye = sanıye + 1
ıf sanıye >= 60 then
sanıye = 0
dakıka = dakıka + 1
uvsayac = uvsayac+1
wrıte 5,uvsayac
ıf dakıka >= 60 then
dakıka = 0
saat = saat - 1
ıf saat = 0 then
saat = 3000
endıf
endıf
endıf
update = 1
kesmecık:
ıntcon.2=0
resume
end
|
|
elek | | Tarih: 12.01.2007, 19:44 Mesaj konusu: | |
| 3000 değeri 8 bitlik bir sayı değil.belki bu problem yaratıyordur
|
|
onurbilke | | Tarih: 11.03.2007, 00:45 Mesaj konusu: Interrupt Yardım | |
| Arkadaşım Bu Konuda Benimde Yardıma İhtiyacım Var. Acaba Edindiğin Bilgileri Benimle Paylaşırmısın?
onurbilke@hotmail.com
|
|
onurbilke | | Tarih: 12.03.2007, 03:08 Mesaj konusu: Ben Çözdüm Olayı | |
| define osc 20
adcon1 = 7
' defines for usart
ınclude "bs2defs.bas" 'has some useful stuff in it
defıne hser_rcsta 90h
defıne hser_txsta 24h
defıne hser_baud 9600 '9600 baud
rcıf var pır1.5 ' alias rcıf (usart receive ınterrupt flag)
oerr var rcsta.1 ' alias oerr (usart overrun error flag)
cren var rcsta.4 ' alias cren (usart continuous receive enable)
basla:
'bu kısım ana program kısmı
goto basla
disable
com_oku:
hserin [okunan]
ıntcon = %11000000
pıe1.5 = 1
resume
pice pcden seri veri geldiğinde kesmeye giderrek gelen veriyi alıyo sonra kaldığı yerden deva ediyor.
|
|
|