pc den pic e nasıl 1 den fazla basamaklı sayı yollarım?
serin2 6,n9600,[wait("a"),dec4 say]
yukarıdaki komut "a" belırlıyıcısı gelınceye kadar bekle,sonrakı 4 sayıyı "say" degıskenene yukle anlamına gelmıyormu? bı turlu olmadı, hyperterm ile pic 4 basamaklı sayı nasıl yollarım :idea:
yalnız yanlıs anlasılmasın normalde ıstegım sayıyı gonderebılıyorum yapmak ıstedgım klavyeden girecegim (yani degisken olcak statik değil) herhangi 4 basamaklı sayıyı gondermek istiyorum????
dec4 8 bitlik bir sayıyı örneğin 2 yi 0002 şeklinde göstermene yarar.
bu programı bi dene
hyperterminalde göndereceğin 4 basamaklı sayıyı yaz sonuna a ekle entere bas.
adan önceki 4 rakamı pice gönderir.
bu işin belki tek komutluk çözümü vardır ama ben picbasic kullanmadığımdan fazla bilmiyorum.
4*20 lcd de denedim.çalışıyor
Define LCD_DREG PORTD 'Lcd data portu PORTD olarak seçilir
DEFINE LCD_DBIT 0
Define LCD_RSREG PORTE 'RS pininin PORTE ye bağlı olduğu belirtilir
Define LCD_RSBIT 0 'RS'in PORTE.2 ye bağlı olduğu belirtilir
Define LCD_EREG PORTE 'E pininin bağlı olduğu port
Define LCD_EBIT 2 'E pininin bağlı olduğu bacak
DEFINE LCD_RWREG PORTE
DEFINE LCD_RWBIT 1
Define LCD_BITS 8 '8 bitlik veri yolu kullanılır
DEFINE LCD_COMMANDUS 4000 'Command delay time in us
DEFINE LCD_DATAUS 100 'Data delay time in us
DEFINE SER2_BITS 8 ' Set Serin2 and Serout2 data bits to 8 (default)
include "modedefs.bas"
veri var byte
in var PORTC.0
out var PORTC.1
sayac var byte
temp1 var byte
temp2 var byte
temp3 var byte
temp4 var byte
temp5 var byte
temp6 var byte
sayac=0
TRISD=0
TRISE=0
ADCON1=$0E
TRISC=$01
main: Lcdout $FE,1
Lcdout "DATA YOK"
bekle: serin in,n9600,veri
temp1 = temp2
temp2 = temp3
temp3 = temp4
temp4 = temp5
temp5 = temp6
temp6 = veri
if veri= $0D then karsilastir 'enter tuşu bekleniyor
goto bekle
karsilastir: if temp5="a" then yaz
goto bekle
yaz: Lcdout $fe,128,"DATA GELDI"
Lcdout $fe,192,temp1,temp2,temp3,temp4
goto bekle
end