PIC BASIC PRO Öğreniyoruz soru cevapları

Başlatan aster, 19 Mayıs 2005, 17:33:33

gareven


grkn

Merhabalar,yakın zamand ETE hocamızın anlatımıyla pıc basıc pro öğrenmeye başladım fakat forumda gezerken pıc basıc pro ile ilgili bazı picleri desteklemediğini belirtenler olmuş bu konuda bir fikrim olması açısından bu programlama dilini destekleyen yada desteklemeyen pic türlerini nasıl öğrenebilirim.

Tagli

Gökçe Tağlıoğlu

grkn


cetinerdal

Herkese iyi geceler.

Benim sorum şu acaba 16f877 de iki adet analog griş kullanılabilir mi eğer kullanabilirsek bunu pic basic de nasıl yazıyoruz ve kullanıyoruz... kolay gelsin

Enfalx

Pull up nasıl yapabilirim?Düğmeye basınca led yansın tekrar basınca sönsün istiyorum.Baktım ama anlamadım.

0nur

Alıntı yapılan: Enfalx - 12 Temmuz 2014, 15:14:12
Pull up nasıl yapabilirim?Düğmeye basınca led yansın tekrar basınca sönsün istiyorum.Baktım ama anlamadım.

Pull-up adındanda anlaşılacağı üzere yukarı çekili demektir. Yani normalde devreniz 5 volta bağlı butona basılınca 0 volt gidecek. Bu durumda sizin picinizin girişine sürekli 5 volt geleceğinden lojik 1 durumunu değil lojik 0 durumunu değerlendirmeniz gerekecek.


Robotik Elektronik ve PIC Programlama Eğitimleri ;www.electrobotic.org/robotik-elektronik-ve-pic-programlama-egitimleri-2/

HASSAN ULKEM

MERHABA  ARKADAŞLAR 
ben seri iletişimde bir iki butunla iş yaptıktan sonra ör: but bas lede yansın diybut bas diyer led yansn
yapyrum oluyr ama kesme girdikten sonra butonlar işlevsiz oluyr ben hem kesme kulanmak istyrm hemde istediğim zaman butonlarla diyer işlemler yapmak istyorum yani hem kesme hem butonlar aktif oluyrmu yada nasıl olyr...
cvp vrsnz svnrm tşkrlr selam ve saygılar

ayhani

#413
Basit bir seri veri basmam gerek, pic basicte aşağıdaki kodu yazdım. Pek pic basic bilmiyorum. Fakat veri 9600 baud olması gerekirken 9621 baud çıkıyor(salee logic analyzer ile ölçüm yaptım, flowcode ile 9600 baudu yapabiliyorum). Bu normal mi?
Devrede kristal 4mhz harici, master clear 4.7k bağlı.
config _HS_OSC ve config _XT_OSC ile denedim sonuç aynı.

'****************************************************************
'*  Name    : UNTITLED.BAS                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2015 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 3/31/2015                                         *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
#CONFIG
    ifdef PM_USED
        device  pic16F628A, hs_osc, wdt_off, mclr_on, lvp_off, protect_off
    else
        __config _HS_OSC & _WDT_OFF & _MCLRE_ON & _LVP_OFF & _CP_OFF
    endif
#ENDCONFIG
CMCON=7           '16F628 de komparatör pinleri iptal hepsi giriş çıkış
OPTION_REG.7=0    'Dahili pull-up lar AKTİF yapıldı
PortA=0
TrisA=%00000000
PortB=0
TrisB=%00000111

DEFINE HSER_RCSTA 90h ' Enable serial port & continuous receive
DEFINE HSER_TXSTA 24h ' Enable transmit, BRGH = 1
DEFINE HSER_SPBRG 25  ' 9600 Baud @ 0.16%
DEFINE HSER_CLROERR 1 ' Clear overflow automatically

basla:
pause 500
PortB.3=1
pause 200
hserout ["5","4","3","2","1","6","0"]
pause 2000
hserout ["5","4","3","2","1","6","1"]
pause 2000
PortB.3=0
goto basla
En iyi bildiğim şey hiçbir şey bilmediğimdir.

mustafa_cmbz

HS_OSC


ilk baştaki config kısmında osilatör için seçim yapmışsın ama program satırlarının başında kaç mhz kristal kullanacağını belitmemişsin.Sanırım bundan dolayı sorun yaşıyorsun.

