• Sonuç bulunamadı

T.C. KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ TEK RENK GRAFİK LCD İLE OYUN UYGULAMASI

N/A
N/A
Protected

Academic year: 2022

Share "T.C. KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ TEK RENK GRAFİK LCD İLE OYUN UYGULAMASI"

Copied!
29
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

T.C.

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ

ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ  

 

TEK RENK GRAFİK LCD İLE OYUN UYGULAMASI

BİTİRME ÇALIŞMASI

     

Hazırlayanlar:

Cüneyt BAŞAR 179947 Emre DEMİRKAPI 179953

Canan GÜLER 196151  

BAHAR 2011 TRABZON 

(2)

T.C.

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ

ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ

TEK RENK GRAFİK LCD İLE OYUN UYGULAMASI

BİTİRME ÇALIŞMASI

Hazırlayanlar:

Cüneyt BAŞAR 179947 Emre DEMİRKAPI 179953

Canan GÜLER 196151

Tez Danışmanı: Öğr. Gör. Oğuzhan ÇAKIR

BAHAR 2011 TRABZON

(3)

II ÖNSÖZ

Bu çalışmada PIC16F877A ve grafik LCD kullanılarak bir oyun uygulaması gerçekleştirilmiştir. Oyun konsollarında ve bilgisayarlarda kullanıcılar tarafından beğenilen bir oyun olan tuğla kırma oyunu mikrodenetleyici ile yapılmıştır. Kullanılan ekran WinStar firmasının tek renk 128x64 piksel bir sıvı kristal ekranıdır.

Çalışmalarımız boyunca bize değerli zamanını ayıran ve verdiği fikirler ile bizi yönlendiren hocamız Sayın Öğr. Gör. Oğuzhan ÇAKIR’a teşekkür ederiz.

Ayrıca hayatımız boyunca her türlü maddi ve manevi desteklerini hiçbir zaman esirgemeyen ailelerimize şükranlarımızı sunarız.

Cüneyt BAŞAR, Emre DEMİRKAPI, Canan GÜLER

Trabzon, 2011

(4)

III

İÇİNDEKİLER

Sayfa No ÖNSÖZ……….. II İÇİNDEKİLER……….. III ÖZET………. IV ŞEKİLLER DİZİNİ………... V

TABLOLAR DİZİNİ………. VI

SEMBOLLER DİZİNİ……….. VII

1. GENEL BİLGİLER ……….. 1

1.1. GİRİŞ ………...………... 1

1.2. PIC16F877A MİKRODENETLEYİCİSİ ………. 1

1.3. MPLAB EDİTÖRÜ ……….. 2

1.4. Hİ-TECH PICC DERLEYİSİCİ ………... 2

1.5. EAGLE ÇİZİM PROGRAMI ………... 2

1.6. 7805 ENTEGRESİ ……….... 2

1.7. GRAFİK LCD ………... 3

2. YAPILAN ÇALIŞMALAR, BULGULAR VE TARTIŞMA ………….. 4

2.1. İŞ PLANI .………. 4

2.2. GİRİŞ ….………... 4

2.3. DONANIM ………... 5

2.4. YAZILIM ………. 7

3. SONUÇLAR……….. 18

4. ÖNERİLER ………... 19

5. KAYNAKLAR……….. 20

6. ÖZGEÇMİŞ………... 21

(5)

IV ÖZET

Günümüzde oyun sektörü çok büyük bir pazar haline gelmiştir. Başlangıçta oldukça basit bir yapıya sahip olan oyun konsolları büyük bir değişim göstererek, gelişmiş bilgisayarların önüne geçmiştir. Yeni nesil oyun konsolları, yüksek işlem güçleri ile en karmaşık oyunların bile rahatlıkla çalıştırabilen, müzik-film oynatabilen ve internet erişimi sağlayabilen sistemler haline gelmiştir.

