Yrd. Doç.Dr. Bülent ÇOBANOĞLU. Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 1
|
|
- Volkan Bozgüney
- 7 yıl önce
- İzleme sayısı:
Transkript
1 B Yrd. Doç.Dr. Bülent ÇOBANOĞLU Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 1
2 PIC Mikro denetleyici Programlama Assembly programlama dili, çoğu zaman özel alanlarda geliştirilen yazılımlarda kullanılan alt seviyeli bir yazılım dili olarak tanımlanır. Bu dilin komutları, bilgisayarın doğrudan işlettiği makine dili komutlarının birebir karşılığıdır. Bu nedenle bu dil için makine dili de denilebilir. Her ne kadar uzman programcıların özel alanlarda kullandığı bir dil olarak tanımlansa da, programcılar istedikleri takdirde her türlü uygulamayı bu dil ile geliştirebilirler ya da kullandıkları üst düzey dilaltından çağırabilecekleri procedurler/altprogramlar yazabilirler. Assembly diliyle yazılmış bir program(.asm) assembler derleyicisi (MPASM) ile makine diline (.hex) çevrilir. PIC lerin belki de yaygın olarak kullanılmasının sebeplerinden biride Assembly haricinde C, Basic, Pascal ve Fortran dilleri ile de programlanabilmesidir. En yaygın kullanılan C derleyicileri arasında ; Hitech PIC C/XC8, CCS C, MicroC, FED C, C30 C derleyicileri sayılabilir. C Dili ile MCU programlama aşamaları 2 Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU
3 MPLAB Programı içinde tanımlanan Derleyiciler ve Farkları Örnek bir programda derleyici bellek kullanım oranları /gs_mplab3.aspx Genellikle Assembly kod satırları C den daha fazladır. Fakat daha az bellek kullanımı sağlar. Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 3
4 DOSYA UZANTILARI Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 4
5 .C den.hex uzantıya dönüşüm Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 5
6 .C den.hex uzantıya dönüşüm Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 6
7 PIC mikro denetleyicileri assembly dili ile programlayabileceğimiz gibi C, BASIC, PASCAL gibi yüksek seviyeli bir programlama dili ile de programlamayabilirsiniz. Assembly dilinin kendine özgü komutları ve bu komutların yazılış şekilleri vardır. Ortalama bir PIC mikro denetleyicisi (PIC16F84, PIC16F877 gibi) komut setinde 35 adet komut bulunmaktadır. Azaltılmış komut seti (RISC) kullanılması, komutlarının öğrenilmesinin ve program yazılmasının kolay olması yanında programın kısa sürede yazılabilmesini sağlar. Bu 35 komutun ne işe yaradığını ve PIC-Assembly yazım kurallarını bilerek PIC'ler için her çeşit programı yazabilirsiniz. Komutların büyük bir kısmı 1 saat çevrimi (tetikleme sinyali - clock/4) sırasında gerçekleştirilirken, test ve dallanma komutları 2 saat çevrimi/saykılı sırasında gerçekleştirilir. Komutların kullanımı sırasında, komutların içerisine farklı anlamlara sahip semboller / harfler yerleştirilir. Şekil 1'de, PIC MCU da kullanılan komutların içerisinde bulunan sembollerin / harflerin anlamları tablo şeklinde sunulmaktadır. Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 7
8 Kodları yazmak için herhangi bir programa ihtiyacımız yoktur. Kod yazma işlemini her türlü metin editöründe yapabiliriz. Örneğin Windows içindeki not defteri (notpad) programı bunun için uygundur. Fakat MPLAB ( adresinden indirilebilir) programı içindeki editörün kullanılması görsel açıdan kolaylık sağlayacaktır. Çünkü MPLAB içindeki assembly editörü komutları özelliklerine göre farklı renklerde, sabitleri farklı renklerde, açıklamaları farklı renklerde vs. yazmakta ve program içerisindeki MPASM isimli assembler derleyicisi ile yazılan programın anında simülasyonu yapılabilmekte ve test edilebilmektedir. Aşağıda aynı programın (BTP202.ASM) hem not defteri hem de MPLAB ile yazılmış halini görüyorsunuz: 8 Hazırlayan:Yrd.Doç.Dr.Bül ent ÇOBANOĞLU
9 GENEL ASSEMBLY KOMUT FORMATI PIC Assembly komut yapısında yer alan simgeler; Komut/İşlem kodu (OpCode); Örnek: ADDWF f,d Kaydedici/Değişken (f); Örnek: ADDWF f,d Hedef (d); Örnek: ADDWF f,d İşlenen (Operand); Sabit/Literal yada etiket,örnek: ADDLW k, GOTO Don ve bit (b) Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 9
10 ASSEMBLY KOD YAZIM BİÇİMİ Assembly dili yazım formatı/biçimi 4 alandan oluşmaktadır, bunlar; Etiket(Label), Komut kodu (OpCode), İşlenen (Operand) ve Açıklama (Comment) alanlarıdır. Etiket ve açıklama alanları seçimliktir yani isteğe bağlıdır. Etiket Alanı Komut Kodu (OpCode) İşlenen (Operand) Açıklama DON: MOVLW h 0F ; W kaydedicisine heksadesimal 0F sayısını aktarılmıştır Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 10
11 ASSEMBLY KOD YAZIM BİÇİMİ Assembly dili yazım formatı/biçimi 4 alandan oluşmaktadır, bunlar; Etiket(Label), Komut kodu (OpCode), İşlenen (Operand) ve Açıklama (Comment) alanlarıdır. Etiket ve açıklama alanları seçimliktir yani isteğe bağlıdır. Etiket Alanı Komut Kodu (OpCode) ve Direktifler İşlenen (Operand) Açıklama Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 11
12 ASSEMBLER TALİMATLARI PIC mikro denetleyici (PIC16F84, PIC16F877 gibi) komut setinde 35 adet komut bulunduğunu söylemiştik. Program yazarken bu komutlar haricinde bazı Assembler derleyici talimatlarını da kullanmamız gerekir. Bunlar; Assembler Komutu LIST #INCLUDE ORG EQU Açıklama PIC Mikro denetleyici seçme komutudur. Program, hangi PIC için yazıldı ise programın başında LIST P=16F877 komutuyla mutlaka belirtilmelidir Normalde program yazmaya başlamadan önce program içinde tüm kaydedicileri tek tek tanıtmamız gerekir. Bunu her seferinde yapmak yerine tüm bu tanımlamaların yapıldığı ve.inc uzantısı ile kaydedilmiş dosyaları programımız içinden çağırabiliriz. Böylece her program için bu zahmetten kurtulmuş oluruz. Bu dosyalarda ayrıca kaydedicilerin bitlerinin isimleri gibi bilgiler de yer almaktadır. Dolayısıyla dosyayı programımıza ekledikten sonra bitleri numaraları ile değil, isimleri ile belirtebiliriz. Kullanım şekli: INCLUDE "P16F877.INC Hangi programın MCU belleğinde hangi adreste tutulacağını tanımlar. Origin kelimesinden türetilen ORG komutu iki amaç için kullanılır; 1.Program komutlarının hangi adresten itibaren başlayacağını belirtmek için kullanılır. Reset vektörünün 0000h adresinde olduğunu daha önce söylemiştik. { ORG 0x00; burada program başlangıcını belirledik } 2. Eğer donanım kesmesi (interrupt) kullanılacaksa, ORG komutu ile donanım kesmesi ile çalıştırılacak program parçacığının adresi de belirtilmelidir. Kesme vektörü de 0004h adresinde yer alıyordu. { ORG 0x04; burada ise kesme programcığı başlangıcını belirledik}. Atama komutudur. Bu komut İngilizce EQUAL kelimesinden türetilmiştir. Assembler sabitlerini veya RAM adreslerini tanımlar. Kullanım şekli: SAYAC EQU 48h; SAYAC isimli GPR kaydedicisi 48 nolu adrese atar. CBLOCK-ENDC Kullanıcının tanımladığı kaydedicilere adres atarken, eğer kaydedici sayısı fazla ise tek tek EQU komutu kullamak yerine CBLOCK-ENDC komutları kullanılabilir. Aşağıdaki komut satırı ile sırası ile 05,05 ve 07. adreslere SAYAC1, SAYAC2 ve SAYAC3 değişkenleri atanmıştır. CBLOCK H 05 SAYAC1, SAYAC2, SAYAC3 ENDC END Programın sonu. Programın nerede bittiği END komutu ile mutlaka belirtilmelidir. Derleyici END komutunu bulamadığı zaman programı derleyemez ve hata verir. $ Program sayıcının o anki yerini döndürür. 5 komut aşağı gitmek için $ +5, yukarı gitmek için $ -5 şeklinde de kullanılabilir. Kullanım şekli: GOTO $ RETLW komutu yerine kullanılır. RETLW komutu ilealt alta yazılan veriler, dt komutu ile yan yana yazılır. dt BANKSEL, BANKISEL Bank değiştirme komutu. Örneğin BANK1 e geçmek için BSF STATUS,5 komutu yerine Bank1 deki herhangi bir kaydedicinin 12 ismi yazılarak BANKSEL TRISB bank1 e geçilir. BANKISEL ise BANK2 ve BANK3 ü kullanmak için IRP bitini 1 yapar Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU
13 ASSEMBLER TALİMATLARI Assembler Komutu #DEFINE #UNDEFINE fill constant, variable SET code config Açıklama Sembolik sabitlerin tanımlanmasını sağlar. C dilinde de geçerlidir. Örnek: #define LED PORTB,0 #define _XTAL_FREQ , #define position(x,y,z) (Y-(2 * Z +X)) #DEFINE ile bildirilen sembolik sabitlerin değerini program içerisinde değiştirmek için kullanılır. Örnek: #undefine LED #define LED PORTD,7 Fill komutu, program belleğinin kullanılmayan bellek alanlarını belli bir sabit veya Assembly komutu ile doldurur. Örneğin; fill (NOP), 10 gibi Sabit tanımlamak için kullanılır. Değişkenlere başlangııç değeri vermede kullanılır. Program içerisinde değeri tekrar değişecekse variable tercih edilir. EQU komutunun işlevine sahiptir. [Etiket] code [ROM bellek adresi] ORG komutuna benzer. Bellek adresini etiketler config _HS_OSC & _WDT_OFF & _LVP_OFF Konfigürasyon bitlerini ayarlar da/db/de/dw/ data Prgoram belleğinde string veya karakter saklarlar. db, de, dt, dw, data benzer işlevlere sahiptir. Örnek; da "abcdef" 13 Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU
14 ASSEMBLER TALİMATLARI Assembler Komutu Açıklama If, else if, else, endif if sayi < 50 incf speed, F else decf speed, F endif while, endw #Ifdef, #ifndef Koşul doğru olduğu sürece döngü çalışır. Koşullu karar yapısıdır. If bloğu endif ile sonlandırılır Ifdef, bir sembolik ismin bildirildiğini sorgulamaktayken, ifndef bir sembolik ismin bildirilmediğini sorgulamaktadır. Örnek Kullanım; define UsePORTB #ifndef UsePORTB MyPort equ PORTC ;Eğer UsePORTB tanımlı değilse Port C yi kullan MyTris equ TRISC #else MyPort equ PORTB ; Eğer UsePORTB tanımlı ise Port B yi kullan MyTris equ TRISB #endif macro Assembly diline özgü fonksiyon tanımlamak (makro yazmak) için kullanılır. Kullanım şekli; Etiket macro [arg1, arg2..., argn] :: endm 14 Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU
15 ASSEMBLER TALİMATLARI: macro örneği add macro num1,num2 if num1>0xff ;Eğer num1>255 ise exitm ;makrodan çık else if num2>0xff ;Eğer num2>255 ise exitm ;makrodan çık else movlw num1 ; W=num1 movwf Sonuc ;Sonuc=W movlw num2 ; W=num2 addwf Sonuc,F ;Sonuc=Sonuc+W endif endif endm ;'add' isimli MACRO yu sonlandır Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 15
16 SAYILARIN GÖSTERİMİ Yazım formatında bir önemli konu da sayıların gösterim şeklidir. Assembly içinde aksi belirtilmedikçe her sayı onaltılık tabanda kabul edilir. Aşağıdaki tabloda hangi tabandaki sayının nasıl gösterildiği yer almaktadır Kullanım Sayı Tabanı 23 Onaltılık (hexadecimal) sayı sistemi 0x23 Onaltılık (hexadecimal) sayı sistemi 23h Onaltılık (hexadecimal) sayı sistemi h'23' Onaltılık (hexadecimal) sayı sistemi d'12' Onluk(Decimal) sayı sistemi.12 Onluk(Decimal) sayı sistemi b'1011' İkili(Binary) sayı sistemi G veya A G ASCII O 574 Octal(Sekizli) sayı sistemi Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 16
17 PIC16F84 / PIC16F877 KOMUT SETİ Ortalama bir PIC mikro denetleyicisi (PIC16F84/PIC16F877 gibi) komut setinde 35 adet komut bulunmaktadır. PIC komutlarını 3 ayrı başlık altında inceleyebiliriz; Byte yönlendirmeli komutlar Bit yönlendirmeli komutlar Sabit (direkt veri) işleyen komutlar ve kontrol komutları Komutların yazılış biçimlerini açıklarken bazı tanımlama harfleri kullanacağız, bunların anlamı; Sembol Açıklama b 8 bitlikkaydedicinin ilgili bitini gösteren tanımlayıcı d Hedef seçici; d = 0 veya W ise Sonuç W kaydedicisinde tutulur d = 1 veya F ise Sonuç f kaydedicisinde tutulur Varsayılan değer d = 1 dir. f k W PC Kaydedici (file register) {örneğin PORTB, STATUS gibi} Sabit bir sayı veya etiket W kaydedicisi (akümülatör) Program Sayıcı (Program Counter) Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 17
18 Assembly Komutları Hazırlayan: Y.Doç.Dr.Bülent ÇOBANOĞLU 18
19 Byte yönlendirmeli komutlar: Sembol Tanımlamaları : f - Register File Adress: kayıtçı adı veya adresi (0x00 ile 0x7F) w - Akümülatör, çalışma kayıtçısı b - Bit tanımlayıcısı; 8 bitlik kayıtçının 0~7 arasındaki bir biti veya etiket. (EQU komutu ile adresi tanımlanmış olması gerekir) d - Destination : Gönderilecek yer; komutun çalıştırılmasından sonra sonucun nereye yazılacağını belirler. d = 0 - W kayıtçısına, d = 1 - dosya kayıtçısına k - Sabit bir sayı (0x0C veya 0CH, B, 10D) veya adres etiketi x - 0 yada 1 önemli değil TO - Zaman aşımı biti (Time-out bit) 19 PD - Güç kesimi biti (Power-down)
20 BİT İŞLEM KOMUTLARI Sabit (Direkt Veri) İşleyen Komutlar Ve Kontrol Komutları: Sembol Tanımlamaları : f - Register File Adress: kayıtçı adı veya adresi (0x00 ile 0x7F) w - Akümülatör, çalışma kayıtçısı b - Bit tanımlayıcısı; 8 bitlik kayıtçının 0~7 arasındaki bir biti veya etiket. (EQU komutu ile adresi tanımlanmış olması gerekir) d - Destination : Gönderilecek yer; komutun çalıştırılmasından sonra sonucun nereye yazılacağını belirler. d = 0 - W kayıtçısına, d = 1 - dosya kayıtçısına k - Sabit bir sayı (0x0C veya 0CH, B, 10D) veya adres etiketi x - 0 yada 1 önemli değil TO - Zaman aşımı biti (Time-out bit) PD - Güç kesimi biti (Power-down) 20
21 Mantıksal Komutlar RLF, sayıyı 2 ile çarpmada RRF, sayıyı 2 ye bölmede Kullanılabilir. Elde bitinin işleme katıldığını unutmayalım. 21 Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU
22 Aritmetiksel-Mantıksal İşlem Örnekleri (3/3) S7. k=i+j+20 işlemini Assembly dili ile gerçekleştiriniz. C Dili Assembly Karşılığı Açıklama 22 Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU
23 Çalışma Sorusu: Dereceyi- Fahrenayta çeviren programı yazınız. Formül: 1 e Tümleyen 2 ye Tümleyen Aritmetiği (1s Complement & 2s Complement) Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 23
24 XC8 derleyici için MicroC için asm { //birden fazla Assembly komutu } asm tek bir asm komutu Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 24
25 Aritmetiksel-Mantıksal İşlem Örnekleri (1/3) S1: W kaydedicisi içerisindeki h 0A sayısı ile h 13 sayısını toplayıp, sonucu B portunda gösteren program parçasını yazınız? Çözüm: MOVLW h 0A ADDLW h 13 MOVWF PORTB S2. W kaydedicisinin ilk 4 bitini (LSB tarafını) sıfırlayan fakat son 4 bitini (MSB tarafın ı) olduğu gibi bırakan komut satırını yazınız. Çözüm: MOVLW h 37 ANDLW h F0 S3: W=W*3 işlemini PIC Assembly komutları ile gerçekleştiriniz? Çözüm: MOVLW d 03 ; W kaydedicisine bir değer aktardık. W=03 MOVWF PORTB BCF STATUS,C RLF PORTB,F ; W içeriği PORTB ye aktarıldı. PORTB=03 ; Öncesinde elde bayrağı(c biti) sıfırlandı ;PORTB içeriği C ile birlikte bir bit sola kaydırıldı. PORTB=03*2 ADDWF PORTB,W ;PORTB ile W kaydedicisinin içeriğini topla sonucu W kaydedicisine aktar. W= 03* Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU
26 Aritmetiksel-Mantıksal İşlem Örnekleri (2/3) S4: PORTB ye bağlı ledleri sürekli yakıp- söndüren program parçasını yazınız. Çözüm: S5. Sürekli bir şekilde PORTB deki verileri PORTC ye gönderen programı yazınız. Çözüm: S6. Farzedelim ki odanın içerisindeki lambayı RB5 ile odanın dışındaki lambayı ise RB2 ile kontrol ediyoruz. Odanın dışındaki lamba açıkken odanın içerisindeki lambayı söndüren programı yazınız. Çözüm: 26 Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU
27 Assembly Kod Şablonu LIST P=16F877 #INCLUDE "P16F877.INC" ORG 0X00 GOTO BASLA BASLA BANKSEL TRISB CLRF TRISB BANKSEL PORTB MOVLW 0X0A ADDLW 0X13 MOVWF PORTB GOTO $ END Tanımlamalar, Başlık/Kütüphane dosya tanımlamaları Ana program Program Sonu Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 27
28 Önce Proje dosyası oluşturulur. Bunun için Project Project Wizard seçilir Gelen «Welcome» penceresi «Next-İleri» butonuna basılarak geçilir. Bir sonraki pencereden «Select Device» kullanacağımız PIC seçilir. Kullanacağımız C veya Assembly derleyicisini seçiyoruz. Assembly için MPASM seçilir. Bir sonraki pencereden Proje klasörü seçilir ve projeye isim verilir. İsim vermede değişken ismi tanımlama kurallarına dikkat edilir. Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 28
29 Proje klasörünün oluştuğu solda gelen.mcp uzantılı dosya ile Görülür. «.asm» uzantılı kaynak dosyasını yazmak için File New File Seçilir. Artık programımızı yazıp File Save As menüsünden.asm uzantılı olarak kaydediyoruz. Bu.asm uzantılı dosyayı Projemize eklemek için Source File üzerinde iken mouse ile Sağ Click Add Files seçilir. Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 29
30 S4 de sorulan PORTB ye bağlı ledleri sürekli yakıp- söndüren programın tamamını yazıp MPLAB SIM ile simülasyonunu yapalım. MPLAB SIM, Debugger menüsünden seçilir. Step into simgesi ile adım adım çalıştırılır. Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 30
31 S4 de sorulan PORTB ye bağlı ledleri sürekli yakıp- söndüren programın tamamını yazıp MPLAB SIM ile simülasyonunu yapalım. Değişken ve kaydedici içeriklerini görmek İçin ya MPLAB da View den Watch seçilerek yada Proteus ile simülasyon yapılır. Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 31
32 Assembly LED ve Buton Uygulamaları Örnek 2: PORD nin 0. bitine bağlı ledi yakan/söndüren program MicroC XC8 Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 32
33 Örnek 3: PORTB ye bağlı 8 ledi dörtlü olarak (ilk önce MSB tarafı daha sonra LSB tarafı olacak şekilde) yakıp, söndüren bir flaşör devresi ve programı: C kodu #include <xc.h> #define _XTAL_FREQ void main(void) { TRISB = 0; PORTB = 0b ; while(1) { delay_ms(100); //çift alt tire asm ("SWAPF _PORTB,F"); delay_ms(100); } } Assembly kodu 33 Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU
34 Örnek4: Tek bir buton ile led yakıp söndüren program parçası U1 OSC1/CLKIN RA0 OSC2/CLKOUT RA1 RA2 MCLR RA3 RA4/T0CKI PIC16F84A RB0/INT RB1 RB2 RB3 RB4 RB5 RB6 RB D1 Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU R1 4k7 ;Assembly Kodu BASLA BTFSC PORTA,0 ;Butona basıldı mı GOTO BASLA BSF PORTB,0 ; LED i yak. BUTON_OFF BTFSS PORTA,0 ;Butonu serbest bırak GOTO BUTON_OFF BCF PORTB,0 ; LED i söndür GOTO BASLA END //C Kodu while(1){ if (RA0==0) RB0=0x01; else RB0=0; 34 }
35 LED ve Buton Uygulamaları Örnek 4: PORD nin 0. bitine bağlı buton basılı olduğu sürece RB0 a bağlı Ledi yakan programın Assembly kodu C kodu; 35 Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU
36 Örnek 5: PORTA nın 0.bitine (RA0) bağlı butona basınca PORTC ilk iki bitini yakan, 1. bitine (RA1) bağlı butona basılınca ise bu iki ledi söndüren programı yazınız. LIST P=16F877A INCLUDE <P16F877A.INC> ORG 0X00 GOTO BASLA BASLA BANKSEL TRISC ;BANK1'E GEC MOVLW 0X07 MOVWF TRISA ;PORTA GIRIS MOVWF ADCON1 ;PORTA VE PORTE DIGITAL CLRF TRISC ;PORTC CIKIS BANKSEL PORTC ;BANK0'A GEÇ CLRF PORTC BUTON1 BTFSC PORTA,0 ;RA0==0 mı? GOTO BUTON1 BUTON2 BTFSC PORTA,1 ;RA1==0 mi? GOTO LEDYAK CLRF PORTC GOTO BUTON1 LEDYAK MOVLW 0XFF MOVWF PORTC GOTO 36 BUTON2 END Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU
37 Örnek 6. Yürüyen Işık (Kara Şimşek)Uygulaması Assembly Kodu Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 37 C Kodu #include<xc.h> void main() { PORTB=0; TRISB=0; PORTB=1; STATUS=0; #asm SOL NOP RLF PORTB,F BTFSS PORTB,7 GOTO SOL SAG NOP RRF PORTB,F BTFSS PORTB,0 GOTO SAG GOTO SOL #endasm }
38 Çalışma Soruları 1. RA0 a bağlı butona basınca PORTBye bağlı ledlerin ilk dördü, RA1 e bağlı butona basınca son dördünü yakan programı yazınız. 2. PORTB ye bağlı ledler üzerinde binary (ikili) saydırma işlemi yapan PORTA nın RA0 ucuna bağlı butona basıldığında azaltacak, RA1 ucuna bağlı butona basıldığında artıracak programı yazınız. 3. PORTB ye bağlı ledler üzerinde PORTA nın RA0 ucuna bağlı butona basıldığında tek sayıları, RA1 ucuna bağlı butona basıldığında çift sayıları saydıracak programı yazınız. 4. Örnek 6 da verilen yürüyen ışık uygulamasını tamamen C komutları ile (1 sn lik gecikme) yazınız. Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 38
PIC Mikrodenetleyiciler. Hazırlayan:Öğr.Gör.Bülent ÇOBANOĞLU 1
PIC Mikrodenetleyiciler PIC MCU= CPU + I/O pinleri+ Bellek(RAM/ROM) Hazırlayan:Öğr.Gör.Bülent ÇOBANOĞLU 1 PIC Mikro denetleyici Programlama Assembly programlama dili, çoğu zaman özel alanlarda geliştirilen
Detaylı# PIC enerjilendiğinde PORTB nin 0. biti 1 olacak #PIC enerjilendiğinde PORTA içeriğinin tersini PORTB de karşılık gelen biti 0 olacak
# PIC enerjilendiğinde PORTB nin 0. biti 1 olacak - LIST=16F84 - PORTB yi temizle - BANK1 e geç - PORTB nin uçlarını çıkış olarak yönlendir - BANK 0 a geç - PORT B nin 0. bitini 1 yap - SON ;pic tanıtması
DetaylıDeney No Deney Adı Tarih. 3 Mikrodenetleyici Portlarının Giriş Olarak Kullanılması / /201...
3.1 AMAÇ: Assembly programlama dili kullanarak mikrodenetleyici portlarını giriş olarak kullanmak. GİRİŞ: Bir portun giriş olarak mı yoksa çıkış olarak mı kullanılacağını belirten TRIS kaydedicileridir.
DetaylıB.Ç. / E.B. MİKROİŞLEMCİLER
1 MİKROİŞLEMCİLER RESET Girişi ve DEVRESİ Program herhangi bir nedenle kilitlenirse ya da program yeniden (baştan) çalıştırılmak istenirse dışarıdan PIC i reset yapmak gerekir. Aslında PIC in içinde besleme
Detaylı3.2 PIC16F84 Yazılımı PIC Assembly Assembler Nedir?
3.2 PIC16F84 Yazılımı 3.2.1 PIC Assembly 3.2.1.1 Assembler Nedir? Assembler,bir text editöründe assembly dili kurallarına göre yazılmış olan komutları pıc in anlayabileceği heksadesimal kodlara çeviren
Detaylı16F84 ü tanıt, PORTB çıkış MOVLW h FF MOWF PORTB
MİKROİŞLEMCİLER VE MİKRODENETLEYİCİLER 1 - DERS NOTLARI (Kısım 3) Doç. Dr. Hakan Ündil Program Örneği 9 : Gecikme altprogramı kullanarak Port B ye bağlı tüm LED leri yakıp söndüren bir program için akış
DetaylıBSF STATUS,5 ;bank1 e geçiş CLRF TRISB ;TRISB=00000000 BCF STATUS,5 ;bank0 a geçiş
+5V ĠġĠN ADI: PORTB DEKĠ LEDLERĠN ĠSTENĠLENĠ YAKMAK/SÖNDÜRMEK GND C F C F X R 5 U OSC/CLKIN RA0 OSC/CLKOUT RA RA RA RA/T0CKI PICFA RB RB RB RB RB RB 0 R R R R5 R R R R D D D D D5 D D D INCLUDE CONFIG P=FA
DetaylıMikroişlemciler Ara Sınav---Sınav Süresi 90 Dk.
HARRAN ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ Mikroişlemciler Ara Sınav---Sınav Süresi 90 Dk. 15 Nisan 2014 1) (10p) Mikroişlemcilerle Mikrodenetleyiceleri yapısal olarak ve işlevsel olarak karşılaştırarak
DetaylıAssembler program yazımında direkt olarak çizgi ile gösterilmemesine rağmen ekranınız ya da kağıdınız 4 ayrı sütunmuş gibi düşünülür.
BÖLÜM 4 4. PIC PROGRAMLAMA Herhangi bir dilde program yazarken, öncelikle kullanılacak dil ve bu dilin editörünü kullanabilmek önemlidir. Biz bu işlem için Mplab programını kullanacağız. Bu sebeple aslında
DetaylıUYGULAMA 05_01 MİKRODENETLEYİCİLER 5.HAFTA UYGULAMA_05_01 UYGULAMA_05_01. Doç.Dr. SERDAR KÜÇÜK
UYGULAMA 05_01 MİKRODENETLEYİCİLER 5.HAFTA Doç.Dr. SERDAR KÜÇÜK PORTB den aldığı 8 bitlik giriş bilgisini PORTD ye bağlı LED lere aktaran MPASM (Microchip Pic Assembly) Doç. Dr. Serdar Küçük SK-2011 2
DetaylıProgram Kodları. void main() { trisb=0; portb=0; while(1) { portb.b5=1; delay_ms(1000); portb.b5=0; delay_ms(1000); } }
Temrin1: PIC in PORTB çıkışlarından RB5 e bağlı LED i devamlı olarak 2 sn. aralıklarla yakıp söndüren programı yapınız. En başta PORTB yi temizlemeyi unutmayınız. Devre Şeması: İşlem Basamakları 1. Devreyi
DetaylıPIC ASSEMBLY VE MAKROLAR
PIC ASSEMBLY VE MAKROLAR Abdullah UNUTMAZ Ağustos 2009 Pic Assembly ve Makrolar H U N R O B O T X M A K A L E L E R #DEFI E #DEFINE anahtar sözcüğü ile kendi tanımladığımız değişkenler, yada include dosyalarında
DetaylıPIC 16F84 VE TEK BUTONLA BĐR LED KONTROLÜ
DERSĐN ADI : MĐKROĐŞLEMCĐLER II DENEY ADI : PIC 16F84 VE ĐKĐ BUTONLA BĐR LED KONTROLÜ PIC 16F84 VE TEK BUTONLA BĐR LED KONTROLÜ PIC 16F84 VE VAVĐYEN ANAHTAR ĐLE BĐR LED KONTROLÜ ÖĞRENCĐ ĐSMĐ : ALĐ METĐN
DetaylıLCD (Liquid Crystal Display )
LCD (Liquid Crystal Display ) Hafif olmaları,az yer kaplamaları gibi avantajları yüzünden günlük hayatta birçok cihazda tercih edilen Standart LCD paneller +5 V ile çalışır ve genellikle 14 konnektor lü
DetaylıBÖLÜM 3 3. PIC 16F8X KOMUTLARI 3.1.KULLANILAN SEMBOLLER: 3.2.KOMUTLAR VE KULLANIM ÖRNEKLERİ
BÖLÜM 3 3. PIC 16F8X KOMUTLARI 3.1.KULLANILAN SEMBOLLER: f : File register, Herhangi bir değişkenle tarif edilen bir saklayıcı adresi (0h-7Fh) k : Sabit değer (genellikle (0-FF arasında) d : Destination
DetaylıW SAYAC SAYAC SAYAC. SAYAC=10110110 ise, d=0 W 01001001
MOVLW k Move Literal to W k sabit değerini W saklayıcısına yükler. MOVLW h'1a' W 1A. Hexadecimal 1A sayısı W registerine yüklenir. MOVF f,d Move f f saklayıcısının içeriğini W veya f'e yükler. MOVF SAYAC,0
DetaylıYrd.Doç. Dr. Bülent ÇOBANOĞLU. Sakarya Üniversitesi, Teknoloji Fakültesi
B Yrd.Doç. Dr. Bülent ÇOBANOĞLU Sakarya Üniversitesi, Teknoloji Fakültesi Kesmeler Kesme (Interrupt), mikro denetleyicinin gerçekleştirdiği işleme bakmaksızın belirli durumların/olayların olması durumunda
Detaylı1. PORTB ye bağlı 8 adet LED i ikili sayı sisteminde yukarı saydıracak programı
1. PORTB ye bağlı 8 adet LED i ikili sayı sisteminde yukarı saydıracak programı yazınız. SAYAC1 EQU 0X20 devam movlw B'00000000' call DELAY incf PORTB,f ;Akü ye 0' sabit değerini yaz. ;Aküdeki değer PORTB
DetaylıMIKROBILGISAYARLAR ve PIC PROGRAMLAMA TEST ÇALIŞMA SORULARI
MIKROBILGISAYARLAR ve PIC PROGRAMLAMA TEST ÇALIŞMA SORULARI S1. Aşağıdaki eleman ya da birimlerden hangisi genel bir bilgisayar sisteminin donanımsal yapısında yer almaz? a) Mikroişlemci (CPU) b) Bellek
DetaylıPIC TABANLI, 4 BASAMAKLI VE SER
PIC TABANLI, 4 BASAMAKLI VE SERİ BAĞLANTILI 7 SEGMENT LED PROJESİ Prof. Dr. Doğan İbrahim Yakın Doğu Üniversitesi, Mühendislik Fakültesi, Bilgisayar Mühendisliği Bölümü, Lefkoşa E-mail: dogan@neu.edu.tr,
DetaylıPIC MIKRODENETLEYICILER-3: GECĠKME ve KESME PROGRAMLARI
P I C 1 6 F 8 4 / P I C 1 6 F 8 7 7 K O M U T S E T İ PIC MIKRODENETLEYICILER-3: GECĠKME ve KESME PROGRAMLARI Hazırlayan:Öğr.Gör.Bülent ÇOBANOĞLU 1 Gecikme Programları Örnek 1: Tek bir döngü ile yaklaģık
DetaylıKOMUT AÇIKLAMALARI VE ÖRNEKLERİ
KOMUT AÇIKLAMALARI VE ÖRNEKLERİ Komut açıklamalarında kullanılan harflerin anlamları: F : File(dosya), kaynak ve bilgi alınan yeri ifade eder. D : Destination (hedef), işlem sonucunun kaydedileceği yer.
DetaylıMİKRO DENETLEYİCİLER II DERS NOTLARI (VİZE KONULARI) Prof. Dr. Hakan Ündil Bahar-Vize
MİKRO DENETLEYİCİLER II DERS NOTLARI (VİZE KONULARI) Prof. Dr. Hakan Ündil 2014-2015 Bahar-Vize BÖLÜM 7 - LOJİK İŞLEM KOMUTLARI 7.1. RLF Komutu (Bir bit Sola Kaydırma) Bir file register içinde bulunan
DetaylıIŞIĞA YÖNELEN PANEL. Muhammet Emre Irmak. Mustafa Kemal Üniversitesi Mühendislik Fakültesi. Elektrik-Elektronik Mühendisliği Bölümü
IŞIĞA YÖNELEN PANEL Muhammet Emre Irmak Mustafa Kemal Üniversitesi Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği Bölümü e-posta: memreirmak@gmail.com ÖZET Işığa yönelen panel projesinin amacı,
DetaylıMPLAB IDE ve ISIS ile ASSEMBLY DİLİNDE UYGULAMA GELİŞTİRMEK
MPLAB IDE ve ISIS ile ASSEMBLY DİLİNDE UYGULAMA GELİŞTİRMEK 1.1 Programın Başlatılması 1.2 Yeni Proje Oluşturma 1.3 MCU Seçimi Yrd.Doç.Dr.Bülent Çobanoğlu 1.4 MCU Programlama Dil Seçimi 1.5 Proje İsmi
DetaylıMİKRO DENETLEYİCİLER II DERS NOTLARI (Vize) Prof. Dr. Hakan Ündil Bahar
MİKRO DENETLEYİCİLER II DERS NOTLARI (Vize) Prof. Dr. Hakan Ündil 2016-2017 Bahar (MİKRODENETLEYİCİLER I DERS NOTLARI nın devamıdır. Sadece VİZE için olan kısımdır) 6. BÖLÜM - ALT PROGRAMLAR Program içerisinde
DetaylıPIC16F877A nın Genel Özellikleri
BÖLÜM 3 PIC16F877A nın Genel Özellikleri 3.1 Mikrodenetleyici Mimarisi 3.2 PIC16Fxxx Komut Seti 3.3 PIC16F877A Bellek Organizasyonu 3.4 Giriş/Çıkış Portları 3.5 STATUS ve TRIS Kaydedicileri 3.6 Kesme ve
Detaylıİstanbul Teknik Üniversitesi IEEE Öğrenci Kolu
Step Motor Step motor fırçasız elektrik motorlarıdır. Step motorlar ile tam bir tur dönmeyi yüksek sayıda adımlara bölebilmek mümkündür (200 adım). Step motorları sürmek için, sürekli gerilim uygulamak
DetaylıPIC MİKROKONTROLÖR TABANLI MİNİ-KLAVYE TASARIMI
PIC MİKROKONTROLÖR TABANLI MİNİ-KLAVYE TASARIMI Prof. Dr. Doğan İbrahim Yakın Doğu Üniversitesi, Bilgisayar Mühendisliği Bölümü, Lefkoşa, KKTC E-mail: dogan@neu.edu.tr, Tel: (90) 392 2236464 ÖZET Bilgisayarlara
DetaylıSistem Gereksinimleri: Uygulama Gelistirme: PIC Mikroislemcisinin Programlanmasi: PIC Programlama Örnekleri -1
PIC Programlama Örnekleri -1 Sistem Gereksinimleri: PIC programlayicinin kullanilabilmesi için; Win98 ve üstü bir isletim sistemi Paralel port 60 MB veya daha üstü disk alani gerekmektedir. Ancak programlama
DetaylıPIC MİKRODENETLEYİCİLERİN HAFIZA YAPISI. Temel olarak bir PIC içerisinde de iki tür hafıza bulunur:
PIC MİKRODENETLEYİCİLERİN HAFIZA YAPISI Temel olarak bir PIC içerisinde de iki tür hafıza bulunur: 1. Program Hafızası (ROM,PROM,EPROM,FLASH) Programı saklar, kalıcıdır. 2. Veri Hafızası (RAM, EEPROM)
DetaylıKONFİGÜRASYON BİTLERİ
MİKROİŞLEMCİLER VE MİKRODENETLEYİCİLER 1 - DERS NOTLARI (Kısım 2) Doç. Dr. Hakan Ündil INCLUDE Dosyalar Assembly programlarını yazarken kullanılacak register adreslerini (EQU) komutu ile tanımlamak hem
DetaylıHacettepe Robot Topluluğu
Hacettepe Robot Topluluğu Makaleler PIC ile LED Yakıp Söndüren Devre PIC ile LED Yakıp Söndüren Devre Canol Gökel - 13 Ekim 2006 Giriş Merhaba arkadaşlar, bu makalemizde PIC'e yeni başlayanlar için basit
DetaylıDERS 7 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 örnek programlar Dallanma komutları Sonsuz döngü
DERS 7 PIC 16F84 PROGRAMLAMA İÇERİK PIC 16F84 örnek programlar Dallanma komutları Sonsuz döngü Ders 7, Slayt 2 1 PROGRAM 1 RAM bellekte 0x0C ve 0x0D hücrelerinde tutulan iki 8-bit sayının toplamını hesaplayıp
DetaylıKomutların İşlem Süresi
Komutların İşlem Süresi PIC lerde ŞARTSIZ dallanma komutları (GOTO, CALL, RETURN gibi ) hariç tüm Assembly dili komutları 1 saat saykılı (cycle) çeker. ŞARTLI dallanma komutları ise normalde 1 saat saykılı
Detaylı5. BÖLÜM - DÖNGÜ (ÇEVRİM) ve Z BAYRAĞI
MİKRO DENETLEYİCİLER II DERS NOTLARI Prof. Dr. Hakan Ündil 2015-2016 Bahar-Vize (MİKRODENETLEYİCİLER I DERS NOTLARI nın devamıdır. Sadece VİZE için olan kısımdır) 5. BÖLÜM - DÖNGÜ (ÇEVRİM) ve Z BAYRAĞI
DetaylıLCD (Liquid Crystal Display)
LCD (Liquid Crystal Display) LCD ekranlar bize birçok harfi, sayıları, sembolleri hatta Güney Asya ülkelerin kullandıkları Kana alfabesindeki karakterleri de görüntüleme imkanını verirler. LCD lerde hane
DetaylıYILDIZ TEKNİK ÜNİVERSİTESİ ELEKTRİK - ELEKTRONİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ. EasyPic6 Deney Seti Kullanım Kılavuzu
YILDIZ TEKNİK ÜNİVERSİTESİ ELEKTRİK - ELEKTRONİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ EasyPic6 Deney Seti Kullanım Kılavuzu İstanbul 2009 İçindekiler EasyPic6 Deney Setinin Tanıtımı... 1 PIC16F887
DetaylıBu yürütme, Prof. Dr. Hakan ÜNDİL (Bir haftalık derse ait ders notudur)
MİKROİŞLEMCİ (MİKROPROSESÖR - CPU) NEDİR? Mikroişlemci bir programının yapmak istediği işlemleri, (hafızada bulunan komutları) sırasıyla ile işleyerek icra eder (yürütür). Bu yürütme, 1. Komutun Program
DetaylıMikroişlemci: Merkezi işlem biriminin fonksiyonlarını tek bir yarı iletken tümleşik devrede birleştiren programlanabilir sayısal elektronik devre
MİKRODENETLEYİCİLER Mikroişlemci: Merkezi işlem biriminin fonksiyonlarını tek bir yarı iletken tümleşik devrede birleştiren programlanabilir sayısal elektronik devre Mikrodenetleyici: Bir mikroişlemcinin
DetaylıPD103 BUTON LED UYGULAMA DEVRESİ UYGULAMA ÖRNEKLERİ MALZEME LİSTESİ
PD103 BUTON LED UYGULAMA DEVRESİ UYGULAMA ÖRNEKLERİ MALZEME LİSTESİ AÇIK DEVRE ŞEMASI BASKI DEVRESİ PIC16F84 UYGULAMA-1 İŞLEM BASAMAKLARI 1. PIC16F84 te A portunun ilk bitine (RA0) bağlı butona basıldığında,
DetaylıT.C. MİLLÎ EĞİTİM BAKANLIĞI DENİZCİLİK MİKRODENETLEYİCİ 2
T.C. MİLLÎ EĞİTİM BAKANLIĞI DENİZCİLİK MİKRODENETLEYİCİ 2 ANKARA 2013 Bu modül, mesleki ve teknik eğitim okul/kurumlarında uygulanan Çerçeve Öğretim Programlarında yer alan yeterlikleri kazandırmaya yönelik
DetaylıMİKRODENETLEYİCİLER ÖRNEK PROGRAMLAR
MİKRODENETLEYİCİLER ÖRNEK PROGRAMLAR Bülent ÖZBEK Örnek Program -1- B Portuna bağlı LED leri Yakma Bu programda PIC16F84 mikrodenetleyicisinin B portuna bağlı 8 adet LED in yanması sağlanacaktır. Bunu
DetaylıMİKRODENETLEYİCİLER II DERS NOTLARI Prof. Dr. Hakan ÜNDİL Bahar-FİNAL KISMI
MİKRODENETLEYİCİLER II DERS NOTLARI Prof. Dr. Hakan ÜNDİL 2016-2017 Bahar-FİNAL KISMI (NOT: Derslerde işlenen diğer örnekler, Lab. Deneyi ve Sayı Sistemleri de Final sınavına dahildir) BÖLÜM 7 - LOJİK
DetaylıMikroişlemcili Sistemler ve Laboratuvarı 8.Hafta
SAKARYA ÜNİVERSİTESİ Bilgisayar ve Bilişim Bilimleri Fakültesi Bilgisayar Mühendisliği Bölümü Mikroişlemcili Sistemler ve Laboratuvarı 8.Hafta Doç.Dr. Ahmet Turan ÖZCERİT Doç.Dr. Cüneyt BAYILMIŞ Yrd.Doç.Dr.
DetaylıPIC MCU ile UYGULAMALAR
PIC MCU ile UYGULAMALAR Gecikme Programları TMRO Gecikmesi 7 Segment Göstergeler Sayaç Örnekleri Trafik Sinyalizasyonu ADC-DAC Uygulamaları Kesmeler ve Uygulamaları Tuş Takımı (Keypad) Uygulamaları Paralel
DetaylıELEKTRİK-ELEKTRONİK TEKNOLOJİSİ
T.C. MİLLÎ EĞİTİM BAKANLIĞI ELEKTRİK-ELEKTRONİK TEKNOLOJİSİ MİKRODENETLEYİCİ PROGRAMLAMA 523EO0020 Ankara, 2012 Bu modül, mesleki ve teknik eğitim okul/kurumlarında uygulanan Çerçeve Öğretim Programlarında
DetaylıHyper Terminal programı çalıştırıp Uygun COM portu ve iletişim parametrelerinin ayarları yapılıp bekletilmelidir.
DENEY 1: PIC 16F84 DEN BİLGİSAYARA VERİ GÖNDERME Bu uygulamada verici kısım PIC16F84, alıcı kısım ise bilgisayardır. Asenkron iletişim kurallarına göre her iki tarafta aynı parametreler kullanılacaktır.
Detaylı# PIC enerjilendiğinde PORTB nin 0. biti 1 olacak #PIC enerjilendiğinde PORTA içeriğinin tersini PORTB de karşılık gelen biti 0 olacak
# PIC enerjilendiğinde PORTB nin 0. biti 1 olacak - başla - LIST=16F84 - PORTB yi temizle - BANK1 e geç - PORTB nin uçlarını çıkış olarak yönlendir - BANK 0 a geç - PORT B nin 0. bitini 1 yap - SON ;pic
Detaylıhttp://nptel.ac.in/courses/webcourse-contents/iit KANPUR/microcontrollers/micro/ui/Course_home3_16.htm Yrd.Doç. Dr.
http://nptel.ac.in/courses/webcourse-contents/iit KANPUR/microcontrollers/micro/ui/Course_home3_16.htm B Yrd.Doç. Dr. Bülent ÇOBANOĞLU PIC MİKRODENETLEYİCİ VE AİLESİ PIC, Microchip firması tarafından üretilen,
DetaylıMİKROİŞLEMCİ (MİKROPROSESÖR - CPU) NEDİR? Prof. Dr. Hakan ÜNDİL (Bir haftalık derse ait ders notudur)
MİKROİŞLEMCİ (MİKROPROSESÖR - CPU) NEDİR? Prof. Dr. Hakan ÜNDİL (Bir haftalık derse ait ders notudur) Mikroişlemci bir programının yapmak istediği işlemleri, (hafızada bulunan komutları) sırasıyla ile
DetaylıMİKROİŞLEMCİLER VE MİKRO DENETLEYİCİLER 2 DERS NOTLARI Prof. Dr. Hakan Ündil 2013-2014 Bahar-Final
MİKROİŞLEMCİLER VE MİKRO DENETLEYİCİLER 2 DERS NOTLARI Prof. Dr. Hakan Ündil 2013-2014 Bahar-Final BÖLÜM 7 - LOJİK İŞLEM KOMUTLARI 7.1. RLF Komutu (Bir bit Sola Kaydırma) Bir file register içinde bulunan
Detaylı7. Port Programlama. mikroc Dili ile Mikrodenetleyici Programlama Ders Notları -42- Şekil 2.1. Atmega16 mikrodenetleyici pin şeması
7. Port Programlama Şekil 2.1. Atmega16 mikrodenetleyici pin şeması A, B, C ve D portları için Register yapıları benzer şekildedir. -42- 7.1. Port Yönlendirme Mikrodenetleyicinin A, B, C, D ve varsa diğer
DetaylıMİKRODENETLEYİCİLER 2 DERS NOTLARI Prof. Dr. Hakan ÜNDİL Bahar-Final Kısmı
MİKRODENETLEYİCİLER 2 DERS NOTLARI Prof. Dr. Hakan ÜNDİL 2014-2015 Bahar-Final Kısmı (NOT: Derslerde işlenen diğer örnekler de Final sınavına dahildir) BÖLÜM 7 - LOJİK İŞLEM KOMUTLARI 7.1. RLF Komutu (Bir
DetaylıİÇİNDEKİLER 1. KLAVYE... 11 2. KLAVYE RB0... 19 3. KLAVYE RBHIGH... 27 4. 4 DİSPLAY... 31
İÇİNDEKİLER 1. KLAVYE... 11 Satır ve Sütunlar...11 Devre Şeması...14 Program...15 PIC 16F84 ile 4x4 klavye tasarımını gösterir. PORTA ya bağlı 4 adet LED ile tuş bilgisi gözlenir. Kendiniz Uygulayınız...18
DetaylıMİKRODENETLEYİCİ GELİŞTİRME SETİ TASARIM VE UYGULAMALARI. öğrencilerine eğitimleri esnasında iş hayatında karşılaşabilecekleri kontrol işlemleri ve
MİKRODENETLEYİCİ GELİŞTİRME SETİ TASARIM VE UYGULAMALARI Muciz ÖZCAN 1 Hidayet GÜNAY 2 1 Selçuk Üniversitesi KONYA 2 MPG Makine Prodüksiyon Grubu Arge- Müh. KONYA Özet Haberleşme, Elektronik, Kontrol ve
DetaylıBÖLÜM 1 ALT PROGRAMLAR 1.1.ALTPROGRAM NEDİR?
0 BÖLÜM 1 ALT PROGRAMLAR 1.1.ALTPROGRAM NEDİR? Programlamada döngü kadar etkili bir diğer kullanım şekli de alt programlardır. Bu sistemde işlemin birkaç yerinde lazım olan bir program parçasını tekrar
DetaylıROBOT KOL BİTİRME PROJESİ DÖNEM İÇİ RAPORU
ROBOT KOL BİTİRME PROJESİ DÖNEM İÇİ RAPORU İSMAİL KAHRAMAN-ŞEYMA ÖZTÜRK 200713151027 200513152008 Robot Kol Mekanizması: Şekildeki robot-insan benzetmesinden yola çıkarak, bel kısmı tekerlekli ve sağa-sola-ileri-geri
DetaylıTUŞ TAKIMI (KEYPAD) UYGULAMALARI
12. Bölüm TUŞ TAKIMI (KEYPAD) UYGULAMALARI Tuş Takımı (Keypad) Hakkında Bilgi Tuş Takımı Uygulaması-1 74C922 Tuş Takımı Enkoder Entegresi Tuş Takımı Uygulaması-2 (74C922 İle) Bu bölümde tuş takımı diğer
DetaylıPİC HAKKINDA KISA KISA BİLGİLER GİRİŞ/ÇIKIŞ PORTLARI
PİC HAKKINDA KISA KISA BİLGİLER GİRİŞ/ÇIKIŞ PORTLARI Bazı pinler çevre birimleri ile çoklanmıştır. Peki bu ne demek? Mesela C portundaki RC6 ve RC7 pinleri seri iletişim için kullanılır. Eğer seri iletişimi
DetaylıONDOKUZ MAYIS ÜNİVERSİTESİ
ONDOKUZ MAYIS ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRİK ELEKTRONİK MÜHENDİSLİĞİ MİKROİŞLEMCİLER LABORATUVARI PİC UYGULAMA NOTLARI BÖLÜM 1. 1.1 16F84 Mickrodenetleyicisi: PIC16F84 18 pinli bir mikrodenetleyicidir.
DetaylıDENEY-1. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ
DENEY-1 SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ 31 DENEY-1-1: BİT YÖNLENDİRMELİ KOMUTLAR İLE PİNLERE DEĞER GÖNDERME AMAÇ: Mikrodenetleyici pinlerine
DetaylıÖĞRENME FAALİYETİ-1 1. MİKRODENETLEYİCİ PROGRAMI YAZMA
ÖĞRENME FAALİYETİ-1 AMAÇ ÖĞRENME FAALİYETİ-1 Uygun ortam sağlandığında kurulacak devre için eksiksiz olarak yapabileceksiniz. mikrodenetleyici programını ARAŞTIRMA Mikrodenetleyici çeşitlerini aaştırınız.
DetaylıELEKTRİK-ELEKTRONİK TEKNOLOJİSİ
T.C. MİLLÎ EĞİTİM BAKANLIĞI ELEKTRİK-ELEKTRONİK TEKNOLOJİSİ MİKRODENETLEYİCİ İLE DİJİTAL İŞLEMLER 523EO0021 Ankara, 2012 Bu modül, mesleki ve teknik eğitim okul/kurumlarında uygulanan Çerçeve Öğretim Programlarında
DetaylıMikro denetleyicili Uygulama devresi bileşenleri
Mikro denetleyicili Uygulama devresi bileşenleri Bir PIC mikro denetleyici ile uygulama gerçekleştirebilmek için ; Besleme devresi, Reset sinyali, Osilatör devresi, Uygulama devresi elemanlarına İhtiyaç
DetaylıPIC UYGULAMALARI. Öğr.Gör.Bülent Çobanoğlu
PIC UYGULAMALARI STEP MOTOR UYGULAMLARI Step motor Adım motorları (Step Motors), girişlerine uygulanan lojik sinyallere karşılık analog dönme hareketi yapan fırçasız, sabit mıknatıs kutuplu DC motorlardır.
Detaylı8 Ledli Havada Kayan Yazı
8 Ledli Havada Kayan Yazı Hazırlayan Eyüp Özkan Devre Şemasının ISIS Çizimi Devre şemasından görüldüğü gibi PIC16F84A mikro denetleyicisinin Port B çıkışlarına 8 adet LED ve dirençler bağlı. 4MHz lik kristal
DetaylıDERS 5 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 bacak bağlantıları PIC 16F84 bellek yapısı Program belleği RAM bellek Değişken kullanımı Komutlar
DERS 5 PIC 16F84 PROGRAMLAMA İÇERİK PIC 16F84 bacak bağlantıları PIC 16F84 bellek yapısı Program belleği RAM bellek Değişken kullanımı Komutlar Ders 5, Slayt 2 1 BACAK BAĞLANTILARI Ders 5, Slayt 3 PIC
DetaylıKONTROL VE OTOMASYON KULÜBÜ
KONTROL VE OTOMASYON KULÜBÜ C DİLİ İLE MİKROKONTROLÖR PROGRAMLAMA EĞİTİMİ Serhat Büyükçolak Ahmet Sakallı 2009-2010 Güz Dönemi Eğitimleri Mikrokontrolör Gömülü sistemlerin bir alt dalı olan mikrokontrolör
DetaylıMikroişlemci Programlama Aşamaları
Mikroişlemci Programlama Aşamaları 1. Önce yapılacak işe uygun devre şeması çizilmelidir. Çünkü program bu devreye göre yapılacaktır. Biz ISIS programında devreyi kurabiliriz. Bu devrederb4 çıkışına bağlı
DetaylıBİLİŞİM TEKNOLOJİLERİ
T.C. MİLLÎ EĞİTİM BAKANLIĞI BİLİŞİM TEKNOLOJİLERİ MİKRODENETLEYİCİ Ankara, 2014 Bu modül, mesleki ve teknik eğitim okul/kurumlarında uygulanan Çerçeve Öğretim Programlarında yer alan yeterlikleri kazandırmaya
DetaylıMİKROİŞLEMCİ (Microprocessor) NEDİR?
MİKROİŞLEMCİ (Microprocessor) NEDİR? Merkezi İşlem Birimi, (CPU Central Processing Unit) olarak adlandırılır. Bilgisayar programının yapmak istediği işlemleri yürütür.(yerine getirir) CPU belleğinde bulunan
DetaylıBUTON KONTROLÜ. Pull-Down Bağlantı (Ters Bağlantı) Butona basılmadığında Giriş=1 Butona basıldığında Giriş=0
BUTON KONTROLÜ PULL-DOWN BAĞLANTI PULL-UP BAĞLANTI PIC girişlerine bağlı botonlara basılıp basılmadığını bilmez. Sadece o girişte 0 mı var 1 mi var onu bilir. Bağlantının türüne göre bu eşleştirmeyi sizin
DetaylıMicroprocessors and Programming
Microprocessors and Programming Dr. Kadir ERKAN Department of Mechatronics Engineering Fall : 2013 10/20/2013 1 Interpretation of Assembly Instructions ADDLW h 10 ; literal (constant) oriented ADDWF TOPLA,d
DetaylıDENEY-2. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ
DENEY-2 SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ 31 DENEY 2-1: YEDİ SEGMENT GÖSTERGE ÜZERİNDE VERİ GÖRÜNTÜLEME AMAÇ: Mikrodenetleyicinin portuna
DetaylıBank değiştirme Bir banktan diğerine geçmek için STATUS register denilen özel registerin 5. ve 6. bitinin durumunu değiştirmek gerekir.
File register haritası Bank 0 Bank 1 0 00 INDF 0 80 INDF 0 01 TNF0 0 81 OPTION 0 02 PCL 0 82 PCL 0 03 STATUS 0 83 STATUS 0 04 FSR 0 84 FSR 0 05 PORT A 0 85 TRISA 0 06 PORT B 0 86 TRISB 0 07 0 87 EEPROM
DetaylıMİKRODENETLEYİCİLER II DERS NOTLARI Prof. Dr. Hakan ÜNDİL Bahar-FİNAL KISMI
MİKRODENETLEYİCİLER II DERS NOTLARI Prof. Dr. Hakan ÜNDİL 2017-2018 Bahar-FİNAL KISMI BÖLÜM 7 - LOJİK İŞLEM KOMUTLARI 7.1. RLF Komutu (Bir bit Sola Kaydırma) Bir file register içinde bulunan bitlerin (C
DetaylıMTM 305 MĠKROĠġLEMCĠLER
KARABÜK ÜNĠVERSĠTESĠ TEKNOLOJĠ FAKÜLTESĠ MEKATRONĠK MÜHENDĠSLĠĞĠ BÖLÜMÜ MTM 305 MĠKROĠġLEMCĠLER ArĢ. Gör. Emel SOYLU ArĢ. Gör. Kadriye ÖZ Assembly Dili Assembly programlama dili, kullanılan bilgisayar
DetaylıHacettepe Robot Topluluğu
Hacettepe Robot Topluluğu PIC Assembly Dersleri 4. Ders: Kesme Đşlemleri ve Timer Bileşeninin Kullanımı HUNRobotX - PIC Assembly Dersleri 4. Ders: Kesme Đşlemleri ve Timer Bileşeninin Kullanımı Yazan:
DetaylıBu dersimizde pic pinlerinin nasıl input yani giriş olarak ayarlandığını ve bu işlemin nerelerde kullanıldığını öğreneceğiz.
Ders-2: ---------- Bu dersimizde pic pinlerinin nasıl input yani giriş olarak ayarlandığını ve bu işlemin nerelerde kullanıldığını öğreneceğiz. Hazırlanan programlarda pic in zaman zaman dış ortamdan bilgi
DetaylıT.C FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ EET-302 MİKROİŞLEMCİLER LABORATUVARI DENEY FÖYÜ
T.C FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHİSLİĞİ EET-302 MİKROİŞLEMCİLER LABORATUVARI DENEY FÖYÜ Doç. Dr. Melih Cevdet İNCE DENEYLER Deney_1: 8085 Simülatör Kullanımı Deney_2: 8085
DetaylıPIC MCU da Komutların İşlem Süresi
PIC MCU da Komutların İşlem Süresi PIC lerde dallanma komutları (GOTO, CALL, RETURN gibi ) hariç tüm Assembly dili komutları 1 saat saykılı (cycle) çeker. Hazırlayan: Dr.Bülent ÇOBANOĞLU 1 PIC in Bir Komutu
DetaylıPIC PROGRAMLAMA STEP MOTOR SÜRÜCÜ VE KONTROL AMAÇ NEDİR? Unipolar Step Motorlar. Uç TESPİTİ NASIL YAPILIR?
PIC PROGRAMLAMA hbozkurt@mekatroniklab.com www.mekatroniklab.com.tr STEP MOTOR SÜRÜCÜ VE KONTROL AMAÇ Bu ayki sayımızda, özellikle CNC ve robotik uygulamalarda oldukça yaygın olarak kullanılan step motorlar
DetaylıMİKRO DENETLEYİCİLER 1 DERS NOTLARI (Final) Prof. Dr. Hakan Ündil Güz
MİKRO DENETLEYİCİLER 1 DERS NOTLARI (Final) Prof. Dr. Hakan Ündil 2014-2015 Güz 1.1. Sayı Sistemleri Sayı sistemleri iyi anlaģılmadan mikroiģlemcilerle (ya da mikrodenetleyicilerle) uğraģmak ve onların
DetaylıMİKRODENETLEYİCİLER I DERS NOTLARI Prof. Dr. Hakan Ündil 2014-2015 Güz (Vize sonuna kadar olan kısımdır.)
MİKRODENETLEYİCİLER I DERS NOTLARI Prof. Dr. Hakan Ündil 2014-2015 Güz (Vize sonuna kadar olan kısımdır.) 1. BÖLÜM GİRİŞ ve SAYI SİSTEMLERİ 1.1. Devrelendirilmiş Lojik Şimdiye kadar Sayısal Devreler ve
DetaylıEEProm 24C08 UYGULAMA AMAÇ 24C08 MCU_VCC. e r : d e G. Sayfa - 1
V0 DT2 PIC16F877 1KΩ 1KΩ Prom UYGULAMA AMAÇ prom kalıcı hafıza entegresine, PIC16F77 mikrodenetleyicisinin PD0 ve PD1 portları üzerinden bilgi kayıt edip, kayıt edilen bilgiyi Prom dan okuyarak LCD ekranda
DetaylıLPC2104 Mikro Denetleyicisini KEIL İle Programlamak
LPC2104 Mikro Denetleyicisini KEIL İle Programlamak Program yazabilmek için öncelikle komutları tanımamız ve ne işe yaradıklarını bilmemiz gerekir. Komutlar yeri geldikçe çalışma içerisinde anlatılacaktır.
DetaylıHacettepe Robot Topluluğu
Hacettepe Robot Topluluğu PIC Assembly Dersleri 3. Ders: Bazı Özel İşlev Yazmaçları ve Altprogram Kavramı HUNRobotX - PIC Assembly Dersleri 3. Ders: Bazı Özel İşlev Yazmaçları ve Altprogram Kavramı Yazan:
DetaylıADC: Anolog-Digital Çevirici
ADC: Anolog-Digital Çevirici ADC, girişlerine uygulanan akım, gerilim, sıcaklık gibi analog büyüklükleri değerleri ile orantılı olarak çıkışında digital sinyale çeviren devredir. PIC16F877a da 8 kanallı
DetaylıT.C. MİLLÎ EĞİTİM BAKANLIĞI MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) ELEKTRİK ELEKTRONİK TEKNOLOJİSİ
T.C. MİLLÎ EĞİTİM BAKANLIĞI MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) ELEKTRİK ELEKTRONİK TEKNOLOJİSİ MİKRODENETLEYİCİ PROGRAMLAMA ANKARA 2006 Milli Eğitim Bakanlığı tarafından
DetaylıPIC Mikro denetleyiciler ve Programlama. Öğr.Gör.Bülent ÇOBANOĞLU
PIC Mikro denetleyiciler ve Programlama Değerlendirme BaĢarı Puanı: Yıl içi %60+ Final %40 Yıl içi ise; Vize*60+Q1*10+Q2*10+Ödev*15+Devam*5 BaĢarı Ortalaması 40 altı olan FF dir. Diğer notlar, çana göre
DetaylıT.C FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ EET-302 MİKROİŞLEMCİLER LABORATUVARI DENEY FÖYÜ
T.C FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHİSLİĞİ EET-302 MİKROİŞLEMCİLER LABORATUVARI DENEY FÖYÜ Doç. Dr. Melih Cevdet İNCE DENEYLER Deney_1: Program yazma, derleme, pic e yükleme,
Detaylı3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler
Veri Tanımları ve Mantıksal Đşlemler Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Kullanılacak bütün değişkenlerin kullanılmadan önce C derleyicisine bildirilmeleri gerekir.
DetaylıHUNRobotX - Makaleler - Hız Ayarlı Çoklu DC Motor Kontrolü. Makaleler Hız Ayarlı Çoklu DC Motor Kontrolü
Makaleler Hız Ayarlı Çoklu DC Motor Kontrolü Hız Ayarlı Çoklu DC Motor Kontrolü Yazan: Mustafa Tufaner, Düzenleyen: Canol Gökel - 18 Kasım 2006 Giriş Robotikte sıkça kullanılabilecek bir uygulama ile karşınızdayız.
DetaylıT.C. MİLLİ EĞİTİM BAKANLIĞI MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) BİLİŞİM TEKNOLOJİLERİ MİKRODENETLEYİCİLER 1
T.C. MİLLİ EĞİTİM BAKANLIĞI MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) BİLİŞİM TEKNOLOJİLERİ MİKRODENETLEYİCİLER 1 ANKARA 2007 Milli Eğitim Bakanlığı tarafından geliştirilen modüller;
DetaylıDEVRELENDİRİLMİŞ LOJİK
MİKROİŞLEMCİLER VE MİKRODENETLEYİCİLER 1 - DERS NOTLARI (Kısım1) Doç. Dr. Hakan Ündil DEVRELENDİRİLMİŞ LOJİK Lojik (sayısal) Devreleri genel olarak 3 ana grupta inceleyebiliriz ; 1-) Kombinezonsal Lojik
DetaylıBLGM423 Gömülü Sistem Tasarımı
1 BLGM423 Gömülü Sistem Tasarımı İkinci Çalışma Sayısal giriş ucunun çeşitli konum ve hareketlerini algılama Bu çalışmada tipik bir anahtara bağlanmış olarak kullanılan sayısal giriş ucundaki konum ve
DetaylıMikroislemci Kontrollu Prototip Trafik Lambalari ve Geri Sayici
Mikroislemci Kontrollu Prototip Trafik Lambalari ve Geri Sayici Mahmut KISACIK ve Doç.Dr. Hasan KÖMÜRCÜGIL Bilgisayar Mühendisligi Bölümü, Dogu Akdeniz Üniversitesi Gazimagusa-Kuzey Kibris Türk Cumhuriyeti
DetaylıT.C. NİĞDE ÜNİVERSİTESİ MÜHENDİSLİK-MİMARLIK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ
T.C. NİĞDE ÜNİVERSİTESİ MÜHENDİSLİK-MİMARLIK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ GENEL AMAÇLI UZAKTAN KUMANDA MODÜLÜNÜN TASARIMI VE GERÇEKLEŞTİRİLMESİ Danışman Yrd. Doç. Dr. Murat UZAM Hazırlayan
DetaylıMPLAB IDE v7.60 PROGRAMI KULLANIMI
MPLAB IDE v7.60 PROGRAMI KULLANIMI MPLAB IDE programı mikroişlemciler için hazırlanmış bir derleyici programdır. Microchip firması tarafından hazırlanmıştır. (Resim 1) MPLAB programı assembly dilinde simulasyon,
Detaylı