Eleco 2014 Elektrik Elektronik Bilgisayar ve Biyomedikal Mühendisliği Sempozyumu, 27 29 Kasım 2014, Bursa

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

DENEY 6: FLİP-FLOP (BELLEK) DEVRESİ UYGULAMALARI

EasyPic 6 Deney Seti Tanıtımı

İletişim Protokolleri (Communication Protocols)

Analog Sayısal Dönüşüm

FPGA İLE UYGULAMA ÖRNEKLERİ FPGA ile Seri Haberleşme (RS232) Uygulaması

SAYISAL MANTIK LAB. PROJELERİ

BÖLÜM Mikrodenetleyicisine Giriş

PEY-D810 SĠNYALĠZASYON SĠSTEMĠ

Şekil XNOR Kapısı ve doğruluk tablosu

İŞLEMCİLER (CPU) İşlemciler bir cihazdaki tüm girdilerin tabii tutulduğu ve çıkış bilgilerinin üretildiği bölümdür.

4-Deney seti modüler yapıya sahiptir ve kabin içerisine tek bir board halinde monte edilmiştir.

BĠLGĠSAYAR AĞLARI. 1-Bilgisayar ağı nedir? 2-Ağ türleri 3-Ağ bağlantıları 4-Ġnternet kavramı ve teknolojileri

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

Ham Veri. İşlenmiş Veri Kullanıcı. Kullanıcı. Giriş İşleme Çıkış. Yazılı Çizili Saklama. Doç.Dr. Yaşar SARI-ESOGÜ-Turizm Fakültesi

PLC & HMI CONTROLLER PLC HMI

İnönü Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

ANA KART NEDİR? ANA KART (MAIN BOARD) ANA KARTIN GÖREVİ

ANA KARTLAR ANA KARTLAR VE KASALAR

Teorik Bilgi DENEY 7: ASENKRON VE SENKRON SAYICILAR

BİLGİSAYAR MİMARİSİ. << Bus Yapısı >> Özer Çelik Matematik-Bilgisayar Bölümü

MEB YÖK MESLEK YÜKSEKOKULLARI PROGRAM GELİŞTİRME PROJESİ

Operatör panelleri FED

ELK2016 SAYISAL TASARIM DERSİ LABORATUVARI DENEY NO: 4 DENEYİN ADI: JK, RS, T VE D TİPİ FLİP-FLOPLARIN İNCELENMESİ

Mikroişlemci ile Analog-Sayısal Dönüştürücü (ADC)

MCR02-AE Ethernet Temassız Kart Okuyucu

BĠLĠġĠM TEKNOLOJĠLERĠ ALANI

RADYO FREKANSIYLA KABLOSUZ SICAKLIK KONTROLÜ WIRELESS TEMPERATURE CONTROL BY RADIO FREQUENCY

MikroiĢlemci ile Analog-Sayısal DönüĢtürücü (ADC)

DY-45 OSĐLOSKOP KĐTĐ. Kullanma Kılavuzu

Deney 2: Flip-Floplar

IFD8520 ADRESLENEBİLİR RS-485/RS-422 İZOLELİ ÇEVİRİCİ KULLANIM KILAVUZU

Ek bilgi Internet:.../cecx

EEM 419-Mikroişlemciler Güz 2017

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

HDMI Genişletici Çoğaltıcı Set, 1x2

DY-45 OSİLOSKOP V2.0 KİTİ

ANAKART (MOTHERBOARD)

PROJE RAPORU. Proje adı: Pedalmatik 1 Giriş 2 Yöntem 3 Bulgular 6 Sonuç ve tartışma 7 Öneriler 7 Kaynakça 7

Deney 6: Ring (Halka) ve Johnson Sayıcılar