Bu çalışmada MicroChip firmasının 16 serisi PIC16F877A denetleyicisi ile basit bir oyun konsolu geliştirilmiştir. WinStar firmasının 128x64 piksel çözünürlüğündeki tek renk grafik LCD’si konsol ekranı olarak kullanılmıştır. Gerek oyun programının yazılması, gerekse grafik LCD kontrolü karmaşık bir işlem olduğu için programlamada ASM dili yerine C dili kullanılmıştır. Derleyici olarak kolay kullanımı, yaygınlığı ve kapsamlı deneme sürümü nedeniyle HiTech firmasının PICC editörü tercih edilmiştir. Konsol için büyük beğeni toplayan tuğla kırma oyunu yedi seviyeli olarak geliştirilmiştir.

Anahtar Kelimeler: Sanal Ekran, Mikrodenetleyiciler, Havada Kayan Yazı, Kontrast Sensoru

(6)

V

ŞEKİLLER DİZİNİ

Sayfa No

Şekil 1. Donanımın şematik diyagramı ………. 5

Şekil 2. Donanımın baskı devre çizimi ………. 6

Şekil 3. Oyun konsolu ………... 6

Şekil 4. Ekran görüntüsü ………... 7

(7)

VI

TABLOLAR DİZİNİ

Sayfa No

Tablo 1. İş planı ……….. 4

Tablo 2. Alt programlar ……….. 7

(8)

VII

SEMBOLLER DİZİNİ

EPROM : Elektrikle programlanabilir rastgele okunur bellek

EEPROM : Elektrikle silinebilir programlanabilir rastgele okunur bellek PIC : Çevresel arayüz denetleyici

POR : Enerji reseti

PWT : Enerji açık amanlayıcısı SLEEP : Uyku modu

Xtal : Kristal

V : Volt

WDT : Bekçi köpek zamanlayıcısı

(9)

1   

1. GENEL BİLGİLER

1.1. GİRİŞ

Elektronik sistemlerin sürekli gelişmesiyle, her geçen yıl yeni oyunlar piyasaya sürülmektedir. Böylece oyun sektörü büyük bir pazar haline gelmiştir.

Bu çalışmada tuğla kırma oyunu yazılmıştır. Oyun yedi seviyeli olarak geliştirilmiştir. Gerek oyun programının yazılması, gerekse grafik LCD kontrolü karmaşık bir işlem olduğu için programlamada C dili kullanılmıştır. Mikrodenetleyici olarak ise MicroChip firmasının 16 serisi PIC16F877A denetleyicisi kullanılmıştır. WinStar firmasının 128x64 piksel çözünürlüğündeki tek renk grafik LCD’si konsol ekranı olarak kullanılmıştır.

1.2. PIC16F877A MİKRODENETLEYİCİSİ

PIC 16F877 yüksek performanslı, CMOS, full-statik, 8 bit bir mikrodenetleyicidir.

Tüm PIC 16/17 mikrodenetleyicileri gibi PIC 16F877 de RISC yapısı kullanmaktadır [1, 2, 3]. PIC16F87X mikroları birçok esas 8Kx14 word'luk flash program belleği vardır;

 368x8 byte'lık data belleği;

 256x8 byte'lık EEPROM data belleği;

 PIC16C73B/74B/76/77 ile uyumlu pin yapısı;

 Doğrudan ve dolaylı adresleme;

 Power-on Reset (POR), Power-up Timer (PWRT) , üzerinde bulanan RC osilatör ile çalışan Watchdog Timer (WDT);

 Programlanabilen kod koruma;

 Enerji tasarrufu için uyku (SLEEP) modu;

 Düşük güçlü yüksek hızlı CMOSFLASH/EEPROM teknolojisi;

 Bütünüyle statik dizayn;

 Devre üstünde seri programlama;

 5 V'luk kaynak ile çalışması;

 2 V ile 5.5 V arasında işlem yapabilmesi;

(10)

2   

 Düşük güç harcaması

1.3. MPLAB EDİTÖRÜ

Microchip in ürettiği özel bir yazılım olan MPLAB da Mikroişlemci için yazdığımız assembler kodların doğru çalışıp çalışmadığını anlamanın iki yolu vardır. Bu yollar;

1. Kodları mikroişlemciye yükleyip gerçek ortamda denemek, 2. MPLAB gibi yazılımlar ile simüle etmek.

