Mikrokontrolcu Portları {\} /\ Suhap SAHIN

Benzer belgeler
Timer. Suhap SAHIN {\} /\

Sistem Programlama Deney 1

SysTick Kesmesi. Suhap SAHIN {\} /\

Giris {\} /\ Suhap SAHIN

İLERI MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

446 GÖMÜLÜ SİSTEM TASARIMI. Lab 9 UART

Melih Hilmi ULUDAĞ. Yazılım Mühendisi Mekatronik Mühendisi. a aittir.

STM32 ile Gömülü Yazılım Geliştirme - 1

Örnek. int analogpin = 3; int val = 0; void setup() { Serial.begin(9600); } void loop() { val = analogread(analogpin); Serial.

Program Kodları. void main() { trisb=0; portb=0; while(1) { portb.b5=1; delay_ms(1000); portb.b5=0; delay_ms(1000); } }

EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ

Arduino nedir? Arduino donanım ve yazılımın kolayca kullanılmasına dayalı bir açık kaynak elektronik platformdur.

LPC2104 Mikro Denetleyicisini KEIL İle Programlamak

İÇİNDEKİLER. 3 STM32F4 MIKRO-DENETLEYICISI 23 STM32 Ailesi ve STM32F STM32 Ailesi 23 STM32 Mikrodenetleyicileri 30 Numaralandırılması 30

KONTROL VE OTOMASYON KULÜBÜ

DENEY-2. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

void setup() fonksiyonu: Bu fonksiyon program ilk açıldığında bir kere çalışır ve gerekli kalibrasyon, setup komutlarını buraya yazarız.

DENEY 9-A : PIC 16F877 ve LM-35 ile SICAKLIK ÖLÇÜM UYGULAMASI

DENEY-1. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

Mikroişlemciler. Microchip PIC

ARDUINO NEXTION UYGULAMASI. Bu makale, Arduino UNO kartı ile Nextion HMI ekranlarının nasıl kontrol edildiğini anlatmaktadır.

Code Composer Studio İndirilmesi ve Kurulması

TUŞ TAKIMI (KEYPAD) UYGULAMALARI

Erzurum Teknik Üniversitesi RobETÜ Kulübü Robot Eğitimleri. ARDUİNO EĞİTİMLERİ I Arş. Gör. Nurullah Gülmüş

Deney 2. Kesme Uygulamaları

BQ Modbus Analog Giriş Kartı 6 Kanal 4 20mA. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

İLERI MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

İşletim Sistemlerine Giriş

1. Ders Giriş. Mikroişlemcili Sistem Uygulamaları

DENEY-7. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

Adım Motoru: açıya adım. Şekil 8.2 tekyönlü. Lab 8. Siyah (A) Mavi ( B ) Kırmızı (B)

IOT UYGULAMALARINA GİRİŞ

BQ Modbus Analog Giriş Kartı 6 Kanal PT100 - PT1000. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

V Daq Kurulum adımları

idea rsbasic KOMUTLARI

Değişkenler tanımlanırken onlara ne tür veriler atanabileceği de belirtilir. Temel veri türleri oldukça azdır:

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ MEKATRONİK MÜHENDİSLİĞİ BÖLÜMÜ ELEKTRONİK SİSTEMLER LABORATUVARI 1

Haftalık Ders Saati Okul Eğitimi Süresi

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUARI MİKROİŞLEMCİLİ A/D DÖNÜŞTÜRÜCÜ

Arduino Uno ile Hc-Sr04 ve Lcd Ekran Kullanarak Mesafe Ölçmek

Mikroişlemci Nedir? Mikrodenetleyici Nedir? Mikroişlemci iç yapısı Ders Giriş. Mikroişlemcili Sistem Uygulamaları

Genel Kavramlar. Bilecik Şeyh Edebali Üniversitesi Gömülü Sistemler Ders Notları-2

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1

XILINX PROGRAMI İLE PROJE HAZIRLANMASI İÇİNDEKİLER

LCD (Liquid Crystal Display )

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri

VTIY DERS-4 YARDIMCI NOTLARI -2018

LED YAKMAK. Circuit 2. Kablo LED. Direnç. Arduino LED. Direnç (330ohm)

Birol Çapa Özen Özkaya Güz Dönemi Eğitimleri

İÇİNDEKİLER 1. KLAVYE KLAVYE RB KLAVYE RBHIGH DİSPLAY... 31

Dr. Fatih AY Tel: fatihay@fatihay.net

BM-311 Bilgisayar Mimarisi

BQ351 Modbus Röle Kontrol Ünitesi. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

Sanal Bellek (Virtual Memory)

DENEY-5. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

BQ353 Modbus 8x D.Input 8x Röle Cihazı Kullanım Kılavuzu

İÇİNDEKİLER VII İÇİNDEKİLER 1 ARDUINONUN TEMELLERİ 1

ARDUINO PROGRAMLAMA. Yrd.Doç.Dr. Bülent ÇOBANOĞLU

ARM mimari ailesi [1]

PIC16F84 VE PIC C LITE COMPILER. Giriş / Çıkış port sayısı. Capture / Comp / PWM

BM-311 Bilgisayar Mimarisi. Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

idea Kontrol Kartı (idea Board jv2.1) Kullanım Kılavuzu

ADUC841 MİKRODENETLEYİCİ TABANLI GELİŞTİRME KARTININ TANITIMI:

BÖLÜM 6 Seri Port Đşlemleri

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

3500 Kırmızı 1210 SMD İç Mekan Mt/ 60 LED 120 Derece Mt/400 ma Mt/4.8 Watt 1 USD

İletişim Protokolleri (Communication Protocols)

BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING)

