Saatsız Termo-LCD'li

Başlatan eprom_20, 24 Eylül 2016, 02:55:07

eprom_20

Arkadaşlar;
Mucit hocanın 7 segment display lı ayarlı termo çalışmasını lcd üzerine uyarlamaya çalıştım ama bazı tereddütlerim var;
MENUU kısmındaki:
IF YUKARI=0 THEN TERM=TERM+1
IF TERM=>990 THEN TERM=990
;**********AŞAGI**************************************************
IF ASAGI=0 THEN TERM=TERM-1
GOSUB DELAY
GOSUB EKRAN2
IF TERM=65535 THEN TERM=0

buradaki ayarlar şu şekilde olmayacak mı?
IF YUKARI=0 THEN TERM=TERM+1
IF TERM=>990 THEN TERM=0
;**********AŞAGI**************************************************
IF ASAGI=0 THEN TERM=TERM-1
GOSUB DELAY
GOSUB EKRAN2
IF TERM=0 THEN TERM=65535

yanlış mı düşünüyorum?
kodlar ve şemayı yükledim

ete

#1
3 digit display en fazla 999 sayısını gösterebilir. Bu kısıtlama nedeni ile artırma butonuna bastıkça sayının en fazla 999 olmasına müsaade edilir bu nedenle Term=Term+1 işleminde son limit 999 olmalıdır . Sen son limitten öte sayı limiti aşınca sıfırlansın demişsin. Bu bir tercih ama doğrusu artırma butonu son limite kadar artırır eksiltme butonuda son limite kadar eksiltir. Doğrusu budur.
Eksiltme işine gelince 16 bitlik sayı sürekli bir eksiltilirse sayın önce sıfır ardından da yeniden 16 bit limiti olan 65535 sayısına atlar. Bu durumda eksiltme sonucu sayımız önce sıfır ve ardından 65535 olmuş ise onu eksiltme limitimiz olan sıfıra eşitlememiz daha doğru olacaktır.

Benzer işleri yapan bazı programlarımda sayıyı giderek artırıyorsam ve sayı limitim olan 999 sayısını geçmiş ise onu sıfıra eşitlerim. Dediğim gibi bu bir tercih meselesidir. Amacım şayet üst limite yakın isem kolaylıkla başa dönmektir. Aksi taktirde eksiltme butonu ile sıfıra dönmek için 999 defa eksiltme yapmam gerekir. Bunlar birer mantık ve tercihtir.
Sen nasıl istersen öyle kullan ama son eksiltme tercihin doğru değil onuda bilesin. 3 digitlik limiti olan sayı hiç bir zaman 65535 e eşitlenmez.

Ete

eprom_20

Haklısınız Hocam Teşekkür ederim yardımınız için,,,
çok sağolun Selametle

Powered by EzPortal