1.4. Hİ-TECH PICC DERLEYİCİSİ

Hi-Tech Picc Microchip firmasının üretiği PIC serisi uC için Ansi-C standartlarına uygun bir C derleyicisidir. Hi-Tech farklı PIC serileri için değişik C derleyicisine sahiptir.

PIC10, PIC12 ve PIC16 serisi için PICC derleyicisini içermektedir. PIC18 serisi için PICC-18 derleyicisi var. Ayrıca 16 bit ve 32 PIC’ler için birer derleyicisi mevcuttur. Hi- Tech sadece Microchip firmasının sadece uC’leri için C derleyisine sahip değil, aynı zamanda diğer uC üreticisin üretiği chip’ler içinde C derleyicisine sahiptir. Windows, Mac ve Linux sürümleri içinde derleyicileri mevcuttur [4].

1.5. EAGLE ÇİZİM PROGRAMI

Eagle, grafik ara yüzlü, kullanımı kolay, güçlü bir baskı devre kartı tasarım aracıdır.

Eagleadını Easy Applicable Graphical Layout Editor kelimelerinin baş harflerinden alır ve anlam olarak ise kolay uygulanabilir grafiksel çizim editörü olarak tanımlanabilir [5].

1.6. 7805 ENTEGRESİ

Regülâtörler, bir sistemde akımı, gerilimi, frekansı, hızı, basıncı, debiyi vb. belli bir düzeyde tutmaya yarayan düzenleyici aygıtlardır. Kullanıldıkları yere göre Voltaj Regülâtörleri, elektronik devreler aracılığıyla, duyarlı aletlere sabit bir gerilim sağlayan elektrikli araçlardır ve değişik yapıda olurlar [6].

(11)

3   

78 kodlu entegrelerin özelliği çıkışını üzerinde yazan son 2 basamak rakam değerine sabit tutmasıdır. Örneğin 78xx yerine 7808 olursa 8 volt çıkışlı 7812 olursa 12 volt çıkışlı bir malzemeden bahsediyor oluruz.

7805 ise 5 voltta gerilimi sabit tutar. 78 serisi entegrelerin örneğin 7805 in giriş voltajı çıkış voltajından bir kaç volt fazla tutulmalıdır. Giriş voltajı çıkış voltajının

%60’dan fazla olmamalıdır. 78 serisi entegrelerin çıkış amper kapasitesi 1 amperdir. 500 mili amper üzerinde soğutucu ile soğutulması gerekebilir.

1.7. GRAFİK LCD

Bu çalışmada WinStar firmasının tek renk grafik sıvı kristal ekranı kullanılmıştır.

Ekran çözünürlüğü 128x64 pikseldir. Ekran veri ve kontrol uçları ile denetlenmektedir [7].

(12)

4

2. YAPILAN ÇALIŞMALAR, BULGULAR VE TARTIŞMA

2.1. İŞ PLANI

Hazırlamış olduğumuz bu bitirme çalışması Tablo 1’de verilen iş planı çerçevesinde gerçekleştirilmiştir. İş planının düzenlenmesinde çalışmanın tüm döneme yayılması ve her hafta tez danışmanının denetiminde çalışmanın sürdürülmesi amaçlanmıştır.

Tablo 1. İş planı

Tarih Çalışma 02.02.2011 Konunun belirlenmesi.

09.02.2011 İş planının hazırlanması.

16.02.2011 Sistemin blok diyagramının hazırlanması.

23.02.2011 Gerekli malzemelerin tespiti.

02.03.2011 Gerekli malzemelerin temini.

09.03.2011 Şematik diyagramın çizilmesi.

16.03.2011 Baskı devre şemasının çizilmesi.

23.03.2011 Baskı devre üretimi.

06.04.2011 Malzemelerin montajı.

13.04.2011 Donanımın test edilmesi.

20.04.2011 Yazılımın hazırlanması.

27.04.2011 Sistemin test edilmesi.

04.05.2011 Bitirme kitapçığının hazırlanması.

11.05.2011 Bitirme kitapçığının kontrolü.

2.2. GİRİŞ