HS_OSC


Dediğin zaman yanlış hatırlamıyorsam 4mhz üzeri kristal kullandığında yazman gerekiyor.Ve zaten 9600 için 20mhz felan kullanman daha sağlıklı olacaktır.basic'in help kısmında donanımsal seri iletişim kodlarının olduğu kısma bak orada kaç mhz kristal kullanırsan max ve min. hızları yazıyor.


ayhani

Alıntı yapılan: mustafa_cmbz - 01 Nisan 2015, 05:05:55
HS_OSC


ilk baştaki config kısmında osilatör için seçim yapmışsın ama program satırlarının başında kaç mhz kristal kullanacağını belitmemişsin.Sanırım bundan dolayı sorun yaşıyorsun.

HS_OSC


Dediğin zaman yanlış hatırlamıyorsam 4mhz üzeri kristal kullandığında yazman gerekiyor.Ve zaten 9600 için 20mhz felan kullanman daha sağlıklı olacaktır.basic'in help kısmında donanımsal seri iletişim kodlarının olduğu kısma bak orada kaç mhz kristal kullanırsan max ve min. hızları yazıyor.



Aslında XT_OSC ilede denedim. Fakat kristali 20 mhz yapmak aklıma gelmemişti(Flowcode'da 4mhz yetiyordu), bunu deneyeceğim. Teşekkürler.
En iyi bildiğim şey hiçbir şey bilmediğimdir.

sifirzero

arkadaşlar melabs sitesinden indirdiğim pic basic programını kurdum kullandım 15 gün sonra trail versiyon olduğu için kullanamıyorum.full versiyon nasıl yapıyoruz.crack var olan rakadaşlar verebilirmi.rica etsem
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

sifirzero

olur kardeşim isterim trial değil dimi istersen mail atabilirisn.  serkan_cetinn@hotmail.com
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

OG

Alıntı yapılan: ayhani - 01 Nisan 2015, 00:46:32
Basit bir seri veri basmam gerek, pic basicte aşağıdaki kodu yazdım. Pek pic basic bilmiyorum. Fakat veri 9600 baud olması gerekirken 9621 baud çıkıyor(salee logic analyzer ile ölçüm yaptım, flowcode ile 9600 baudu yapabiliyorum). Bu normal mi?
Devrede kristal 4mhz harici, master clear 4.7k bağlı.
config _HS_OSC ve config _XT_OSC ile denedim sonuç aynı.

'****************************************************************
'*  Name    : UNTITLED.BAS                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2015 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 3/31/2015                                         *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
#CONFIG
    ifdef PM_USED
        device  pic16F628A, hs_osc, wdt_off, mclr_on, lvp_off, protect_off
    else
        __config _HS_OSC & _WDT_OFF & _MCLRE_ON & _LVP_OFF & _CP_OFF
    endif
#ENDCONFIG
CMCON=7           '16F628 de komparatör pinleri iptal hepsi giriş çıkış
OPTION_REG.7=0    'Dahili pull-up lar AKTİF yapıldı
PortA=0
TrisA=%00000000
PortB=0
TrisB=%00000111

DEFINE HSER_RCSTA 90h ' Enable serial port & continuous receive
DEFINE HSER_TXSTA 24h ' Enable transmit, BRGH = 1
DEFINE HSER_SPBRG 25  ' 9600 Baud @ 0.16%
DEFINE HSER_CLROERR 1 ' Clear overflow automatically

basla:
pause 500
PortB.3=1
pause 200
hserout ["5","4","3","2","1","6","0"]
pause 2000
hserout ["5","4","3","2","1","6","1"]
pause 2000
PortB.3=0
goto basla


4MHz @ 9600b çalışmada uretilen datanın hata oranı osilator sıfır hatalı çalışıyorsa 0,16%  yani o da 9600b için 15,36 baud eder
9600+15,36 = 9615,36 baud dur.
Biraz osc hatası varsa biraz da ölçüm hatası 9621 baud gibi degere ulaşmışsınızdır. Bu da 0,21875% hata demektir. Yani sonuç normal.
Seri asenkronun hatasız işlenebilmesi için hiç dikkate alınmayacak bir değer.


resim yüke
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

insect-yol

Mrb arkadaşlar aranızda 2x16 EA DOGM 162-A ekran kullanan varmı kullanımı kodları ve uygulama örneği olan varsa paylaşabilirmi teşekkürler