2019

EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ

Adres Yolu (Address Bus) Bellek Birimi. Veri Yolu (Databus) Kontrol Yolu (Control bus) Şekil xxx. Mikrodenetleyici genel blok şeması

Elif İLİKSİZ. Keziban TURAN. Radio Frekanslarla Hareket Eden Araç

EEM 419-Mikroişlemciler Güz 2017

EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ

RTU300 SERİSİ DONANIM KILAVUZU

MP211 DONANIM KILAVUZU

FPGA İLE UYGULAMA ÖRNEKLERİ

Proje Konusu. 108 kademeli Analog Ampermetre yapımı (malzemeler: Galvanometre, direnç)

SAYFA : 2 / 9 VERSİYON GEÇMİŞİ VERSİYON TARİH AMAÇ AÇIKLAMA V V

1- KULLANILACAK DEVRE ELEMANLARININ TANITILMASI

ĐŞARET ĐŞLEME (SIGNAL PROCESSING)

DENEY 10-A : PIC 16F877 ile DARBE GENİŞLİK MODÜLASYONU (PWM) SİNYAL KONTROL UYGULAMASI

DENEY-6. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

IOT DONANIM ALT YAPISI

BİLGİSAYAR BİLİMİ DERSİ (KUR-2)

LPC1769 ile 8 Temel Uygulama

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUVARI KESMELİ GİRİŞ/ÇIKIŞ

UniGSM Arduino SHIELD (UniGSM-A) KURULUM ve KULLANIM KİTAPÇIĞI

LMS PC aracı ACS420. LMS parametre ayarlarının yapılması için PC yazılımı. Kurlum ve çalıştırma talimatları

Bölüm 9 A/D Çeviriciler

ROKAY. Robot Operatör Kayıt Cihazı KULLANMA KILAVUZU V:1.0

ANAKART. Çıkış Birimleri. Giriş Birimleri. İşlem Birimi. Depolama Birimleri. İletişim. Birimleri. Bellek. Birimleri

Alıcı Devresi; Sinyali şu şekilde modüle ediyoruz;

ARDUİNO PROGRAMLAMA 1.ARDUİNO YU TANIMAK

MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ. Prof. Dr. Necmettin Kaya

ARM Ders Notları. SysCtlClockSet( SYSCTL_SYSDIV_4 SYSCTL_USE_PLL SYSCTL_OSC_MAIN SYSCTL_XTAL_8MHZ);

PIC MİKRODENETLEYİCİLER İÇİN. mikrobasic DERLEYİCİSİ

Bilgisayar Sistemlerine Genel Bakış

FPGA İLE UYGULAMA ÖRNEKLERİ

İçindekiler FPGA GELİŞTİRME KARTI ENERJİ BESLEMESİ:... 5 ENERJİ SİSTEMİ ŞEMASI:... 5 FPGA GELİŞTİRME KARTINA PROGRAM YÜKLEME:... 6

Transkript:

Mikrokontrolcu Portları 0 {\} /\ Suhap SAHIN

Gelistirme Ortamının Kurulumu Sanal Makine Programı(VirtualBo) Sanal Makine Dosyasının Kurulumu(ubuntu-kouembedded-v20160217.ova)

Virtualbo kurulumu https://www.virtualbo.org/