Bu çalışmada, PIC16F877A denetleyicisi ve grafik LCD kullanılarak basit bir oyu konsolu geliştirilmiştir. Konsol donanım ve yazılım olmak üzere iki temel kısımdan oluşmaktadır.

(13)

5

2.3. DONANIM

Denetleyici, grafik LCD, gerilim regülatörü, anahtarlar ve çevre elemanlardan oluşmaktadır. Donanımın şematik (Şekil 1) ve baskı devre çizimi (Şekil 2) Eagle v5.11 programı ile hazırlanmıştır. Sistemin genele görünümü Şekil 3’te verilmiştir.

Şekil 1. Donanımın şematik diyagramı

(14)

6

Şekil 2. Donanımın baskı devre çizimi

Şekil 3. Oyun konsolu

(15)

7

2.4. YAZILIM

Konsol yazılımı PIC C dili kullanılarak geliştirilmiştir. Grafik LCD kontrolü ve oyun kontrolü işlevlerini yerine getirmektedir. Tablo 2’de yazılımda kullanılan alt programlar görülmektedir. Ekran görüntüsü Şekil 4’reki gibidir.

Tablo 2. Alt programlar

void Init(void) void LCDAc(void) void LCDKapat(void)

void AdresXSol(unsigned char ucXSol) void AdresXSag(unsigned char ucXSag) void AdresYSol(unsigned char ucYSol) void AdresYSag(unsigned char ucYSag) void AdresZSol(unsigned char ucZSol) void AdresZSag(unsigned char ucZSol) void VeriYazSol(unsigned char ucVeri) void VeriYazSag(unsigned char ucVeri) void EkraniTemizle(unsigned char ucBolge) void ArkaPlan(void)

void HucreSil(unsigned char ucX, unsigned char ucY) void TuglaCiz(unsigned char ucX, unsigned char ucY) void PadCiz(unsigned char ucX, unsigned char ucY) void TopCiz(unsigned char ucX, unsigned char ucY)

void KarakterSol(unsigned char ucXSol, unsigned char ucYSol, unsigned char ucSembol)

void KarakterSag(unsigned char ucXSag, unsigned char ucYSag, unsigned char ucSembol)

Şekil 4. Ekran görüntüsü

(16)

8

// ANA PROGRAM ///////////////////////////////////////////////////////////

void main(void) {

// 1 saniye bekle DelayMs(250);

Init();

// Oyun başladı ucOyun = 2;

// Programın ana döngüsü =============================================

while(1) {

// Yeni turu başlat --- if ( ucOyun == 2 )

{

// Saati sıfırla uiClk = 0;

// Tuğla sayısını sıfırla ucTS = 0;

// Oyun seviyesini belirle ucSeviye -= 15;

tx = 6; // Top ty = 7;

tx0 = tx;

ty0 = ty;

tax = -1;

tay = -1;

px = 7; // Pad py = 6;

// Tuğlaları diziye yükle --- // Diziyi temizle

for ( i = 0; i < 4; i++ )

for ( j = 0; j < 16; j++ ) ucTH[i][j] = 0;

(17)

9

// Tuğlaları diz

for ( i = 1; i < 4; i++ )

for ( j = 1; j < 15; j++ ) ucTH[i][j] = 1;

// Ekranı temizle

EkraniTemizle(0X03);

// Arkaplanı çiz ArkaPlan();

// Oyunu başlat ucOyun = 1;

// Bekle DelayMs(250);

DelayMs(250);

}

// Oyun döngüsü --- while ( ucOyun == 1 )

{

// Saati arttır uiClk++;

// Anahtarları test et --- // Sol anahtarı --- if ( SOL == 0 && py > 0 && uiClk%10 == 0)

{

// y kordinatını güncelle py--;

// Topu taşı

if ( ty >= py && ty <= py+3 && tx == 6 ) {

ty0 = ty;

ty--;

TopCiz(6, ty);

HucreSil(6, ty0);

}

(18)

10

// Padi çiz PadCiz(px, py);

HucreSil(px, py + 4);

}

// Sağ anahtarı --- if ( SAG == 0 && py < 12 && uiClk%10 == 0)

{

// y kordinatını güncelle py++;

// Topu taşı

if ( ty >= py && ty <= py+3 && tx == 6) {

ty0 = ty;

ty++;

TopCiz(6, ty);

HucreSil(6, ty0);

}

// Padi çiz

PadCiz(px, py + 3);

HucreSil(px, py - 1);

}

// Topu hareketlendir --- if (uiClk%ucSeviye == 0)

{

// Topun kordinatlarnı güncelle --- tx0 = tx;

ty0 = ty;

tx += tax;

ty += tay;

// Topun hareketini belirle --- // Kenarlardan yansıt--- if ( tx < 2 ) tax = 1;

if ( ty < 1 ) tay = 1;

if ( ty > 14 ) tay = -1;

(19)

11

// Padden yansıt --- // Aşağı

if ( tax == 1 && tx == 6) if ( tay == 1 ) // Sağ {

if ( ty >= py-1 && ty <= py + 3 ) // Padden yansıt {

if ( ty == py - 1 ) {

tax = -1;

tay = -1;

} else {

tax = -1;

tay = 1;

} }

else ucOyun = 0;

}

else // Sol {

if ( ty >= py && ty <= py + 4 ) // Padden yansıt {

if ( ty == py + 4) {

tax = -1;

tay = 1;

} else {

tax = -1;

tay = -1;

} }

else ucOyun = 0;

}

