avatar_elektro77

2x16 lcd Büyük karakter kulanımı

Başlatan elektro77, 30 Kasım 2019, 11:25:46

elektro77

güzel bir kaynak ama ardunio ile yapılmış. Belki birileri pbp dili için yapabilir diye düşünerek kaynağı buraya koydum.

http://mikrobotik.com/wp2/2018/09/12/2x16-lcd-buyuk-karakter-yazilabilir-mi/
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

Elektronikprojem

Basit bir şekilde bu işin basicde 4 haneli sayı gösterimini yaptım ihtiyacı olan kullanabilir.Gerçekte 2x8 Lcd de denedim.

@ __config _BODEN_ON & _BOREN_ON & _CP_ON &  _PWRTE_ON & _WDT_OFF & _LVP_OFF & _MCLRE_OFF & _INTRC_OSC_NOCLKOUT
DEFINE OSC 4
PORTA=0:portb=0    
TRISB=0     
TRISA=0  
'----------------------------------------------------------------------------
DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 4
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 2
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 3
DEFINE LCD_BITS 4
DEFINE LCD_LINES 2
LCDOUT $FE,1
SAYI VAR WORD
I VAR BYTE
A VAR BYTE
B VAR BYTE
CLEAR
;-------------------------------------------------------------------------------
lcdout $FE,1
PAUSE 250
;-------------------------------------------------------------------------------
BASLA:
LCDOUT $FE,$80,6," ",4," ",2," ",0
LCDOUT $FE,$C0,7," ",5," ",3," ",1
PAUSE 1000
SAYI=SAYI+1
IF SAYI>9999 THEN SAYI=0
LCDOUT $FE,1  

FOR I=0 TO 3
SELECT CASE I
CASE 0 
A=$40
B=$48
CASE 1
A=$50
B=$58
CASE 2
A=$60
B=$68
CASE 3
A=$70
B=$78
END SELECT
IF SAYI DIG I=0 THEN GOSUB SIFIR
IF SAYI DIG I=1 THEN GOSUB BIR
IF SAYI DIG I=2 THEN GOSUB IKI
IF SAYI DIG I=3 THEN GOSUB UC
IF SAYI DIG I=4 THEN GOSUB DORT
IF SAYI DIG I=5 THEN GOSUB BES
IF SAYI DIG I=6 THEN GOSUB ALTI
IF SAYI DIG I=7 THEN GOSUB YEDI
IF SAYI DIG I=8 THEN GOSUB SEKIZ
IF SAYI DIG I=9 THEN GOSUB DOKUZ
NEXT

GOTO BASLA
;------------------------------------------------------------------------------- 
SIFIR:
LCDOUT $FE, A, $0E, $1F, $1B, $1B, $1B, $1B, $1B, $1B ' 0 üst
LCDOUT $FE, B, $1B, $1B, $1B, $1B, $1B, $1B, $1F, $0E ' 0 alt
RETURN

BIR:
LCDOUT $FE, A, $06, $06, $06, $06, $06, $06, $06, $06 ' 1 ust
LCDOUT $FE, B, $06, $06, $06, $06, $06, $06, $06, $06 ' 1 alt
RETURN

IKI:
LCDOUT $FE, A, $1F, $1F, $03, $03, $03, $03, $03, $1F ' 2ust
LCDOUT $FE, B, $1F, $18, $18, $18, $18, $18, $1F, $1F ' 2 alt
RETURN

UC:
LCDOUT $FE, A, $1F, $1F, $03, $03, $03, $03, $03, $1F ' 3 ust
LCDOUT $FE, B, $1F, $03, $03, $03, $03, $03, $1F, $1F ' 3 alt
RETURN

DORT:
LCDOUT $FE, A, $1B, $1B, $1B, $1B, $1B, $1B, $1B, $1F ' 4ust
LCDOUT $FE, B, $1F, $03, $03, $03, $03, $03, $03, $03 ' 4alt
RETURN

BES:
LCDOUT $FE, A, $1F, $1F, $18, $18, $18, $18, $18, $1F ' 5ust
LCDOUT $FE, B, $1F, $03, $03, $03, $03, $03, $1F, $1F ' 5alt
RETURN

ALTI:
LCDOUT $FE, A, $1F, $1F, $18, $18, $18, $18, $18, $1F ' 6ust
LCDOUT $FE, B, $1F, $1B, $1B, $1B, $1B, $1B, $1B, $1F ' 6alt
RETURN

YEDI:
LCDOUT $FE, A, $1F, $1F, $03, $03, $03, $03, $03, $03 ' 7ust 
LCDOUT $FE, B, $03, $03, $03, $03, $03, $03, $03, $03 ' 7alt
RETURN

SEKIZ:
LCDOUT $FE, A, $1F, $1B, $1B, $1B, $1B, $1B, $1B, $1F ' 8ust
LCDOUT $FE, B, $1F, $1B, $1B, $1B, $1B, $1B, $1B, $1F ' 8alt
RETURN

DOKUZ:
LCDOUT $FE, A, $1F, $1B, $1B, $1B, $1B, $1B, $1B, $1F ' 9ust
LCDOUT $FE, B, $1F, $03, $03, $03, $03, $03, $1F, $1F ' 9alt
RETURN

elektro77

emeğinize sağlık. En kısa zamanda deneyeceğim.
16f628 ile yaptınız heralde değilmi? azılıma bakınca öyle görünüyor.
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

Elektronikprojem

Teşekkürler.Evet 16f628 ile yaptım.

elektro77

Algoritmayı denedim.Ektedir.
Fakat birkaç denemeden sonra bu mantıkla örneğin bir voltmetre tasarlamak oldukça zor gibi göründü. Yada benim sınırlı bilgim buna yeterli gelmeyecek.
Sayın updating
bu mantıkla  bir adc okuma yapmanız mümkünmü.
saygılarımla
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

Powered by EzPortal