içindekiler

Transkript

içindekiler
İÇİNDEKİLER
VII
İÇİNDEKİLER
1 GİRİŞ 1
Bu Kitap Kimlere Hitap Eder 1
Kitabın İşleyişi 2
Kitabın Konuları 3
Kitabı Takip Etmek İçin Gerekenler 6
Kaynak Kodu ve Simülasyonlar 6
2 KİTAPTA KULLANILAN PROGRAMLAR 7
C# 7
CCS C 11
Proteus 15
App Inventor Vırtual Serıal Port Drıver 19
25
3 MİKROİŞLEMCİLER VE MİKRODENETLEYİCİLER 31
Mikroişlemciler 31
Mikroişlemci Temel Yapısı 32
Merkezi İşlem Birimi (CPU) 32
Aritmetik Lojik Birimi (ALU) 33
Kaydediciler (Regısters) 33
Kontrol Birimi (Control Unit) 34
Hafıza (Memory) 35
RAM (Random Access Memory) 35
ROM (Ready Only Memory) 35
PROM (Programmable Ready Only Memory) 36
EPROM (Erasable Programmable Ready Only Memory) 36
EEPROM (Electrically Erasable Programmable Ready Only Memory) 37
İletişim Yolları 38
Adres Yolu (Adress Bus) 39
Veri Yolu (Data Bus) 39
Kontrol Yolu (Kontrol Bus) 39
Giriş - Çıkış (Input - Output) 40
VIII
MİKRODENETLEYİCİLER İLE SERİ İLETİŞİM
Mikroişlemci Mimarileri 40
Donanım Mimarileri - Bellek Organizasyonu 40
Von Neuman (Prınceton) Mimarisi 41
Harvard Mimarisi 41
Komut Tasarım Mimarisi 42
CISC (Complex Instruction Set Computer) 42
RISC (Reduced Instruction Set Computer) 43
Mikrodenetleyiciler 45
Mikroişlemciler ve Mikrodenetleyiciler Arasındaki Farklar 45
Mikrodenetleyici Seçilirken Dikkat Edilmesi Gerekenler 46
Mikrodenetleyici Üreticileri 47
PIC Denetleyicilerinin Seçilme Nedenleri 48
Microchip Technology Ve PIC Mikrodenetleyicisi 49
8-Bit Mikrodenetleyiciler 50
16-Bit Mikrodenetleyiciler 51
32-Bit Mikrodenetleyiciler 51
PIC Denetleyicilerinin Genel Özellikleri 51
Bellek Yapısı 51
Program Belleği 51
Veri Belleği 53
EEPROM Belleği 55
Besleme Gerilimleri 56
Osilatör Bağlantıları Kristal Osilatörler R/C Osilatörler 57
58
58
Reset’leme Devreleri 59
Kitap Boyunca Kullanılan Denetleyicilerin Genel Özellikleri 60
PIC16F628A 60
PIC16F877A 61
PIC18F4550 62
Mikrodenetleyici Programlamak için Gerekenler 63
İÇİNDEKİLER
4 SERİ İLETİŞİMİN TEMELLERİ 65
Seri İletişimin Nedenleri 65
Seri İletişim Temelleri 66
Sayı Sistemleri 66
Onlu (Decimal) Sayı Sistemi 66
İkili (Binary) Sayı Sistemi 66
On altılı (Hexadecimal-Hex) Sayı Sistemi 68
Bit ve Byte Kavramları 69
Kodlama Çeşitleri 70
ASCII 70
Hex Kodlama 72
Seri İletişim Türleri 72
Senkron Seri İletişim 72
Asenkron Seri İletişim 73
Seri İletişim Terimleri 74
Simplex 74
Half Dublex 74
Full Dublex 74
Baud Rate 75
Start, Stop, Parıty ve CRC Bitleri 75
5.1 UYGULAMALAR-1: LED YAKMA SÖNDÜRME 77
Led Yakma Söndürme 77
Amaç 78
Haberleşme Türü: RS232 78
Bağlantı Şeması 78
Veri Transfer Formatı 80
Elektronik Bağlantı 81
C# Kodu 82
Formun Tasarımı 82
Kodun İşleyişi 83
Program Kodları 83
Mikrodenetleyici Kodu 95
Kodun İşleyişi 95
IX
X
MİKRODENETLEYİCİLER İLE SERİ İLETİŞİM
Program Kodları Günlük Hayatta Kullanımı Elektronik Bağlantı Android Blokları 95
99
99
100
5.2 UYGULAMALAR-2: MOTOR-PWM 103
Amaç 103
İletişim Türü 103
USB 103
USB 1.0 104
USB 2.0 104
USB 3.0 104
USB Tipleri 105
USB Protokol Yapısı 105
USB Terimleri 106
USB Paketleri 108
1. USB Paket İçerikleri 108
2. USB Paketleri 110
Veri Transferi 112
Bir USB Sınıfı: İnsan Arabirim Aygıtı - Human Interface Device Class (HID) 114
Elektronik Bağlantı 114
PWM Sinyali 115
PWM Modülasyon Teknikleri 116
Mikrodenetleyicilerle PWM Sinyali 119
DC Motor 120
DC Motor Kısımları 123
DC Motor Kontrolü 124
L293D Sürücü Entegresi 125
USB – TTL Çevirici Modül 125
C# Kodu 125
Formun Tasarımı 126
Kodun İşleyişi 127
Program Kodları 127
Mikrodenetleyici Kodu 134
İÇİNDEKİLER
Kodun İşleyişi Program Kodları Android Blokları 134
135
137
5.3 UYGULAMALAR-3 VANTILATÖR UYGULAMASI 141
Amaç 141
İletişim Türleri: Usb ve Kızılötesi 141
Kızılötesi 141
Kızılötesi İletişim Protokolleri 145
Bağlantı Şeması 147
C# Kodu 153
Formun Tasarımı 153
Kodun İşleyişi 154
Mikrodenetleyici Kodları 163
Ara Devre Kodları 163
Kumanda Kodları 167
Ana Devre Kodları 172
5.4 UYGULAMALAR-4: SICAKLIK KONTROL UYGULAMASI 177
Amaç 177
İletişim Türleri: Bluetooth ve 1-Wire 177
Bluetooth 177
Bluetooth SIG 178
Bluetooth Tarihi 179
Bluetooth 1.0 179
Bluetooth 1.1 179
Bluetooth 1.2 179
Bluetooth 2.0+ EDR 180
Bluetooth 2.1 + EDR 180
Bluetooth 3.0 + HS 180
Bluetooth 4.0 180
Bluetooth 4.1 180
Bluetooth Çalışma Prensibi 181
Bluetooth Ağ Yapısı 182
XI
XII
MİKRODENETLEYİCİLER İLE SERİ İLETİŞİM
Bluetooth Protokol Yapısı 183
1-Wire (Tek Hat) İletişim 186
Elektronik Bağlantı 189
7 Segment Display 189
LM35 Sıcaklık Sensörü 193
HC06 Bluetooth Modülü 194
C# Kodu 199
Formun Tasarımı 199
Kodun İşleyişi 200
Program Kodları 200
Mikrodenetleyici Kodu 208
Kodun İşleyişi 208
Program Kodları 208
Endüstride Kullanımı 215
DS18B20 215
1-Wire İletişim İçin Fonksiyon Oluşturma 221
Elektronik Bağlantı 225
Mikrodenetleyici Kodları 226
Android Kodları 230
5.5 UYGULAMALAR-5 PIYANO TASARIMI 233
Amaç 233
İletişim Türü: Radyo Frekansı (RF) - Bluetooth 233
Veri Transfer Formatı Elektronik Bağlantı C# Kodu User Kontrol Tasarımı User Kontrol İşleyişi User Kontrolün Forma Eklenmesi User Kontrol Kodları Formun Tasarımı Kodun İşleyişi Program Kodları Mikrodenetleyici Kodu 238
239
241
241
242
242
244
252
253
254
259
İÇİNDEKİLER
Kodun İşleyişi Program Kodları 259
259
5.6 UYGULAMALAR-6: SES İLE STEP MOTOR KONTROLÜ 267
Amaç 267
İletişim Türleri: RS485 267
RS485 267
RS232 ve RS485 Arasındaki Farklar Elektronik Bağlantı MAX485 Entegresi L293D Entegresi Step Motor C# Kodu Formun Tasarımı Kodun İşleyişi Program Kodları Mikrodenetleyici Kodu Kodun İşleyişi Program Kodları Android Blokları 269
269
270
272
277
288
288
289
289
295
295
296
304
5.7 UYGULAMALAR-7: SPI VE I2C ILE EEPROM UYGULAMASI 309
Amaç 309
İletişim Türü 309
USB 309
SPI 309
I2C 313
Elektronik Bağlantı 319
24C32A EEPROM Bellek 321
25C040 EEPROM Bellek 325
DS1302 331
Termistör 333
C# Kodu 334
Formun Tasarımı 334
XIII
XIV
MİKRODENETLEYİCİLER İLE SERİ İLETİŞİM
Kodun İşleyişi Program Kodları Mikrodenetleyici Kodu Kodun İşleyişi Program Kodları 335
335
340
340
341
5.8 UYGULAMALAR-8: SD KART UYGULAMASI 353
Amaç 353
SD Kart 353
Smart Media (SM) Kartı 353
Compact Flash (CF) 354
Memory Stick (MS) 355
Multı Media Kartı (MMC) 356
xD-Picture Card 357
SD Card 358
Uygulamada Kullanılan Programlar 362
Windows Hyper Termınal 362
CCS C Serial Monitor 364
WinHex Programı 366
Elektronik Bağlantı 367
Mikrodenetleyici Kodu 368
Kodun İşleyişi 368
CCS C Kodları 368
5.9 UYGULAMALAR-9: RFID UYGULAMASI 371
Amaç 371
RFID 371
RFID Okuyucu 372
RFID Etiketi (TAG) 372
Elektronik Bağlantı 374
RDM6300 RFID Kart Okuyucu/Yazıcı 375
C# Kodu 377
Form1 Formunun Tasarımı ve Kodun İşleyişi 377
Form1 - C# Kodu 379
İÇİNDEKİLER
İletişim Ayarlar Formunun Tasarımı ve Kodun İşleyişi Program Kodları Mikrodenetleyici Kodu Kodun İşleyişi CCS C Kodu 383
384
384
384
385
5.10 UYGULAMALAR-10: MODBUS UYGULAMASI 387
Amaç 387
Modbus 387
Elektronik Bağlantı 389
Mikrodenetleyici Kodu 389
Kodun İşleyişi 390
Master - Program Kodları 390
Slave - Program Kodları 391
5.11 UYGULAMA-11: TCP/IP GÖRÜNTÜLÜ SOHBET UYGULAMASI 395
Amaç 395
TCP/IP ve OSI Protokolleri 395
Ağ Topolojileri 395
Yol (Bus) Topolojisi 395
Yıldız (Star) Topolojisi 396
Ağaç (Tree) Topolojisi 397
Halka (Ring) Topolojisi 397
Mesh Topolojisi 398
Ağ Bağlantı Türleri 399
Kablolu Bağlantı 399
Kablosuz Bağlantı 399
Ağ Çeşitleri 399
Kişisel Alan Ağı - Personal Area Network (PAN) 399
Ev Alan Ağı - Home Area Network (HAN) 399
Yerel Alan Ağı - Local Area Network (LAN) 399
Depolama Alan Ağı - Storage Area Network (SAN) 400
Geniş Alan Ağı - Wide Area Network (WAN) 400
Özel Sanal Ağlar (VPN) 400
XV
XVI
MİKRODENETLEYİCİLER İLE SERİ İLETİŞİM
Ağ Cihazları 400
Ağ Arabirim Kartı - Network Interface Card (NIC) 401
HUB 401
Switch (Anahtar - Dağıtıcı) 402
Router (Yönlendirici) 402
Bridge (Köprü) 403
Repeater (Yineleyici - Tekrarlayıcı) 403
Modem 403
Özelleşmiş Bilgisayar AĞları 404
Intranet 404
Extranet 404
Internet 405
Darknet 405
Ağ Oluşturma Modelleri 406
OSI Modeli 406
TCP/IP Modeli 411
C# Kodu 421
Server - Form1 Formunun Tasarımı ve Kodun İşleyişi 421
Server - Form1 C# Kodu Server - SohbetSayfasi Formunun Tasarımı ve Kodun İşleyişi Server - SohbetSayfasi C# Kodu Client - Form1 Formunun Tasarımı ve Kodun İşleyişi 422
424
425
434
Client - Form1 C# Kodu Client - SohbetSayfasi Formunun Tasarımı ve Kodun İşleyişi Client - Sohbetsayfasi C# Kodu Uygulamanın Ekran Görüntüleri 435
437
438
444
5.12 UYGULAMA-12 AKILLI EV OTOMASYONU 447
Amaç 447
İletişim Türü 447
Uygulamada Kullanılan Ekipmanlar 447
MQ7 Gaz Sensörü 448
MZ80 Mesafe Sensörü 449
İÇİNDEKİLER
Ateş Algılama Sensörü 449
DHT11 Sıcaklık-Nem Sensörü 450
Hareket Sensörü 451
Foto Direnç (LDR) 452
Güneş Paneli 452
Akü 453
4x4 Tuş Takımı 455
IP Kamera 456
Elektronik Bağlantı 457
C# Kodu 459
Server - Formun Tasarımı ve Kodun İşleyişi 459
Server - Form1 - C# Kodu 461
Server - IpkameraFormu - C# Kodu Client – Formun Tasarımı ve Kodun İşleyişi 468
471
Client - C# Kodu Kodun İşleyişi 472
476
Ana Denetleyici - CCS C Kodu Bahçe Denetleyici - CCS C Kodu Arka Denetleyici - CCS C Kodu 477
485
494
5.13 UYGULAMA-13 WIFI MODÜLÜ ILE ARABA KONTROLÜ 499
Amaç 499
Rn-117 Wifly Modülü Port Yönlendirme Gps Modülü Elektronik Bağlantı C# Kodu Form1 Tasarımı - Kodun İşleyişi Form1 - C# Kodu ArabaKontrolleri Tasarımı - Kodun İşleyişi Arabakontrolleri - C# Kodu Mikrodenetleyici Kodu Kodun İşleyişi CCS C Kodu 499
503
505
507
508
509
510
516
517
523
524
524
XVII
XVIII
MİKRODENETLEYİCİLER İLE SERİ İLETİŞİM
6 MATLAB, VB, WPF İLE SERİ İLETİŞİM 529
Matlab 532
Matlab M-Dosya İşlemleri 533
M-File ile Veri Gönderme 534
M-File ile Veri Okuma 534
Matlab GUI İşlemleri 535
GUI ile Veri Gönderme 536
GUI ile Veri Okuma 541
Visual Basic (VB) 546
VB ile Veri Gönderme 546
VB ile Veri Okuma 549
WPF 552
WPF ile Veri Gönderme 553
WPF ile Veri Okuma 556
7 CCS C FONKSİYONLARI Veri Türleri Ön İşlemci Komutları Karakter Fonksiyonları String Fonksiyonları Matematik Fonksiyonları Hafıza Fonksiyonları Standart C Özel Fonksiyonları Giriş-Çıkış Fonksiyonları Bit - Byte Fonksiyonları Kontrol Fonksiyonları Gecikme Fonksiyonları Analog Dijital Çevrim (ADC) Fonksiyonları Zamanlayıcı ve Sayıcı Fonksiyonları CCP (Capture/Compare/Pwm) Fonksiyonları RS232 Seri İletişim Fonksiyonları I2C Fonksiyonları SPI Fonksiyonları Lcd Fonksiyonları Dâhili ve Harici Hafıza Fonksiyonları 561
561
563
586
590
603
611
617
622
626
632
639
640
646
655
658
669
678
686
689
İÇİNDEKİLER
8 C# SERIALPORT SINIFI Port Bulma Bağlantı Özellikleri Akış Denetimi Bağlantıyı Açma Bağlantıyı Kapatma Veri Gönderme İşlemleri Byte Veri Tipinde Gönderme İşlemleri Char Veri Tipinde Gönderme İşlemleri String Veri Tipinde Gönderme İşlemleri Diğer Veri Tiplerinde Gönderme İşlemleri Asenkron Veri Gönderme İşlemleri Veri Okuma İşlemleri Byte Veri Tipinde Okuma İşlemleri Char Veri Tipinde Okuma İşlemleri String Veri Tipinde Okuma İşlemleri Diğer Veri Tiplerinde Okuma İşlemleri Hata Yakalama 697
697
699
703
704
706
706
709
710
712
713
714
717
723
725
727
728
729
XIX
XX
MİKRODENETLEYİCİLER İLE SERİ İLETİŞİM

Benzer belgeler