// Topu çiz ---

(20)

12

TopCiz(tx, ty);

HucreSil(tx0, ty0);

// Tuğla dizisini ve puanı güncelle --- if ( tx < 4 )

if ( ucTH[tx][ty] == 1 ) {

ucTH[tx][ty] = 0;

// Puanı güncelle --- uiPuan += (105 - ucSeviye) / 15;

KarakterSag(0,46,uiPuan / 100);

KarakterSag(0,52,(uiPuan / 10) % 10);

KarakterSag(0,58,uiPuan % 10);

// Tuğla sayısını arttır ucTS++;

// Tur bitti mi?

if ( ucTS == 42 ) ucOyun = 2;

} }

DelayMs(2);

}

// Oyun Bitti --- if (ucOyun == 0)

{

tx0 = tx;

ty0 = ty;

tx += tax;

ty += tay;

TopCiz(tx, ty);

HucreSil(tx0, ty0);

KarakterSol(5,34,S_O);

KarakterSol(5,40,S_Y);

KarakterSol(5,46,S_U);

(21)

13

KarakterSol(5,52,S_N);

KarakterSag(5, 0,S_B);

KarakterSag(5, 6,S_II);

KarakterSag(5,12,S_T);

KarakterSag(5,18,S_T);

KarakterSag(5,24,S_II);

KarakterSag(5,30,S_NOKTA);

// Bekle

while(1){}

} }

}

// BAŞLANGIÇ DEĞERLERİ /////////////////////////////////////////////////

void Init(void) {

// Portların verilerini belirle

PORTA = 0x00; // A portunun içeriğini temizle PORTB = 0x00; // B portunun içeriğini temizle PORTC = 0x00; // C portunun içeriğini temizle PORTD = 0x00; // D portunun içeriğini temizle PORTE = 0x00; // E portunun içeriğini temizle

// Portların yönlerini ayarla

ADCON1 = 0x06; // A ve E portu sayısal I/O yapıldı TRISA = 0b00000000; // A portu çıkış

TRISB = 0b00000000; // B portu çıkış

TRISC = 0b00001111; // C0..3 giriş C4..7 çıkış TRISD = 0b00000000; // D portu çıkış

TRISE = 0b00000000; // E portu çıkış

// LCD'yi ayarla

LCD_E = 1; // LCD aktif

LCD_RW = 0; // LCD yazma modunda LCD_CS1 = 1; // Sol taraf kapalı LCD_CS2 = 1; // Sağ taraf kapalı // Ekranı temizle

(22)

14

EkraniTemizle(0X03);

// LCDyi aç LCDAc();

// Arka aydınlatmayı aç LCD_BL = 1;

// Başlangıç değerleri tx = 6; // Top ty = 7;

tx0 = tx;

ty0 = ty;

tax = -1;

tay = -1;

px = 7; // Pad py = 6;

ucSeviye = 105;

uiPuan = 0;

}

