has_artvin_li ( TA3TCM )
Usta Üye
- Katılım
- 18 Ocak 2008
- Mesajlar
- 1,088
- Puanları
- 156
- Yaş
- 40
Arkadaşlar selamun aleyküm...Ben proton basic kullanarak bir tuş takımını okutup Lcd ekranda sıra ile bastığım tuşun ekrana gelmesini istiyorum ama sorun şurda çıkıyor karşıma
Tuş takımını aşağıda örneğini vereceğim şekilde okutuyorum ve bastığım tuş ekranda görünüyo fakat elimi çekince numara da siliniyo oysa ben istiyorum ki tuşa her bastığımda bir önceki numarayı sola doğru ötelesin ve son bastığım tuşu ekranda göstersin örneğin 01234567896 numarasını ele alalım burda en önce 0 tuşuna basılmış ve sırası ile geriye kalan tuşlar basılmış olsun ekrana en sağdan başlayıp ilk bastığım tuşu sola sola kaydıracak bir programın mantığı nedir en canlı örnek cep telefonlarımızda birisini aramak için numarasını tuşlarken ki olan sistemin aynısı yine aynı bir tuş ile de son yazdığımızı silebileceğimiz bir program en mantıklı nasıl olur
Benim Tuş takımını okuturken kullandığım mantık şu önce satırları tanımlıyorum sonra stunları
symbol sat_1=portb.7
symbol sat_2=portb.6
symbol sat_3=portb.5
symbol sat_4=portb.4
symbol sut_1=portb.3
symbol sut_2=portb.2
symbol sut_3=portb.1
symbol sut_4=portb.0
dim tus as byte
tus=0
basla:
high sat_1
while sut_1=1
tus=1
gosub Ekran
wend
tus=0
while sut_2=1
tus=2
gosub ekran
wend
sut=0
while sut_3=1
tus=3
gosub ekran
wend
tus=0
while sut_4=1
tus="A"
gosub ekran
wend
tus=0
low sat_1
high sat_2
while sut_1=1
tus=4
gosub ekran
wend
tus=0
while sut_2=1
tus=5
gosub ekran
wend
tus=0
while sut_3=1
tus=6
gosub ekran
wend
tus=0
while sut_4=1
tus="B"
gosub ekran
wend
low sat_2
high sat_3
"
"
"
"
"
"goto basla
ekran:
print at 1,1,"tus= ",#tus
return
arkadaşlar bu tam çalışan ve benim devremdeki program değil sadece mantığı yani yaptığım program da bunun gibi ama ekran etiketi ile return arasında sanırım işlem yapmam lazım ki ekrana gelecek veri silinmeden bir sola kaysın mantığı sizce nasıl olmalı ben birkaç yöntem buluyorum ama programı baya uzatıyor en kısa yoldan nasıl yapabilirim birde tecrübeli insanların fikrini alayım dedim
Tuş takımını aşağıda örneğini vereceğim şekilde okutuyorum ve bastığım tuş ekranda görünüyo fakat elimi çekince numara da siliniyo oysa ben istiyorum ki tuşa her bastığımda bir önceki numarayı sola doğru ötelesin ve son bastığım tuşu ekranda göstersin örneğin 01234567896 numarasını ele alalım burda en önce 0 tuşuna basılmış ve sırası ile geriye kalan tuşlar basılmış olsun ekrana en sağdan başlayıp ilk bastığım tuşu sola sola kaydıracak bir programın mantığı nedir en canlı örnek cep telefonlarımızda birisini aramak için numarasını tuşlarken ki olan sistemin aynısı yine aynı bir tuş ile de son yazdığımızı silebileceğimiz bir program en mantıklı nasıl olur
Benim Tuş takımını okuturken kullandığım mantık şu önce satırları tanımlıyorum sonra stunları
symbol sat_1=portb.7
symbol sat_2=portb.6
symbol sat_3=portb.5
symbol sat_4=portb.4
symbol sut_1=portb.3
symbol sut_2=portb.2
symbol sut_3=portb.1
symbol sut_4=portb.0
dim tus as byte
tus=0
basla:
high sat_1
while sut_1=1
tus=1
gosub Ekran
wend
tus=0
while sut_2=1
tus=2
gosub ekran
wend
sut=0
while sut_3=1
tus=3
gosub ekran
wend
tus=0
while sut_4=1
tus="A"
gosub ekran
wend
tus=0
low sat_1
high sat_2
while sut_1=1
tus=4
gosub ekran
wend
tus=0
while sut_2=1
tus=5
gosub ekran
wend
tus=0
while sut_3=1
tus=6
gosub ekran
wend
tus=0
while sut_4=1
tus="B"
gosub ekran
wend
low sat_2
high sat_3
"
"
"
"
"
"goto basla
ekran:
print at 1,1,"tus= ",#tus
return
arkadaşlar bu tam çalışan ve benim devremdeki program değil sadece mantığı yani yaptığım program da bunun gibi ama ekran etiketi ile return arasında sanırım işlem yapmam lazım ki ekrana gelecek veri silinmeden bir sola kaysın mantığı sizce nasıl olmalı ben birkaç yöntem buluyorum ama programı baya uzatıyor en kısa yoldan nasıl yapabilirim birde tecrübeli insanların fikrini alayım dedim