TÜRKÇE SAI PBASIC V.01 SAİ (S@i) Pic serisi 16f84 ve 16f877 nin programlanmasi amacıyla yazılan bir derleyicidir. Komutlarini mikroislemciler için gerekli olan temel komutlar oluşturur. Bunlari ayirmak gerekirse. 1- Atama işlemleri ve Değişken tanımlama gibi komutlardan oluşmaktadir. SAI gelistirilmekte olan bir derleyici. Digerlerinden farkli olan yani turkçe komutlarının olması, Pic basic turlerinde veya diger bilgisayar programlarında kullanılan IF, FOR, NEXT RETURN GOTO gibi komutlar yerine, EGER, DÖNGÜ, SONRA, GERIGIT, GIT gibi terimler kullanıldı. Programlama işlemi esnasindı içice 10 adet dongu veya eger donguleri oluşturulabiliyor. Herkesin programlamaya basladigi zaman yaptigi flip flop lambalar. veya test islemleri için kullandığı, yanıp sönen led lamba vardır. Sai de bunu yapmak için /ORNEK FLASOR PROGRAM CHIP "P16F84" BASLA: PORT B = 1 SON yeterli olacaktır. Eger bir sarta bagli olarak lambanin 3 defa yanip sondukten sonra 3 saniye sonuk olarak beklemesini istiyorsaniz. o zaman EGER komutuyla programiniza sart yerlestirebilirsiniz. Bunun için sayici bir değisken tanimlamanızda gerekecektir. Bunu kullanarak trafik isiklari na ait bir prograam ve devre gelistirebilirsiniz. /ORNEK FLASOR PROGRAM CHIP "P16F84" SETET PORT B = ‘ ‘00000000’ BASLA: PORT B = 1 SAYAC := SAYAC + 1 EGER SAYAC = 3 OLURSA SON olacaktır. saide mantık diger programlama dillerinden farksiz. ##SANIYE Bir kutuphane eger kendiniz bir komut yazdiysaniz. Bunu kutuphaneye atip istediginiz zaman kullanabilirsiniz. Bu komutu calistirmak için ise < Komutun adini yazmaniz yeterli. Eger dongu kullanmak istiyorsanız DONGU komutuyla bir islemi birden fazla gerceklestiribelirsiniz. Mesela bir lambanin sadece 20 defa yanip sonmesini istiyorsaniz. DONGU SAYAC = 20 PORT B := 1 SONRA yazmak yeterli olaaktir. Sainin bir avantajida yeterli gelmedigi durumlarda, asm kodlari eklemenize imkan tanimasidiri. Kendi asm kodlarinizi komut haline donusturup buradada kullanabilirsiniz. Bunun için asm kodlarinin başina * yaznaniz yeterli olacaktir. SAI Için Geliştirilen Komutlar SAI Için Geliştirilmekte olan Komutlar > Grafik Ekran LCD omutları ve 24C64 ve 24C32 Serisi epromlara okuma ve yazma işlemleri …. Özel istek Komutları SAI (Seyit Ahmet INAN) PIC16F84, PIC16F877 Microchiplerinin daha kolay programlanması amacıyla gerçekleştirilen bir derleyicidir. Bu derleyiciyi kullanarak, geliştirmiş olduğunuz cihazları kontrol edebilecek, devreler geliştirebileceksiniz. ve bilgisayar ile bağlantısını sağlayacaksınız. Ayrıca dış asm ve kendi komutunuzu kendinizin oluşturabilecegi bir modulde bulunmakta. Bu derleyici ile uyumlu çalışan, SAIBORD işlerinizi kolaylaştıracaktır. Bu derleyicide komutlar Türkçedir. Örnek; /KULLANILAN CHIP TANIMI /KULLANILAN DEGISKEN TANIMLARI /PORTLARIN KURULMASI /INTERRUPT KUR INTKUR DENETLE BASLA: /0 KANALDAN SICAKLIK DEGERINI OKU
GIT BASLA DENETLE: Su anda geliştirilen mevcut komutlar; CHIP (KT) Ayrıntılar yakında..!! |
|||||
ATAMA KOMUTLARI
:=
=
ARİTMETİK OPERATÖRLER
+
–
++
—
BİT OPERATÖRLERİ
<<
>>
<+>
MANTIKSAL KOMUTLAR
EGER … OLURSA … EGERSON
DONGÜ KOMUTLARI
DONGU … SONRA
PORT KOMUTLARI
SETET
PIN[A…E][0…7]
PORT [A…E]
KÜTÜPHANE OLUŞTURMA KOMUTLARI
## ADC
## LCD
## ÖZEL KÜTÜPHANE
ALT PROGRAM KOMUTLARI
GIT
MODUL … GERIGIT MODUL YERİNE < KULLINILABİLİR
DİĞER KOMUTLAR
SAYFA
ASM ASM KOMUTLARI
*ASM KOMUTLARI
<ETİKET
CHIP "CHİP TÜRÜ"
SAI PBD iki adet flash eprom programlayabilir. Bunlar
PIC 16F84
PIC 16F877
CHIP "P16F84"
CHIP "P16F877"
SETET PORTX = GİRİŞ/ÇIKIŞ DEĞERİ
Portların giriş veya Çıkış olarak ayarlamak için
SETET komutu kullanılır. Giriş Çıkış degeri olarak sayı verilir. veya
binary olarak ‘H……L" Şeklinde ‘00010111’ olarakda verilebilir.
0->Çıkış
1->Giriş
SETET PORTB = 0
SETET PORTB = 255
SETET PORTA = 0
SETET PORTA = ‘00011111"
DTIP DEĞİŞKEN = İLK DEĞERİ
Programda kullanılan değişkenlerin ve türlerinin tanımlanması.
DTIP SICAKLIK = 30
DTIP HIZ = 20
DTIP SAYAC1 = 0
DTIP SAYAC2 = 60
SAYFA BANK NO
Bank seçimi için kullanılır.
Bank no 1 sayfa 1
Bank no 0 sayfa 0
SAYFA 0
SAYFA 1
ASM ASM KODLARI
Program içerisine ASM Kodları ekleme.
ASM NOP
ASM movlw test, ‘h30’
PINXY = 0/1 PIN AÇIK KAPALI
PBelirtilen portun pinini on of yapar
0 off
1 on
PINA0 = 1
PINA1 = 0
PINB1 = 0
PINC1 = 0
DEĞİŞKEN = PIN PORT PINNO
Belirtilen portun pinin 1 veya 0 olduğunu bulur
1 Buton a basılı yani 0
0 Butona basili değil yani 1
BUTONA = PINB2
BUTONB = PINB3
BUTONC = PINB4
START = PINB5
DEGİŞKEN = PORT PORTX
Belirtilen portu okuyup istenen değiştene aktarır
Port okumak için set edilmelidir. Giriş için 1
SETET PORTC = 255
TEST = PORT C
OKUMA = PORT A
EGER DEGİŞKEN = X OLURSA … EGERSON
Şartlı komutlar yazmak için kullanılır
Şart olarak =, <, > kullanılır.
EGER BUTONA = 1 OLURSA
PORT D = 12
EGERSON
EGER SINIR > 11 OLURSA
SINIR := 1
EGERSON
EGER SINIR < 0 OLURSA
SINIR := 1
EGERSON
LCD> ‘MESAJ’
Port D ye bağlı olan LCD ekrana bilgi göndermek için
Kullanılmadan önce ## LCD Kütüphanesi tanımlanmalıdır.
## LCD
LCD> ‘MERHABA’
LCD> ‘SICAKLIK=’
ATAMA KOMUTU :=
Değişkenlere bilgi aktarmak için kullanılr
SICAKLIK := 65
ADC_LOW := 12
TOPLAMA VE ÇIKARMA DEĞİŞKEN := DEĞİŞKEN +/- DEĞİŞKEN [X]
Toplama ve çıkarmak işlemleri için kullanılır.
A := 5
B := 7
C := A + B
C := A – B
C := C – 1
C := C + 7
ALT PROGRAMLAR ETİKET: … GERIGIT
Program içerisinde alt programları tanımlamak için kullanılır.
Genel kullanım
Etiket Adı:
…
…Komutlar
…
GERIGIT
SANIYE:
DONGU SAYAC1 = 100
BEKLE (10)
SONRA SAYAC1
GERIGIT
DONGÜ OLUŞTURMA DONGU DEĞİŞKEN = X … SONRA DEGİŞKEN
Program içerisinde döngüler oluşturmak amacıyla kullanılır.
DONGU ADET = [X= 0…255]
…KOMUTLAR
SONRA ADET
DONGU LCDSAYAC1 = 3
PORT D = 56
MODUL ENABLE
SONRA LCDSAYAC1
++ VE — DEĞİŞKEN ++/–
Değişkenin değerini 1 artırır veya eksiltir.
DEĞİŞKEN ++
DEĞİŞKEN — SAI PBD Hakkında daha ayrıntılı bilgi ve beta sürümü yakında…!!
|
SAI-PBD PIC BASIC DERLEYICI
Posted in Uncategorized.