// ARKA PLAN ////////////////////////////////////////////////////////////

void ArkaPlan(void) {

// uc

unsigned char i; // Sayaç unsigned char j; // Sayaç

// Yazıları Yaz --- KarakterSol(0, 0,S_S);

KarakterSol(0, 6,S_E);

KarakterSol(0,12,S_V);

KarakterSol(0,18,S_II);

KarakterSol(0,24,S_Y);

KarakterSol(0,30,S_E);

KarakterSol(0,36,S_IKIN);

KarakterSol(0,48,(105 - ucSeviye) / 15);

(23)

15

KarakterSag(0,10,S_P);

KarakterSag(0,16,S_U);

KarakterSag(0,22,S_A);

KarakterSag(0,28,S_N);

KarakterSag(0,34,S_IKIN);

KarakterSag(0,46,uiPuan / 100);

KarakterSag(0,52,(uiPuan / 10) % 10);

KarakterSag(0,58,uiPuan % 10);

// Tuğlaları Çiz --- for ( i = 1; i < 4; i++ )

for ( j = 1; j < 15; j++ ) TuglaCiz(i, j);

// Pedi çiz --- for ( j = 6; j < 10; j++ ) PadCiz(7, j);

// Topu çiz --- TopCiz(6, 7);

}

// HÜCRE SİL ////////////////////////////////////////////////////////////

void HucreSil(unsigned char ucX, unsigned char ucY) {

// uc

unsigned char i; // Sayaç

if ( ucY < 8 ) {

AdresXSol(ucX);

AdresYSol(ucY*8);

for ( i = 0; i < 8; i++ ) VeriYazSol(0X00);

} else {

AdresXSag(ucX);

AdresYSag(ucY*8);

for ( i = 0; i < 8; i++ ) VeriYazSag(0X00);

}

(24)

16

}

// TUĞLA ÇİZ ////////////////////////////////////////////////////////////

void TuglaCiz(unsigned char ucX, unsigned char ucY) {

// uc

unsigned char i; // Sayaç

if ( ucY < 8 ) {

AdresXSol(ucX);

AdresYSol(ucY*8);

for ( i = 0; i < 8; i++ ) VeriYazSol(TUGLA[i]);

} else {

AdresXSag(ucX);

AdresYSag(ucY*8);

for ( i = 0; i < 8; i++ ) VeriYazSag(TUGLA[i]);

} }

// PAD ÇİZ //////////////////////////////////////////////////////////////

void PadCiz(unsigned char ucX, unsigned char ucY) {

// uc

unsigned char i; // Sayaç

if ( ucY < 8 ) {

AdresXSol(ucX);

AdresYSol(ucY*8);

for ( i = 0; i < 8; i++ ) VeriYazSol(PAD[i]);

} else {

AdresXSag(ucX);

(25)

17

AdresYSag(ucY*8);

for ( i = 0; i < 8; i++ ) VeriYazSag(PAD[i]);

} }

// TOP ÇİZ //////////////////////////////////////////////////////////////

void TopCiz(unsigned char ucX, unsigned char ucY) {

// uc

unsigned char i; // Sayaç

if ( ucY < 8 ) {

AdresXSol(ucX);

AdresYSol(ucY*8);

for ( i = 0; i < 8; i++ ) VeriYazSol(TOP[i]);

} else {

AdresXSag(ucX);

AdresYSag(ucY*8);

for ( i = 0; i < 8; i++ ) VeriYazSag(TOP[i]);

} }

(26)

3. SONUÇLAR

Bu çalışmada, mikrodenetleyici kontrollü bir oyun konsolu gerçekleştrilmiştir.

1. Sistem için gerekli olan malzemeler tespit ve temin edilmiştir.

2. Oyun programı Hi-Tech firmasının C derleyicisi kullanılarak hazırlanmıştır.

3. Tuğla kırma oyunumuz 7 ( yedi ) seviye olarak tasarlanmıştır ve her seviyede oyun hızı artmaktadır.