Virtualbo kurulumu https://www.virtualbo.org/wiki/downloads

Sanal Makina Dosyası https://github.com/kou-embedded-system-lab/os-base-image/releases/tag/v2018-02-09 https://github.com/kou-embedded-system-lab/os-base-image/releases debian-kou-embedded-v2018-02-09.ova

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Kurulumu

Sanal Makina Baslatma

Sanal Makina Baslatma

Sanal Makina Ayarlanması

Sanal Makina Ayarlanması

Sanal Makina Ayarlanması

Sanal Makina Ayarlanması

Kartın Sanal Makinaya Aktarılması

Kartın Sanal Makinaya Aktarılması

Ilk Projenin Çalıstırılması

Ilk Projenin Çalıstırılması

Ilk Projenin Çalıstırılması

Ilk Projenin Çalıstırılması

Ilk Projenin Çalıstırılması

Ilk Projenin Çalıstırılması

Hatalar 1. Stellaris/Tiva donanımları bilgisayara baglı mı? 2. Donanımlar sanal makinaya aktarıldı mı? 3. DEBUG islemi açık unutuldu mu?

Gelistirme Kartları Tiva C Series EK-TM4C123GXL http://www.ti.com/litv/pdf/spmu296 Stellaris EK-LM4F120XL http://www.ti.com/lit/ug/spmu289c/spmu289c

Tiva & Stellaris Port Baglantıları

Tiva & Stellaris Port Baglantıları

Tiva Port Baglantıları

Tiva & Stellaris Port Baglantıları

Tiva & Stellaris Port Baglantıları

I/O Portları Corte M4 8 32k RAM GPIO Port B GPIO Port A 8 Eight UARTs Four I2Cs Four SSIs CAN 2.0 GPIO Port D GPIO Port C 4 Twelve Timers Si 64-bit wide USB 2.0 JTAG 6 GPIO Port F GPIO Port E Two Analog Comparators ADC 2 channels 12 inputs 12 bits Two PWM Modules System Bus 8 5

Kartın üzerindeki ledi yakma Kırmızı LED Mavi LED Yesil LED Port F1 --> Kırmızı LED Port F2 --> Mavi LED Port F3 --> Yesil LED

Kartın üzerindeki ledi yakma Corte M4 8 32k RAM GPIO Port B GPIO Port A 8 Eight UARTs Four I2Cs Four SSIs CAN 2.0 GPIO Port D GPIO Port C 4 Twelve Timers Si 64-bit wide USB 2.0 JTAG 6 GPIO Port F GPIO Port E Two Analog Comparators ADC 2 channels 12 inputs 12 bits Two PWM Modules System Bus 8 5

Kartın üzerindeki ledi yakma #include <stdint.h> #include "inc/tm4c123gh6pm.h" int main(void) { volatile unsigned long delay; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; delay = SYSCTL_RCGC2_R; GPIO_PORTF_DIR_R = 0b00000100; GPIO_PORTF_DEN_R = 0b00000100; while(1) { GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; } }

Gerekli Kütüphanelerin Eklenmesi (int8_t, int16_t, int32_t, uint8_t, uint16_t, uint32_t) tipindeki tamsayı değerlerinin kullanılmasını sağlar #include <stdint.h> tiva kütüphanesi #include "inc/tm4c123gh6pm.h" stellaris kütüphanesi #include "inc/lm4f120h5qr.h"

Gerekli Kütüphanelerin Eklenmesi (int8_t, int16_t, int32_t, uint8_t, uint16_t, uint32_t) tipindeki tamsayı değerlerinin kullanılmasını sağlar #include <stdint.h> tiva kütüphanesi #include "inc/tm4c123gh6pm.h" stellaris kütüphanesi #include "inc/lm4f120h5qr.h"

Gerekli Kütüphanelerin Eklenmesi (int8_t, int16_t, int32_t, uint8_t, uint16_t, uint32_t) tipindeki tamsayı değerlerinin kullanılmasını sağlar #include <stdint.h> tiva kütüphanesi #include "inc/tm4c123gh6pm.h" stellaris kütüphanesi #include "inc/lm4f120h5qr.h"

Kartın üzerindeki ledi yakma #include <stdint.h> #include "inc/tm4c123gh6pm.h" int main(void) { volatile unsigned long delay; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; delay = SYSCTL_RCGC2_R; GPIO_PORTF_DIR_R = 0b00000100; GPIO_PORTF_DEN_R = 0b00000100; while(1) { GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; } }

