avatar_medes

RESETLEME

Başlatan medes, 04 Eylül 2011, 13:07:45

medes

ete hocam
yaptığım DTMF gayet mükemmel çalışıyor fakat geçen gün şifre girerken yanlışlıkla 2 şifre girdim
akadaşla konuşurken diğer 2 şireyi girmeyi unuttum daha sonra tekrar 4 adet şifreyi girdim
role açmadı şaşırdım acaba yanlışmı gidim diye sonra voltajını kestim tekrar çalıştırdım şireyi gidim
çalışıyor.tekrar yanlış veya 3 şifre girdim tekrar ardından 4 şifre girdim yine role açmadı öyleki bir anlık unutup hatalı veya yanlış şifre girdinse vede şireyi  4 adetten az girdinse farkına varmadıysan vay haline hocam burada hatalı yanlış 1,2,3 rakam girilse dahi her rakam sonrası
belirli bir zaman içinde başa dönmesi için ne gibi bir işlem yapılması gerekir. sagılarımla
BASLA:


    SAYA=0:SAYB=0:SAYC=0:SAYD=0
   
    gosub TUSBAK
    SAYA=DTMF

   
    gosub TUSBAK
    SAYB=DTMF

   
    GOSUB TUSBAK
    SAYC=DTMF

   
    GOSUB TUSBAK
    SAYD=DTMF
   
   
    IF SAYA=3 AND SAYB=1 AND SAYC=10 AND SAYD=1 THEN
    HIGH ROLE 'RÖLE ÇEKSİN
    GOTO SISTEM_ACIK 'TUS KONTROLE GEÇİLSİN
ELSE
    GOTO BASLA 'ŞİFRE DOĞRU DEĞİL İSE HERŞEY BAŞTAN BAŞLASIN
ENDIF

SISTEM_ACIK:
    IF TUS=1 THEN BAK_KAPAT
    GOTO SISTEM_ACIK
BAK_KAPAT:
    SURE=0
    WHILE TUS=1
    PAUSE 1
    SURE=SURE+1
    IF SURE=5000 THEN KAPA
    wend
    GOTO SISTEM_ACIK
KAPA:
'    LOW ROLE
    PAUSE 100
    GOTO BASLA
TUSBAK:
    while STD=0:wend
    dtmf=0
    DTMF =Q1+(2*Q2)+(4*Q3)+(8*Q4)
    while STD=1:wend
    return
    end

ete

Medes,

Karşıdan onay almadıktan sonra ne yapsan faydası yok. Bu iş üzerinde çok fazla çalıştım ben. Dediğini yapsam bile bir müddet sonra başka sorunlar çıkacak. Düşün 4 digitlik şifrenin iki tanesini girdi,n telefonun çaldı arkadaşınla konulurken diğer ikisini giremedin yada kaç tane girdiğini unuttun.
Tekrar bir tane girdin , ardından tekrar girdin vs. bu uzayıp gider çünki hangi konumda olduğunu sen bilemiyorsun.

Diyelimki şifre (digit) bekleme kısmına bir zaman sayacı koyduk.  Şayet 1 dakika yada 2 dakika içinde herhangi bir tuş girilmemiş ise sistem resetlesin ve en başa yeniden tüm şifreyi baştan alacak kısma atlasın. Peki buraya atlandığından nasıl haberin olacak?
Ne yabailirsin diye düşünüyorum. EN azından 2-3 dakika yada 5 dakika hiç bir tuşa basmadan beklersin. Program restelenip başa döner ve sende şifreni yeniden girebilirsin.

Yada mevcut hali ile 4 digit girildikten sonra bir buzzer sinyali oluşturursak oradan anlarsın. EN güzelide bu bence. Buzzere göre yeniden değerlendirelim.

2 digit girdin ve daha sonra telefonla konuştun ama hangi digitleri girdiğini unuttun. Aradan bir kaç dakika geçti ve sen neyi girdiğini unuttuğun için rast gele tuşlara basmaya başlarsın. Diyelimki 1 tusuna bastın bekledin (buzzer öttümü diye), önceden 2 digit girmiştin sen üçüncüyü girdin buzzer ötmedi yeniden 1 tusuna bastın ve basarbasmaz buzzer ötecektir. Şİmdi 4 digit girilmiş oldu ama yanlış şifre olduğu için işlem görülmedi ve program başa döndü. İşte bu aşamada yeniden şifre girebilirsin artık. Çünki Buzzer sana yeniden şifre girmeni söylemiş oldu. Bence böyle yapılmalı. Aksi halde iş dahada uzayacak.

Ete

medes

ete hocam
her 4 tuşta basılınca buzzer çalması için ne gibi bir işlem yapmam lazım
medes

ete

SayD=DTMF.  satirini bul altina
buzzer komtunu ekle.
Ete

medes

ete hocam
buzzer komutunu ekledim 4 adet tuşa basıldığında  buzzer uyrı sesi geliyor o zaman program başa geçiyor. ek programı değişik şekilde yazdım şimdi şifre doğru girildiğinde ve role çektiyse
2 buzzer sesi  işi bittiğinde role bıraktığı zaman 4 buzzer sesi veriyor hatalı şifre girilirse yine
4 buzzer sesi veriyor sayenizde gayet güzel bir proram oldu.saygılarımla
medes

Powered by EzPortal