FBs-serisi. Programlanabilir Kontrol Cihazı. Kullanım Kitabı - II [ İleri Düzey Uygulamalar. Önsöz, İçerik. FBs-PLC Interrupt Fonksiyonu 9

FPGA ile Kablosuz Görüntü Aktarımı. Yusuf Onur Koçberber

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

IR KABLOSUZ KONFERANS SĠSTEMĠ

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

İvme VGA, İvme s_2.1 fiziksel işlemci çekirdeğinin, çalışan iç yapısının herhangi bir simülasyon olmaksızın fiziksel olarak dış dünyaya aktarımıdır.

P-100 P-101. Bağlantı Şeması. İstanbul Yazılım ve Elektronik Teknolojileri

Strike 5.50 R Proximity Kart Okuyucu Kullanım Kılavuzu

YILDIZ TEKNIK ÜNİVERSİTESİ ELEKTRİK - ELEKTRONİK FAKULTESİ ELEKLTRONİK VE HABERLEŞME MÜHENDİSLİĞİ BÖLÜMÜ

MĐKROĐŞLEMCĐLĐ FONKSĐYON ÜRETECĐ

Eğitim Amaçlı Temel Bir Mikrobilgisayarın Tasarlanması ve Gerçeklemesi Design and Implementation of a Basic Microcomputer for Educational Purpose

Deney 3: Asenkron Sayıcılar

ERA 03P BRÜLÖR KONTROL RÖLESĠ

MP211 DONANIM KILAVUZU

Programlanabilir Devreler

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

HAFTA 1 KALICI OLMAYAN HAFIZA RAM SRAM DRAM DDRAM KALICI HAFIZA ROM PROM EPROM EEPROM FLASH HARDDISK

DCAS NGP operatör panel

YENİLENEBİLİR ENERJİ EĞİTİM SETİ

Bilgisayar Donanım ANAKART ÜZERĐNDE YER ALAN GĐRĐŞ/ÇIKIŞ (I/O) BAĞLANTI NOKTALARI

İçİndekİler. 1. Bölüm - Mİkro Denetleyİcİ Nedİr? 2. Bölüm - MİkroDenetleyİcİlerİ Anlamak

Bilgisayar Mühendisliği Bölümü. BİL Proje II

EGE Üniversitesi Mühendislik Fakültesi Bilgisayar Müh. Bölümü Öğretim Yılı Lisans Tezi Önerileri

e-tartı LTR3 Firmware Upgrade Yazılım Güncelleme Moduler Connection LTR3 Firmware Upgrade / LTR3 Yazılım Güncelleme v1.0.

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

STROBE - Doğrusal Akım Ayarlı

Sistem Nasıl Çalışıyor: Araç İzleme ve Filo Yönetim Sistemi

LOCATION INFORMATION SYSTEM

Kataloğ Ses ve Görüntü Cihazları. 1. HDMI Splitter (Çoklayıcı) 2. HDMI Switch HDMI 5 In 1 Switch HDMI SWITCH UZAKTAN KUMANDALI 3 IN 1 OUT

18. FLİP FLOP LAR (FLIP FLOPS)

BESLEME KARTI RF ALICI KARTI

RAGE-VP4 KULLANMA KILAVUZU

Teknik Katalog [Osiloskop]

T.C. RC SERVO MOTOR KONTROLÜ

BEKLEMELĐ ÇALIŞMA VE ZAMAN SINIRLI ĐŞLER. 1. Genel Tanıtım. 2- WAIT işaretinin üretilmesi

Yrd. Doç.Dr. C. Harmanşah PARALEL PORT

Mühendislik Tasarım-3 ve Bitirme Çalışması Konuları

Deney 5: Shift Register(Kaydırmalı Kaydedici)

6. DONANIM KARTLARI Ekran Kartı

DERS 12 PIC 16F84 ile KESME (INTERRUPT) KULLANIMI İÇERİK

Türkiye Mümessili. F.A.S.T Fabrika Aygıtları Sistem Teknolojisi Ltd.Şti. FAST PLAZA Karaman Çiftlik Yolu No:51 Küçükbakalköy / Kadıköy / İstanbul

Bilgisayar ile Dijital Devrelerin Haberleşmesi. FT232R ve MAX232 Entegreleri. Çalışma Raporu

Bölüm 1 Başlarken WindBOX

IRT63M. Bilgi Dokümanı. 128x64 piksel grafik LCD, Klavye, UART ve Ethernet Haberleşme ile Temassız Kart (ISO14443A/B) Okuyucu (IRT63M)

Bilgisayar Üzerinden Bir Silah Kontrol Sistemi Prototipinin Tasarımı ve GerçekleĢtirilmesi

UMD-B12 UMD-B10 RF MODEM BOARD

DENEY 8- Flip Flop ve Uygulamaları. Amaç: - Flip Flop çalışma mantığını kavramak

Mikrobilgisayarlar. Mikroişlemciler ve. Mikrobilgisayarlar

Bilgisayar Kasası Üzerindeki Düğmeler. Kabloları

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

SD-Z245. Genel Bakış. Sorunsuz Masaüstü Deneyimi için Mükemmel Çözüm

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

%100 Yerli, Donanım + HMI Yazılım. Profesyonel Operatör Paneli. Operatör Paneli - Proop10. Operatör Paneli - Proop7.

Donanımlar Hafta 1 Donanım

Temel Flip-Flop ve Saklayıcı Yapıları. Mikroişlemciler ve Mikrobilgisayarlar

Mikroişlemciler. Microchip PIC

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

Toplu İleti Gönderimi

1. PROGRAMLAMA. PDF created with pdffactory Pro trial version

MİKROİŞLEMCİLER LABORATUVARI İÇİN PROGRAM DERLEME VE YÜKLEME DOKÜMANI

Transkript:

Eğitim Amaçlı Mikrobilgisayar Sistemleri İçin I2C Seri Haberleşme Protokolü ile Analog Arayüz Tasarımı Analog Communication Interface Designing for Educational Purpose Microcomputer Systems with I2C Serial Communication Protocol Resul KÖKSAL 1, Halit ÖZTEKİN 2, Feyzullah TEMURTAŞ 3 1 Mekatronik Mühendisliği Anabilim Dalı, Bozok Üniversitesi resulkoksal@hotmail.com 2 Bilgisayar Mühendisliği, Bozok Üniversitesi oztekinhalit@gmail.com 3 Elektrik Elektronik Mühendisliği, Bozok Üniversitesi temurtas@gmail.com Özet Bu çalışmada, FPGA üzerindeki eğitimsel amaçlı mikrobilgisayar sistemleri için I2C seri haberleşme protokolü kullanılarak analog haberleşme arayüz tasarımı yapılmıştır. I2C seri haberleşme protokolünde hattaki tüm aygıtlar ve uçları ile kontrol edilebilmektedir. Tasarlanan analog haberleşme arayüzü; modüler yapıda olup bu arayüz ile öğrencilerin; bilgisayar sistemleri ile analog çevre birimleri arasındaki çalışma akışını daha rahat kavrayabilmeleri, motivasyon ve özgüven açısından da daha üst seviyede olmaları hedeflenmiştir. Tasarımı gerçekleştirilen analog haberleşme arayüzü; açık kodlu mikrobilgisayar sistemlerine uyarlanabilir bir yapıya sahip olup bu özelliği ile eğitimsel amaçlı mikrobilgisayar sistemlerinin analog sinyalleri işlemedeki eksikliklerinin giderilmesi hedeflenmiştir. Abstract In this study analog comminication interface was designed for educational purpose microcomputer systems with I2C serial comminicacation protocol. All devices on the I2C serial communication protocol, even with the ends of the and can be controlled. Thus the number of pins is reduced because of the reduction in physical dimensions of the devices. Designed analog communication interface; With this interface is modular and students; operation between analog and digital systems, peripherals can flow more comfortable grip, in terms of motivation and self-esteem were aimed at a higher level. Design realized analog communication interface; open source has a structure adapted to the microcomputer system with this feature educational purposes and analog signal processing microcomputer systems aimed to remedy the deficiencies. 1. GiriĢ Bu çalıģmada yapılandırılabilir donanım(fpga) üzerindeki mikrobilgisayar sistemleri için I2C seri iletiģim protokolü kullanılarak analog haberleģme arayüz tasarımı modüler olarak gerçekleģtirilmiģtir. Yapılan çalıģmada temel amaç eğitimseldir bu nedenle tasarımda kullanılan elemanların iç yapısının incelenebilir, kullanıcı tarafından müdahale edilebilir ve geliģtirilebilir olmasına özen gösterilmiģtir. I2C seri iletiģim protokolü gömülü sistem uygulamalarında, mikrodenetleyiciler ve mikroiģlemci tabanlı kücük zeki sistemler arasındaki seri haberleģmede yaygın olarak kullanılan bir iletiģim protokolüdür. Bu çalıģmada Altera DE2 eğitim seti üzerinde bulunan Wolfson WM8731 entegresi ile FPGA in haberleģmesi için Ģematik olarak I2C protokolü tasarlanmıģtır[1-3]. 2. Genel Bilgiler Ve Tasarım Platformları Bu çalıģmada Altera firmasının ürettiği Altera DE2 eğitim seti kullanılmıģtır. Bu set dijital sistemleri, bilgisayar organizasyonlarını ve FPGA konularını geliģtirmek için ideal bir ortam oluģturmaktadır. ġekil 1 de gösterilgiği üzere DE2 geliģtirme ortamı, standart giriģ/çıkıģ ara yüzleri için yazılım desteği ve çeģitli bileģenlere eriģim için bir kontrol paneli imkanına sahiptir. DE2 kiti kullanılarak ses ve video uygulamaları, USB ve Ethernet bağlantısı vb. gibi daha birçok uygulama yapılabilir[4,5]. 789

Usb 2.0 Aygıt Ethernet Portu SD Kart Yuvası IrDA Alıcısı 4MB Flash Bellek 512 KB SDRAM 8MB SDRAM Altera De2-70 GeliĢtirme ve Eğitim Kiti 50Mhz/27Mhz/ Harici Saat Darbesi WM 8731 Audio Entegresi VGA 10-Bit DAC TV Çözümleyici 8 Tane YeĢil Led 18 Tane Kırmızı Led 16x2 LCD Ekran () ve seri saat darbesi () olmak üzere iki hattan meydana gelir ve tüm iletiģim bu iki hat üzerinden yapılır. I2C seri haberleģme protokolü ile yavaģ, hızlı ve yüksek hızlı olmak üzere çeģitli motlarda veri akıģı sağlanabilir. YavaĢ hızda standart veri iletiģim hızı 100 kbit/s ye kadar iken hızlı veri iletiģim tipinde veri iletiģim hızı 400 kbit/s ye kadar ve yüksek hızlı iletiģimde ise veri iletiģim hızı 3,4 Mbit/s ye kadar çıkabilmektedir. I2C protokolünde ve sinyalleri düzenlenerek aygıtların seri olarak haberleģmesi sağlanır[7]. GeniĢleme Pinleri 7-Segment Dijital Display On /Off Anahtarı PS2 ve RS-232 Portları 18 Tane Toggle Anahtar 4 Tane Buton ġekil 3 de gösterildiği gibi I2C protokolünde gelen bilginin geçerli olması için sinyalinin, sinyali yüksek iken ve sinyali değiģimleri sırasında yüksek olması gerekir. 9V DC Güç Kay. GiriĢi USB Blaster Portu Şekil 1: Altera DE2-70 GeliĢtirme Kartı[6]. Quartus II programı kullanılarak lojik devre tasarımı hem Ģematik çizim/tasarım kullanılarak hem de VHDL, Verilog gibi yazılımsal diller kullanılarak gerçekleģtirilebilir. Bu projede gerçekleģtirilen analog haberleģme arayüz tasarımı için Quartus II ortamında Ģematik tasarım yöntemi kullanılmıģtır. 2.1. Tasarlanan Sistem GeçekleĢtirilen uygulamada wm8731 entegresine 50Mhz frekanslı dahili saat darbesinden hazır fonksiyon (PLL) kullanılarak üretilen 12Mhz frekanslı saat darbesi uygulanmıģtır. Daha sonra FPGA ile wm8731 entegresi arasında iletiģimi baģlatmak ve gerekli ayarları yapmak için I2C kontrolör tasarlanmıģtır. FPGA ile wm8731 entegresi iletiģime geçtikten sonra wm8731 entegresinden gelen seri Adc.dat sinyali seri-paralel dönüģtürücü kullanılarak 8-bit paralel sinyale dönüģtürülmüģ ve hafızaya kayıt edilmiģtir. Hafızadaki 8-bit paralel sinyaller paralel-seri dönüģtürücü kullanılarak seri sinyale dönüģtürülmüģ ve tekrardan wm8731 entegresine gönderilmiģtir. Şekil 2: GerçekleĢtirilen Uygulamanın Blok ġeması. 2.2. I2C Kontrolör Altera DE2 eğitim seti üzerinde bulunan Wolfson WM8731 entegresi ile FPGA in haberleģmesi için I2C protokolü kullanılmıģtır. I2C seri haberleģme protokolü, seri bilgi Kararlı Veri Geçerli Veri DeğiĢimi Şekil 3: I2C Protokolünde Geçerli Bilgi [8]. ġekil 4 de görüldüğü gibi sinyali yüksek (lojik bir) iken sinyali lojik birden lojik sıfıra geçer ise bu durum START anlamına gelir ve veri transferi baģlar. START veya tekrarlanan bir START durumundan sonra sinyali yüksek iken sinyali lojik sıfırdan lojik bire geçerse bu duruma STOP denir ve veri transferi sonlandırılır. Şekil 4: I2C Protokolünde START ve STOP Durumu[8]. ġekil 5 de I2C protokolünde verinin taģınma adımları gösterilmiģtir. START Ģartı oluģtuktan sonra hattaki tüm aygıtlar yöneticiden gelecek olan yönetilecek aygıtın adresini beklemeye baģlarlar. Sistem yöneticisi 7-bitlik yönetilecek aygıt adresini ve bu adrese yazma iģlemimi yoksa o adresten okuma mı yapacağını göstermek için 8.biti 0 veya 1 gönderir(yazma için 0, okuma için 1 bilgisi). Hatta ki tüm aygıtlar gelen adres ile kendi adreslerini karģılaģtırırlar eğer adres uyuģuyor ise kendisinin iletiģime hazır olduğunu belirten ACK (El SıkıĢma, Onay) sinyali gönderilir. Artık sistem yöneticisi ve yönetilecek aygıt haberleģmek için anlaģmıģtır. Sonraki adımda sistem yöneticisi yazma/okuma yapacağı aygıtın içeriğini okur veya aygıtın içerisine gerekli bilgileri gönderir. Onay(ACK) sinyalinden sonra STOP durumu oluģturarak iletiģimi sonlandırır. 7-Bit Yönetilen Adresi Oku/Yaz Gönderilen Alınan Veriler ACK (Onay) Şekil 5: I2C Protokolünde Veri AkıĢı[9]. ACK (Onay) 790

Tasarlanan I2C kontrolör iki kısımdan meydana gelmiģtir. Birinci kısımda WM8731 entegresini istediğimiz Ģekilde yapılandırmamızı sağlayacak veriler belirlenerek bu verilerin I2C protokolüne gönderildiği kısımdır. Ġkinci kısımda ise, birinci kısımdan gelen yönetilecek aygıt adresi, yönetilen aygıtta kontrol edilecek saklayıcıların adresleri ve saklayıcıların içerisine aktarılacak veriler sinyaline aktarılır. Yine bu kısımda I2C protokolüne uygun sinyali üretilerek iki sinyal beraber 100khz frekansla WM8731 entegresine gönderilir. I2C kontrolör blok Ģeması Ģekil 6 de verilmiģtir. Şekil 6: I2C Kontrolör Blok ġeması. Yönetilen Adresi Yönetilen Adresi [7] Yönetilen Adresi [6] Yönetilen Adresi [5] Yönetilen Adresi [4] Yönetilen Adresi [3] Yönetilen Adresi [2] Yönetilen Adresi [1] Yönetilen Adresi [0] Şekil 8: Yönetilecek Aygıt Adres Bilgisi. Wolfson WM8731 entegresi 11 adet 16 bit saklayıcıya sahiptir. Ġlk 7 bit saklayıcı adresini gösterirken 8. bit iģlemin okuma mı yoksa yazma mı olduğunu gösterir. Sonraki 8 bit saklayıcı içerisindeki verileri ifade etmektedir. Tasarımda kullanılacak saklayıcılar belirlendikten sonra saklayıcı adreslerini I2C protokolüne göndermek için 8*8 multiplekser tasarlanmıģtır. Saklayıcı adreslerini I2C protokolüne göndermek için tasarlanan 8*8 multiplekser devresi Ģekil 9 da verilmiģtir. 2.2.1. I2C Protokolünün Yapılandırılması Bu kısımda I2C protokolünde sinyali için gerekli olan yönetilen aygıt adresi, yönetilen aygıtta kontrol edilecek saklayıcıların adresleri ve saklayıcıların içerisine aktarılacak veriler üretilerek periyodik olarak I2C protokolüne aktarılacaktır. Sistemin giriģine 10hz frekanslı saat darbesi ve veri kaynağının mikrofon mu yoksa hat giriģi mi olduğunu seçmek için Mikrofon/Hat giriģi anahtarı eklenmiģtir. GerçekleĢtirilen uygulamada10hz lik sinyal 12Mhz lik sinyalden sayıcı kullanılarak elde edilmiģtir. Mikrofon/Hat giriģi anahtarının konumuna göre ilgili saklayıcıya gönderilen verinin içeriği değiģmektedir. Gerekli verilerin üretiminde Wolfson WM8731 entegresinin bilgi yapraklarından faydalanılmıģtır. Gönderilecek veriler onaltılık sayı sisteminde 8-bit olarak belirlendikten sonra bu datalar 8x8 multiplekser araçılığı ile 10hz frekans ile I2C protokolüne gönderilmiģtir. GerçekleĢtirilen uygulamada Wolfson WM8731 entegresi kontrol edilmiģtir. Wolfson WM8731 entegresi için aygıt adresi yazma konumunda 34 hex ve okuma konumunda 35 hex olarak belirtilmiģtir. Uygulama boyunca bu entegreye yazma iģlemi yapıldığından yönetilecek aygıt adresi sabit 34 hex (00110100) olarak gönderilmiģtir. ġekil 7 de Quartus proğramında yönetilecek aygıt adresi üretmek için kullanılan Ģematik devre gösterilmiģtir[4,8]. Yönetilen Aygıt Adresi Yönetilen Aygıt Adresi [7..0] Şekil 7: Yönetilecek Aygıt Adres Bilgisinin Elde Edilmesi. Yönetilcek aygıt adresi Ģekil 7 de verilen Ģematik devre ile elde edilir. Bu devre çalıģtırıldığında I2C protokolüne gönderilen yönetilecek aygıt adres bilgisi Ģekil 8 de verildiği gibidir Şekil 9: Saklayıcı Adreslerinin ġematik Devre Ġle Eldesi. Saklayıcı adresleri Ģekil 9 da verilen Ģematik devre ile elde edilir. Bu devre çalıģtırıldığında I2C protokolüne gönderilen saklayıcı adres bilgisi Ģekil 10 da verilmiģtir Aktive_in Saklayıcı Adresi Saklayıcı Adresi [7] Saklayıcı Adresi [6] Saklayıcı Adresi [5] Saklayıcı Adresi [4] Saklayıcı Adresi [3] Saklayıcı Adresi [2] Saklayıcı Adresi [1] Saklayıcı Adresi [0] Şekil 10: Saklayıcı Adres Bilgisi. Saklayıcı Adresi [7..0] Uygulamada kullanılacak saklayıcılara gönderilecek veriler kaynak sekizde belirtilen bilgi yaprakları kullanılarak belirlendikten sonra göndermek istediğimiz içeriği I2C protokolüne göndermek 8*8 multiplekser tasarlanmıģtır. Saklayıcı içeriklerini I2C protokolüne göndermek için kullanılan 8*8 multiplekser devresi Ģekil 11 de verilmiģtir. 791

Mikrofon/hat anahtarı ile analog kaynak seçimi yapılmıģtır. 8*8 multiplekserda seçici uç olarak 3 bitlik bir sayıcı devresi tasarlanmıģtır. Tasarlanan sayıcı devresi ile 8*8 multiplekser çıkıģı periyodik olarak değiģtirilmektedir. edilecek saklayıcıların adresleri ve saklayıcıların içerisine aktarılacak veriler sinyaline aktarılır. Yine bu kısımda I2C protokolüne uygun sinyali üretildikden sonra 100khz frekansla WM8731 entegresine gönderilir. Tasarlanan I2C protokolünün çalıģma akıģ diagramı Ģekil 13 de verilmiģtir. Saklayıcı Ġçeriği [7..0]] Şekil 11: Saklayıcı Ġçeriğinin ġematik Devre Ġle Eldesi. Sistemi istediğimiz Ģekilde kontrol etmek için gerekli saklayıcı içeriklerini üretmek için kullanılan devrenin çıkıģından elde edilen 8 bitlik sinyal Ģekli Ģekil 12 de verilmiģtir. ġekle dikkat edilecek olursa 8x8 multiplekser seçici ucu 000 iken çıkıģ 1f hex desimal karģılığı 31 dir. Seçici uç 001 iken çıkıģ 7b hex desimal karģılığı 123 dür. Seçici uç 010 iken eğer mikrofon/hat anahtarı 0 ise çıkıl 24 olurken eğer anahtar bir konumunda yani mikrofon seçili ise çıkıģ 21 olacaktır. Seçici uç 011 ve 100 konumunda iken çıkıģ 0 olacaktır. Seçici uç 101 iken çıkıģ 66 olacaktır. Seçici uç 110 iken çıkıģ 13 olacak ve son olarak seçici uç 111 iken çıkıģ 1 olacaktır. Aktive Mikrofon/Hat Sklycı Ġçerği Sakly_ Ġçrği[7] Sakly_ Ġçrği[6] Sakly_ Ġçrği[5] Sakly_ Ġçrği[4] Sakly_ Ġçrği[3] Sakly_ Ġçrği[2] Sakly_ Ġçrği[1] Sakly_ Ġçrği[0] Mikrofon/hat anahtarı 0 konumunda Hat giriģi seçildi Şekil 13: I2C Protokolünün ÇalıĢma AkıĢ Diagramı. Aktive Mikrofon/Hat Sklycı Ġçerği Sakly_ Ġçrği[7] Sakly_ Ġçrği[6] Sakly_ Ġçrği[5] Sakly_ Ġçrği[4] Sakly_ Ġçrği[3] Sakly_ Ġçrği[2] Sakly_ Ġçrği[1] Sakly_ Ġçrği[0] Mikrofon/hat anahtarı 1 konumunda mikrofon seçildi Şekil 12: I2C Protokolüne Gönderilen Saklayıcı Ġçerikleri. 2.2.2. Standart I2C Protokolünün OluĢturulması I2C seri haberleģme protokolü kullanılarak FPGA ile Altera DE2 eğitim seti üzerinde bulunan Wolfson WM8731 entegresinin haberleģmesi sağlanmıģtır. I2C protokolünde ve sinyalleri düzenlenerek aygıtların seri modda haberleģmesi sağlanır. Bu kısımda yapılandırma kısmından gelen yönetilecek aygıt adresi, yönetilen aygıtta kontrol Tasarlanan sitemde; 1. Adım: ==1 boģta bekleme (idle) konumu. 2. Adım: K=1 ve =1 den 0 a start konumu. 3.Adım: =0 ve = 0 veya 1 7 bitlik yönetilecek aygıt adresi gönderilir. 4.Adım: =0 ve = 0 veya 1 1 bit okuma/yazma bilgisi gönderilir. 5.Adım: = 1 onay konumu yönetilecek aygıt hazır olduğunu belirtir. 6.Adım: =0 ve = 0 veya 1 8 bit saklayıcı adresi gönderilir. 7.Adım: = 1 ve =0 onay konumu yönetilen 792

