pic basic flex pin lcd

Başlatan Tarik konca, 25 Ocak 2017, 17:22:27

Tarik konca

yeni uye ilk yazi

pic basic pronun lcd kutuphanesinde pin baglantilari sirali olmak zorunda buda pcb cizerken zorluk cikariyor

daha once bu sorunla karsilasan bir arkadasin yazisini okumustum bu sitede siteye uye olmadan once

bende bu soruna cozum olarak kendi kutuphanemi yazdim

alttaki resimdede goreceginiz gibi lcd nin data pinlerini istediginiz gibi baglayabilirsiniz

programin ust satirinda olan tanimlamalari degistirmeyi unutmayin

dikkat etmeniz gereken nokta analog pinleri kullanicaksaniz bu pinleri dijital olarak ayarlayin

birde porta.4 open kollektordur cogunlukla kullanicaksaniz 4,7 k ile pullup yapin

pic basic pro dosyasi ve proteus dosyalari ekde

islemci sigorta ayarlarini yapmayi tam bilmiyorum siz kendi kullaniminiza gore yazarsiniz

tam bilmiyorum galiba pbp 2.xx  versiyonla   pbp 3.xx versiyonlar arasinda ayar farkliliklari oluyormus

birazda o yuzden yazmadim
Tek Care Format C:

dnaci

@devre Elinize sağlık, ben de bu kodu proton basic diline çevirdim, aşağıdaki linkten dosyalar indirilebilir:

https://drive.google.com/file/d/1QlybqL-FlDv-NLjvPuugnyEOAo6Wu1oA/view


Proton basic kodu:

'************************* elektroinfo.org *************************
'***************** proton basic flex lcd kütüphanesi ***************
Device = 16F877A
Declare Xtal = 4

Symbol lcd_data_pin_4=PORTB.4 'değiştirilebilir flex lcd pinleri
Symbol lcd_data_pin_3=PORTC.5
Symbol lcd_data_pin_2=PORTD.2
Symbol lcd_data_pin_1=PORTB.1
Symbol lcd_rs_pin=PORTC.1
Symbol lcd_en_pin=PORTD.6

Declare Adin_Res 8       
Declare Adin_Stime 50      
Declare Adin_Tad FRC  
TRISA = %00000001 ' ölçüm yapılan an0 pini, okunan değer 2. satıra gönderiliyor
TRISB = %00000000 
TRISC = %00000000
TRISD = %00000000
TRISE = %00000000
PORTA=0
PORTB=0
PORTC=0
PORTD=0
PORTE=0

Dim sayac As Byte
Dim temp As Byte
Dim tempolc As Byte
Dim tempa As Byte
Dim tempb As Byte
Dim tempc As Byte
Dim ascia As Byte
Dim ascib As Byte
Dim ascic As Byte
Dim deger As Byte

Include "PROTON-FLEX-LCD.inc"  ' bu dosya bas dosyasıyla aynı klasörde olmalı

GoSub lcd_kur
GoSub birinci_satir

For sayac=0 To 14 Step 1
temp = LookUpL sayac,["PROTON FLEX LCD"] 'lcd'ye gönderilen metin
rs=1
GoSub lcdgonder
Next

avoltolc: 
ADcIn 0,tempolc
DelayMS 10
ascia=tempolc/100    
tempa=tempolc/10     
tempb=tempa/10       
tempc=tempb*10       
ascib=tempa-tempc    
tempa=tempa*10       
ascic=tempolc-tempa  
ascia=ascia+48
ascib=ascib+48
ascic=ascic+48 
GoSub ikinci_satir

rs=1
temp=ascia
GoSub lcdgonder
temp=ascib
GoSub lcdgonder
temp=ascic
GoSub lcdgonder
GoTo avoltolc
End


INC dosyası:

Dim rs As Byte
Dim dur As Byte
dur=2

GoTo kutuphane_cikis

lcd_kur:

Output lcd_data_pin_4
Output lcd_data_pin_3
Output lcd_data_pin_2
Output lcd_data_pin_1
Output lcd_rs_pin
Output lcd_en_pin

rs=0
temp=51
GoSub lcdgonder
temp=50
GoSub lcdgonder
temp=40
GoSub lcdgonder
temp=12
GoSub lcdgonder
temp=3
GoSub lcdgonder
temp=1
GoSub lcdgonder
rs=0
temp=128
GoSub lcdgonder
Return

lcdgonder:
lcd_data_pin_4=temp.7
lcd_data_pin_3=temp.6
lcd_data_pin_2=temp.5
lcd_data_pin_1=temp.4
lcd_rs_pin=rs
lcd_en_pin=1
DelayMS dur
lcd_en_pin=0
DelayMS dur
lcd_data_pin_4=temp.3
lcd_data_pin_3=temp.2
lcd_data_pin_2=temp.1
lcd_data_pin_1=temp.0
lcd_rs_pin=rs
lcd_en_pin=1
DelayMS dur
lcd_en_pin=0
DelayMS dur
Return

birinci_satir:
rs=0
temp=128
GoSub lcdgonder
Return

ikinci_satir:
rs=0
temp=192
GoSub lcdgonder
Return

kutuphane_cikis:

Powered by EzPortal