Pin durumunu EPROM A kayit etmek

Başlatan yolcu27, 09 Mart 2016, 10:10:57

yolcu27

Pin durumlarını eproma nasıl kayıt edebilirim. 
Mesela porta.1 low iken porta.2 HIGH olsun. Bu esnada enerhiyi keseyim.tekrar enerji verince aynı durumdan başlasin. Ornek bir komut varmıdır teşekkürler

Tagli

Pin durumları ne sıklıkla değişiyor?
Gökçe Tağlıoğlu

yolcu27

Ben komut verdikce. Mesela ben komutu verdim porta.1 low oldu.  Bu durum eproma kaydedilsin. Elektrik gidince bu durumdan başlasın. Benim bu port için verdiğim low yada HIGH komutları EPROM A kaydolsun yanı.Dtmf devresinde kullanmak istiyorum da. Elimde çalışan kodlar var ama eproma kayıt yapmıyor elektrik kesince verince 4 portum da HIGH oluyor. Bunu engelleme amaçlı kodlara ekleme yapmak istiyorum.  Yanı kesin bir zaman yok pinlerdeki degisimlerle ilgili.

dursuncemal

programini kendin mi yaziyorsun?
hangi derleyiciyi kullaniyoprsun?
:=

yolcu27

Program yazma konusunda fazla bir bilgim yok bir kaç küçük kod yazdım led animasyon sayıcı LCD ile ilgili . pic basic ile yazılmış kodlar var elimde şuan

Abdullahtekin

DTMF devresinde bahsettiğin eproma kayıt işlemini bende yapmıştım. Tavsiyem; yani olması gereken, pin durumları değiştikçe eproma kaydetmek yerine, enerji kesintisini algılayıp eproma kayıt yapan bir devre tasarlamandır.

dursuncemal

programi sen yazmadi isen en azindan kodlari payiasirsan pic basic bilen arkadaslar kodu nereye nasil yerlestirecegini tarif eder aslinda cok kolay ama soz konusu eeprma yazmak olunda bilen birinin yazmasi daha iyi. ben yaparim diyorsan > portu bir okuyup bir x degiskenine  atacaksin  program dongunde  x degiskeni ile portu karsilastiracaksin fark var ise eeproma yazacaksin.  programa ilk girerkende eepromu okuyup
hem x degiskenine hemde porta atacaksin. boylece  sadece port degistiginde eeproma yazmis olursun.
:=

yolcu27

devre elektrik kesintisinde yeniden enerji gelince tüm röleler aktif oluyor.

bu eproma yazma kısmında sürekli şu kodlar tekrarlanmış. her röle aktif olunca WRITE 10,10:pause 10

röle pasif ise WRITE 10,255:pause 10

sanırım burada hata var diye düşünüyorum her röleyi aynı adrese aynı değer olarak yazıyor. bunu nasıl yazmamız gerekiyor acaba

mg1980

#8
DURUM1 VAR BYTE    ' PORTA.1'İN DURUMU
DURUM2 VAR BYTE    'PORTA.2'NİN DURUMU

PORTA=0
PORTB=0
CLEAR

BASLA:
READ 3,DURUM1
IF DURUM1=255 THEN DURUM1=1
PORTA.1=DURUM1

READ 4,DURUM2
IF DURUM2=255 THEN DURUM2=0
PORTA.2=DURUM2


PORTA.1=1
DURUM1=PORTA.1
PORTA.2=0
DURUM2=PORTA.2
     

WRITE 3,DURUM1
PAUSE 10
WRITE 4,DURUM2
PAUSE 10


NOT: Biraz acele oldu.Sanırım ana hatlarıyla işini görür.