4. Oyun esnasında ve sonunda oyun puanını görebilmekteyiz, ayrıca oyun seviyesi arttıkça tuğla başına puanda artmaktadır.

(27)

4. ÖNERİLER

1. Ekran çözünürlüğü arttırılabilir.

2. Oyun konsoluna ses eklenebilir.

3. Renkli grafik LCD kullanılabilir.

4. Oyun seviyeleri farklı tasarlanabilir.

(28)

5. KAYNAKLAR

[1] Altınbaşak, Orhan, Mikrodenetleyiciler PIC Programlama, İstanbul, 2008.

[2] İbrahim, Doğan, PIC C ile ses projeleri, İstanbul, 1999.

[3] Microchip Technology Incorporated., PIC16F87X Data Sheet 28/40-Pin 8-Bit CMOS FLASH Microcontrollers, USA, 2001.

[4] Microchip Technology Inc., Getting Started with the HI-TECH C Compiler for IC10/12/16 MCUs, Microchip PICDEMTM 2 PLUS Board and MPLABR ICD 2, Australia, 2010.

[5] CadSoft Computer, EAGLE EASILY APPLICABLE GRAPHICAL LAYOUT EDITOR Tutorial Version 5, 7th Edition, USA, 2010.

[6] Fairchild Semiconductor Corporation, LM78XX/LM78XXA 3-Terminal 1A Positive Voltage Regulator, USA, 2010.

[7] Winstar Display Co. Ltd., WG12864D 128x64dots, Taiwan, 2011.

(29)

   

6. ÖZGEÇMİŞ

Cüneyt BAŞAR 1987’de Trabzon’da doğdu. İlköğrenimini Fatih İlkokulu ve orta öğrenimini Cumhuriyet Ortaokulu’nda, lise öğrenimini Trabzon Lisesi’nde yaptı. 2006 yılında Karadeniz Teknik Üniversitesi, Mühendislik Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü’nde Lisans Programı’na başladı. Yabancı dil olarak İngilizce bilmektedir.

Emre DEMİRKAPI 1988’de Konya’da doğdu. İlk öğrenimini Öğretmen Abdurrahim İlköğretim Okulun’nda, ve lise öğrenimini Atatürk Lisesi’nde yaptı. 2006 yılında Karadeniz Teknik Üniversitesi, Mühendislik Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü’nde Lisans Programı’na başladı. Yabancı dil olarak İngilizce bilmektedir.

Canan GÜLER 1989’de Erzurum’da doğdu. İlk öğrenimini Ankara Batıkent İlköğretim Okulun’nda, ve lise öğrenimini Süleyman Demirel Anadolu Lisesi’nde yaptı. 2007 yılında Karadeniz Teknik Üniversitesi, Mühendislik Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü’nde Lisans Programı’na başladı. Yabancı dil olarak İngilizce bilmektedir.

Referanslar

Benzer Belgeler

Pazarlama faaliyetlerinin yürütülmesi sürecinde önemli bir unsur olan dağıtım fonksiyonu özellikle ürün dağıtım yönetiminin küresel çapta faaliyet gösterdiği

float sbyte, byte, short, ushort, int, uint, long, ulong, char, decimal char sbyte, byte, short.. sbyte byte, ushort, uint, ulong, char ushort sbyte, byte,

Bloklar ‘{‘ ve ‘}’ ayraç işaretleri içinde belirtilen komutların bir araya gelmesi ile..

[r]

Şekil 28, 15.çizimdeki tekinsizlik algısının değerlendirilmesinde 28 kişi 3 yüzeyin tamamen kapalı olduğu temsili; 12 kişi alt yüzeyin tasarlanmadığı üst iki

Conclusion: In conclusion, patients with overactive with elevated postvoiding residue volumes showed increased maximum bladder capacity, but detrusor over-activity was not

Dead volume or void volume is the total volume of the liquid phase in the chromatographic column.. Void Volume can be calculated as the

Affected family members had the typical facial, hand and foot anomalies and additionally presented case has rarely reported polythelia and non reported hypoplasia of the 3 rd