aygıtta kontrol edilecek saklayıcıların adresleri gönderilir. 8.Adım: =0 ve = 0 veya 1 8 bit saklayıcıların içerisine aktarılacak veriler gönderilir. 9.Adım: = 1 onay konumu saklayıcıların içerisine gerekli veriler aktarıldı. 10.Adım: =1 ve = 0 dan 1 e stop konumu. 11.Adım: == 1 boģta bekleme (idle) konumu. Tasarlanan I2C seri haberleģme protokolünde ve sinyal Ģekilleri Ģekil 14 de verilmiģtir. Aktive_in ACTIVE_IN Clock_in CLOCK_IN I2C_CLOCK I2C_Clock I2C_Data_ I2C _DATA_ OUT Out Start Yönetilen Aygıt A ACK Saklayıcı Adresi ACK Saklayıcı Ġçeriği ACK Stop 0 0 1 1 0 1 0 0 Şekil 14: I2C Protokolü ve sinyal Ģekilleri. ġekil 14 de clock_in sinyali olarak 100khz frekanlı saat darbesi kullanılmıģtır. Üç saat darbesi sinyalinden bir (I2C_clock) sinyali üretilmiģ ve dikey çizgilerle gösterildiği üzere sinyali 29 adımda tamamlanmıģtır. sinyalini üretmek için 29*3=87 saat darbesi kullanılmıģtır. sinyali üretmek için paralel giriģleri seri bilgiye dönüģtüren bir devre tasarlanmıģtır. GiriĢlerdeki bilgi in_enable giriģine uygulanan bir saat darbesi ile flip floplara aktarılarak out_enable sinyali aktif olduğunda saat darbeleri ile flip floplardaki veriler çıkıģa aktarılmıģtır. Tasarlanan devrenin blok Ģeması Ģekil 15 de verilmiģtir. hattaki tüm aygıtları sadece iki uç ( ve ) kullanarak yönetebilmesinin yanında 3.4Mhz gibi yüksek hızlarda da çalıģabilmektedir. Bu çalıģma eğitsel amaçlı olup bu çalıģma ile öğrencilerin dijital sistemlerde analog sinyallerin nasıl kontrol edildiğini daha kolay anlamaları hedeflenmiģtir. Eğitsel amaçlı tasarlanan analog haberleģme arayüzü derslerde müstakil kullanılabileceği gibi tasarlanan kesme devresi ile de açık kodlu tüm mikrobilgisar sistemlerine uyarlanabilir durumdadır. Analog haberleģme arayüz eklentisi ile mikrobilgisayar sistemlerinin eğitsel anlamda daha da kuvvetlendirilmesi hedeflenmiģtir. Kaynaklar 1. OZTEKIN, H., Eğitim Amaçlı Yapılandırılabilir Modüler Donanım Üzerine Gömülü ĠĢletim Sistemi Tasarımı, Doktora, Sakarya Üniversitesi, Bilgisayar ve BiliĢim Mühendisliği, 2012. 2. OZTEKIN, H., Bilgisayar Mimarisi Simülatörü Tasarımı, Y. Lisans, Sakarya Üniversitesi, Bilgisayar ve BiliĢim Mühendisliği, 2009. 3. ATMACA, S., I2C Bus Seri ĠletiĢim Protokolü Ġçin Veri Ġzleme Sistemi, Y. Lisans, Sakarya Üniversitesi, Elektronik ve Bilgisayar Eğitimi, 2002.. 4. De2 Development and Education Board User Manuel, version 1.4, 2006 Altera Corporation 5. TEMURTAġ, F., GÜLBAĞ, A., Uzaktan EriĢilebilir Yapılandırılabilir Donanım Üzerine Eğitim Amaçlı Mikro Bilgisayar Mimarisi ve Gömülü ĠĢletim Sistemi Tasarımı, 110E069 nolu Tübitak Proje Raporu. 6. http://in.mouser.com/images/microsites/terasic_ DE2_block.jpg (EriĢim Tarihi: 21/07/2014). 7. Philips Semiconductors, The I2C - Bus Specification, Version 2.1, January 2000. 8. WM8731/WM8731L, April 2004 rev 3.4, Wolfson Mikroelektronic. 9. HWANG, E.,Implementing an I2C Master Bus Controller in a FPGA,2008. Şekil 15: Sinyalinin Elde Edilmesi Blok ġeması Sonuç Bu çalıģmada yapılandırılabilir donanım üzerindeki mikrobilgisayar sistemleri için I2C seri haberleģme protokolü kullanılarak analog haberleģme arayüz tasarımı modüler olarak gerçekleģtirilmiģtir. I2C seri haberleģme protokolü 793