volatile (uçucu) degisken Degiskenin degerini donanım degistirebilir; int delay = 0; while(delay == 0);!!!!!!!!!!! Derleyici donanım sevyesine inmeden degiskeni kaldırır: Derleyicinin degiskene müdahil olmasını engellemek için; volatile int delay = 0; while(delay == 0);

volatile (uçucu) degisken Degiskenin degerini donanım degistirebilir; int delay = 0; while(delay == 0);!!!!!!!!!!! Derleyici donanım sevyesine inmeden degiskeni kaldırır: Derleyicinin degiskene müdahil olmasını engellemek için; volatile int delay = 0; while(delay == 0);

volatile (uçucu) degisken Degiskenin degerini donanım degistirebilir; int delay = 0; while(delay == 0);!!!!!!!!!!! Derleyici donanım sevyesine inmeden degiskeni kaldırır: Derleyicinin degiskene müdahil olmasını engellemek için; volatile int delay = 0; while(delay == 0);

volatile (uçucu) degisken Degiskenin degerini donanım degistirebilir; int delay = 0; while(delay == 0);!!!!!!!!!!! Derleyici donanım sevyesine inmeden degiskeni kaldırır: Derleyicinin degiskene müdahil olmasını engellemek için; volatile int delay = 0; while(delay == 0);

Kartın üzerindeki ledi yakma #include <stdint.h> #include "inc/tm4c123gh6pm.h" int main(void) { volatile unsigned long delay; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; delay = SYSCTL_RCGC2_R; GPIO_PORTF_DIR_R = 0b00000100; GPIO_PORTF_DEN_R = 0b00000100; while(1) { GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; } }

System Control Run Mod Clock Gate Control Register // Port F sayacını aktifleştirir SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; SYSCTL_RCGC2_R SYSCTL_RCGC2_GPIOD 0000 1000 SYSCTL_RCGC2_R OR 1

System Control Run Mod Clock Gate Control Register Adres 7 6 5 4 3 2 1 0 İsim $400F.E108...... GPIOF GPIOE GPIOD GPIOC GPIOB GPIOA SYSCTL_RCGC2_R 0b00000001 0b00000010 0b00000100 0b00001000 0b00010000 0b00100000 = = = = = = 001 002 004 008 010 020 SYSCTL_RCGC2_R = 001; SYSCTL_RCGC2_R = 002; SYSCTL_RCGC2_R = 004; SYSCTL_RCGC2_R = 008; SYSCTL_RCGC2_R = 010; SYSCTL_RCGC2_R = 020; // Port A sayacını aktifleştirir // Port B sayacını aktifleştirir // Port C sayacını aktifleştirir // Port D sayacını aktifleştirir // Port E sayacını aktifleştirir // Port F sayacını aktifleştirir

System Control Run Mod Clock Gate Control Register Adres 7 6 5 4 3 2 1 0 İsim $400F.E108...... GPIOF GPIOE GPIOD GPIOC GPIOB GPIOA SYSCTL_RCGC2_R 0b00000001 0b00000010 0b00000100 0b00001000 0b00010000 0b00100000 = = = = = = 001 002 004 008 010 020 SYSCTL_RCGC2_R = 001; SYSCTL_RCGC2_R = 002; SYSCTL_RCGC2_R = 004; SYSCTL_RCGC2_R = 008; SYSCTL_RCGC2_R = 010; SYSCTL_RCGC2_R = 020; // Port A sayacını aktifleştirir // Port B sayacını aktifleştirir // Port C sayacını aktifleştirir // Port D sayacını aktifleştirir // Port E sayacını aktifleştirir // Port F sayacını aktifleştirir

System Control Run Mod Clock Gate Control Register // Port F sayacını aktifleştirir SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; SYSCTL_RCGC2_R SYSCTL_RCGC2_GPIOD 0000 1000 SYSCTL_RCGC2_R OR 1

System Control Run Mod Clock Gate Control Register // Port F sayacını aktifleştirir SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; SYSCTL_RCGC2_R SYSCTL_RCGC2_GPIOF 0010 0000 SYSCTL_RCGC2_R OR 1

System Control Run Mod Clock Gate Control Register // Port F sayacını aktifleştirir SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; SYSCTL_RCGC2_R SYSCTL_RCGC2_GPIOF 0010 0000 SYSCTL_RCGC2_R OR 1

System Control Run Mod Clock Gate Control Register // Port F sayacını aktifleştirir SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; SYSCTL_RCGC2_R SYSCTL_RCGC2_GPIOF 0010 0000 SYSCTL_RCGC2_R 1 OR

System Control Run Mod Clock Gate Control Register Adres 7 6 5 4 3 2 1 0 İsim $400F.E108...... GPIOF GPIOE GPIOD GPIOC GPIOB GPIOA SYSCTL_RCGC2_R SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOA; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOB; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOC; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOD; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOE; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; // Port A clock aktifleştirir // Port B clock aktifleştirir // Port C clock aktifleştirir // Port D clock aktifleştirir // Port E clock aktifleştirir // Port F clock aktifleştirir

Kartın üzerindeki ledi yakma #include <stdint.h> #include "inc/tm4c123gh6pm.h" int main(void) { volatile unsigned long delay; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; delay = SYSCTL_RCGC2_R; GPIO_PORTF_DIR_R = 0b00000100; GPIO_PORTF_DEN_R = 0b00000100; while(1) { GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; } }

Kartın üzerindeki ledi yakma // zaman gecirmek icin yukarida degistirilen saklayıcı okunur delay = SYSCTL_RCGC2_R;

Kartın üzerindeki ledi yakma #include <stdint.h> #include "inc/tm4c123gh6pm.h" int main(void) { volatile unsigned long delay; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; delay = SYSCTL_RCGC2_R; GPIO_PORTF_DIR_R = 0b00000100; GPIO_PORTF_DEN_R = 0b00000100; while(1) { GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; } }

Kartın üzerindeki ledi yakma Port F1 --> Kırmızı LED Port F2 --> Mavi LED Port F3 --> Yesil LED

Kartın üzerindeki ledi yakma 31 30 29 28 27 GPIO_PORTF_DIR_R... 3 2 1 0 0 0 1 0

Direction Register GPIO_PORTF_DIR_R = 0b00000010; // PF1 pinini cikis yap GPIO_PORTF_DIR_R = 0b00000100; // PF2 pinini cikis yap GPIO_PORTF_DIR_R = 0b00001000; // PF3 pinini cikis yap GPIO_PORTF_DIR_R 0000 0010 OR GPIO_PORTF_DIR_R 1

Direction Register GPIO_PORTF_DIR_R = 0b00000010; // PF1 pinini cikis yap GPIO_PORTF_DIR_R = 0b00000100; // PF2 pinini cikis yap GPIO_PORTF_DIR_R = 0b00001000; // PF3 pinini cikis yap GPIO_PORTF_DIR_R 0000 0010 OR GPIO_PORTF_DIR_R 1

Direction Register GPIO_PORTF_DIR_R = 0b00000010; // PF1 pinini cikis yap GPIO_PORTF_DIR_R = 0b00000100; // PF2 pinini cikis yap GPIO_PORTF_DIR_R = 0b00001000; // PF3 pinini cikis yap GPIO_PORTF_DIR_R 0000 0010 OR GPIO_PORTF_DIR_R 1

Direction Register GPIO_PORTF_DIR_R = 0b00000010; // PF1 pinini cikis yap GPIO_PORTF_DIR_R = 0b00000100; // PF2 pinini cikis yap GPIO_PORTF_DIR_R = 0b00001000; // PF3 pinini cikis yap GPIO_PORTF_DIR_R 0000 0010 OR GPIO_PORTF_DIR_R 1

Direction Register 31 30 29 28 27 GPIO_PORTF_DIR_R... 3 2 1 0 0 1 0 0

Direction Register GPIO_PORTF_DIR_R = 0b00000010; // PF1 pinini cikis yap GPIO_PORTF_DIR_R = 0b00000100; // PF2 pinini cikis yap GPIO_PORTF_DIR_R = 0b00001000; // PF3 pinini cikis yap

Direction Register 31 30 29 28 27 GPIO_PORTF_DIR_R... 3 2 1 0 1 0 0

Direction Register GPIO_PORTF_DIR_R = 0b00000010; // PF1 pinini cikis yap GPIO_PORTF_DIR_R = 0b00000100; // PF2 pinini cikis yap GPIO_PORTF_DIR_R = 0b00001000; // PF3 pinini cikis yap

Kartın üzerindeki ledi yakma #include <stdint.h> #include "inc/tm4c123gh6pm.h" int main(void) { volatile unsigned long delay; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; delay = SYSCTL_RCGC2_R; GPIO_PORTF_DIR_R = 0b00000100; GPIO_PORTF_DEN_R = 0b00000100; while(1) { GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; } }

Digital Enable Register GPIO_PORTF_DEN_R = 0b00000100; // PF2 pinini aktiflestir

Digital Enable Register GPIO_PORTF_DEN_R = 0b00000100; // PF2 pinini aktiflestir 31 30 29 28 27 GPIO_PORTF_DEN_R... 3 2 1 0 0 1 0 0

Digital Enable Register GPIO_PORTF_DEN_R = 0b00000100; // PF 3 pinini aktiflestir 31 30 29 28 27 GPIO_PORTF_DEN_R... 3 2 1 0 0 1 0 0

Digital Enable Register GPIO_PORTF_DEN_R = 0b00000100; // PF2 pinini aktiflestir GPIO_PORTF_DEN_R 0000 1000 OR GPIO_PORTF_DEN_R 1

Digital Enable Register GPIO_PORTF_DEN_R = 0b00000100; // PF2 pinini aktiflestir GPIO_PORTF_DEN_R 0 0 0 0 0 10 0 OR GPIO_PORTF_DEN_R 1

Digital Enable Register GPIO_PORTF_DEN_R = 0b00000100; // PF2 pinini aktiflestir GPIO_PORTF_DEN_R 0 0 0 0 0 10 0 OR GPIO_PORTF_DEN_R 1

Kartın üzerindeki ledi yakma #include <stdint.h> #include "inc/tm4c123gh6pm.h" int main(void) { volatile unsigned long delay; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; delay = SYSCTL_RCGC2_R; GPIO_PORTF_DIR_R = 0b00000100; GPIO_PORTF_DEN_R = 0b00000100; while(1) { GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; } }

Kartın üzerindeki ledi yakma #include <stdint.h> #include "inc/tm4c123gh6pm.h" int main(void) { volatile unsigned long delay; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; delay = SYSCTL_RCGC2_R; GPIO_PORTF_DIR_R = 0b00000100; GPIO_PORTF_DEN_R = 0b00000100; while(1) { GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; } }

Data Register 31 30 29 28 27 GPIO_PORTF_DATA_R... 3 2 1 0 0 1 0 0

Data Register GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) 31 30 29 28 27 /* bos dongu ile bekle */; GPIO_PORTF_DATA_R... 3 2 1 0 0 1 0 0

Data Register GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) 31 30 29 28 27 /* bos dongu ile bekle */; GPIO_PORTF_DATA_R GPIO_PORTF_DATA_R... 0 10 0 OR GPIO_PORTF_DATA_R 1 3 2 1 0 0 1 0 0

Data Register GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) 31 30 29 28 27 /* bos dongu ile bekle */; GPIO_PORTF_DATA_R GPIO_PORTF_DATA_R... 0 10 0 OR GPIO_PORTF_DATA_R 1 3 2 1 0 0 1 0 0

Data Register GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */;

Kartın üzerindeki ledi yakma #include <stdint.h> #include "inc/tm4c123gh6pm.h" int main(void) { volatile unsigned long delay; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; delay = SYSCTL_RCGC2_R; GPIO_PORTF_DIR_R = 0b00000100; GPIO_PORTF_DEN_R = 0b00000100; while(1) { GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; } }

Data Register 31 30 29 28 27 GPIO_PORTF_DATA_R... 3 2 1 0 1 0 1 1

Data Register GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; 31 30 29 28 27 GPIO_PORTF_DATA_R... 3 2 1 0 1 0 1 1

Data Register GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; 31 30 29 28 27 GPIO_PORTF_DATA_R GPIO_PORTF_DATA_R... 1011 AND GPIO_PORTF_DATA_R 0 3 2 1 0 1 0 1 1

Data Register GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; 31 30 29 28 27 GPIO_PORTF_DATA_R GPIO_PORTF_DATA_R... 1011 AND GPIO_PORTF_DATA_R 0 3 2 1 0 1 0 1 1

Data Register GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */;

Kartın üzerindeki ledi yakma #include <stdint.h> #include "inc/tm4c123gh6pm.h" int main(void) { volatile unsigned long delay; SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOF; delay = SYSCTL_RCGC2_R; GPIO_PORTF_DIR_R = 0b00000100; GPIO_PORTF_DEN_R = 0b00000100; while(1) { GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; } }

Data Register while(1) { GPIO_PORTF_DATA_R = 0b00000100; for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; GPIO_PORTF_DATA_R &= ~(0b00000100); for(delay = 0; delay < 400000; delay++) /* bos dongu ile bekle */; }

Sorular