Arduino ve Kodlama Kitabı Piyasaya Çıktı!

Your ads will be inserted here by

Easy Plugin for AdSense.

Please go to the plugin admin page to
Paste your ad code OR
Suppress this ad slot.


ARDUINO VE KODLAMA

 

Bu kitap, programlamaya ilgi duyan veya öğrenmek isteyen 7’den 70’e herkese hitap etmektedir. Kodlama/programlama ile ARDUINO platformunu en sade ve akıcı şekilde ele almaktadır.

Konular kodlama öğretimine uygun olarak düzenlenmiş, içerik özenle oluşturulmuş ve tüm detaylar en yalın haliyle aktarılmıştır. Ayrıca, ARDUINO ile gerçekleştirilmiş onlarca örnek uygulama içermektedir.

Siz de bu kitap sayesinde kodlama öğrenerek kolaylıkla kendi projelerinizi hayata geçirebilir, hayal ettiğiniz tasarımları gerçekleştirebilirsiniz.

 

Kitap, ALTAŞ Yayıncılık ve Elektronik’ten temin edilebilir. Burayı tıklayarak siteyi ziyaret edebilirsiniz.

Şimdi kodlama zamanı…

 

Son on yılı mercek altına aldığımızda en büyük, en hızlı değişimin teknoloji alanında, özellikle yazılım (kodlama) alanında olduğunu görürüz. Bu baş döndürücü gelişmeleri daha ilerilere taşıyabilmek adına gelişmiş ülkelerde çok ciddi yatırımlar yapılmaktadır. Dört yaşından itibaren kodlama eğitimleri verilmesi, yazılım sektörüne ayrılan dev bütçeler buna örnek gösterilebilir. Ülkemizde, birkaç yıldır yeni yeni filizlenen çalışmalar göze çarpsa da, yeterli düzeyde olduğu maalesef söylenemez. Kodlama eğitiminin yaygınlaşması; ulaşılabilir, anlaşılabilir kaynakların çoğalması ile mümkün olabilir.

Yazılımın temel yapıtaşı olan kodlama eğitimini ele alan bu kitabın hazırlık aşamasında, konuyla ilgili olabilecek yazılı ve görsel materyaller, kişisel web siteleri, bloglar, eğilimleri gösteren forum yazıları tek tek incelenmiş, ihtiyaç ve eksiklikler doğrultusunda bir yol izlenmiştir. Programlama dillerine ait en temel kavramlar tüm detaylarıyla aktarılmaya çalışılmıştır. ARDUINO kullanımı ve kavramları da anlatıldıktan sonra, örnek uygulamalar ve projeler ARDUINO ile gerçekleştirilmiştir.

Kitap, öğrenimi kolaylaştırmak adına öğretim, yöntem ve teknikleri göz önünde bulundurularak hazırlanmıştır.

 


İçindekiler

  1. BÖLÜM… 13

1.1. KODLAMA/PROGRAMLAMA NEDİR?. 14

1.1.1. Kodlamanın Önemi 14

1.1.2. Kodlama İşlemi 15

1.2. MİKRO BİLGİSAYARLARI TANIYALIM… 15

1.2.1. Mikroişlemciler Ve P-N Teknolojisi 16

1.2.2. Mikroişlemci Nedir?. 18

1.2.3. Mikrodenetleyici Nedir?. 21

1.3. DİJİTAL DÜNYANIN ÇEKİRDEĞİ  “1” VE “0”. 22

1.3.1. Gerilim (volt) Kavramı 24

1.4. DİJİTAL SAYI SİSTEMLERİ 25

1.4.1. Desimal (Onluk) Sayı Sistemi 25

1.4.2. Binary (ikilik) Sayı Sistemi 25

1.4.3. Desimal (Onluk) Tabanı Bin. (İkilik) Tabana Dönüştürme. 27

1.4.4. Bin.(İkilik) Tabanı Desimal (Onluk) Tabana Dönüştürme. 27

1.4.5. Hexadesimal(Onaltılık) Sayı Sistemi 29

1.4.6. Sayı Tabanlarının Programlama Dillerinde Gösterimi 30

1.5. MANTIKSAL KAVRAMLAR.. 31

1.5.1. Değil (Not). 31

1.5.2. Ve (And). 31

1.5.3. Veya (Or). 33

1.6. ANALOG VE DİJİTAL KAVRAMLARI 34

  1. BÖLÜM… 37

2.1. ALGORİTMA NEDİR?. 38

2.1.1. Algoritmada Kullanılan Şekiller Ve Anlamları 39

2.2. KONTROL SİSTEMLERİ 44

2.3. KODLAMADA KULLANILAN BAZI KAVRAMLAR.. 47

2.3.1. Değişken.. 47

2.3.1. Atama. 47

2.3.1. Sorgulama. 48

2.3.1. Karar Verme. 48

2.3.1. Dallanma. 49

2.3.1. Döngü.. 49

2.4. ALGORİTMA ÖRNEKLERİ 50

2.4.1. ÖRNEK 1: 50

2.4.1. ÖRNEK 2: 52

2.4.1. ÖRNEK 3: 53

  1. BÖLÜM… 55

3.1. GELİŞTİRME PLATFORMU NEDİR?. 56

3.2. GELİŞTİRME PLATFORMLARI İLE KODLAMA ÖĞRENMEK.. 58

3.3. ARDUINO NEDİR?. 59

3.1.1. Arduino Modelleri Ve Özellikleri 61

3.4. ARDUINO UNO YAPISI 70

  1. BÖLÜM… 73

4.1. ARDUINO İLE KOD YAZMA.. 74

4.1.1. Arduino Kodlama Aşamaları 74

4.1.2. Arduino IDE.. 75

4.1.4. Arduino IDE Menüleri 83

4.2. ARDUINO KODLAMA YAPISI 87

4.3. ARDUINO İLE BİLGİSAYAR BAĞLANTISI 89

4.4. İLK UYGULAMA VE SERIAL MONITOR.. 91

4.4.1. Arduino İle İlk Uygulama. 91

  1. BÖLÜM… 97

5.1. KODLAMADA YAZIM KURALLARI 98

5.1.1. Noktalı Virgül- “ ; “. 98

5.1.2. Küme Parantezi (Süslü parantez) – “ { } “. 98

5.1.3. Açıklama Ve Hatırlatma Satırları 98

5.1.4. #INCLUDE İfadesi 99

5.1.5. #DEFINE İfadesi 100

5.2. OPERATÖRLER.. 100

5.2.1. Aritmetik Operatörler. 100

5.2.2. Karşılaştırma Operatörleri 103

5.2.3. Boolean Operatörleri 105

5.2.4. Bit İşlem Operatörü.. 106

5.2.5. Bileşik Operatörler. 108

5.2.6. İşlem Öncelikleri 112

5.3. SABİTLER VE DEĞİŞKENLER.. 113

5.3.1. Sabitler. 113

5.3.2. Değişken Veri Tipleri 114

5.4. KARAR YAPILARI 120

5.4.1. IF.. 120

5.4.2. IF-ELSE.. 124

5.4.3. IF-ELSE IF-ELSE.. 129

5.4.4. SWITCH-CASE.. 132

5.4.5. GOTO.. 135

5.5. DÖNGÜLER.. 137

5.5.1. FOR.. 138

5.5.2. WHILE.. 141

5.5.3. DO-WHILE.. 143

5.5.4. BREAK.. 145

5.5.5. CONTINUE.. 146

5.5.6. SONSUZ DÖNGÜ.. 146

5.6. ARDUINO PROGRAM YAPILARI 146

5.6.1. Tanımlama Ve Bildirim Alanı (1. BÖLÜM). 147

5.6.2. Setup( ) Yapısı (2. BÖLÜM). 147

5.6.3. Loop( ) Yapısı (3. BÖLÜM). 148

  1. BÖLÜM… 149

6.1. ARDUINO PORTLARININ YÖNETİMİ 150

6.2. DİJİTAL GİRİŞ-ÇIKIŞ KOMUTLARI 150

6.2.1. pinMode( ) Komutu.. 150

6.2.2. digitalWrite( ) Komutu.. 151

6.2.3. digitalRead( ) Komutu.. 151

6.3. ANALOG GİRİŞ-ÇIKIŞ KOMUTLARI 152

6.3.1. analogRead( ) Komutu.. 152

6.3.2. analogWrite( ) Komutu.. 153

6.4. GECİKME(ZAMAN) KOMUTLARI 154

6.4.1. millis( ) Komutu.. 154

6.4.2. micros( ) Komutu.. 154

6.4.3. delay( ) Komutu.. 154

6.4.4. delayMicroseconds( ) Komutu.. 155

  1. BÖLÜM… 157

7.1. DİJİTAL ÇIKIŞ KULLANIMI 158

7.1.1. LED Kullanımı 158

7.1.2. Uygulama 1: Bir LED’in Yakıp-Söndürülmesi 160

7.1.3. Uygulama 2: Flaşör (Flip/Flop) Yapımı 162

7.1.4. Uygulama 3: LED’lerle Kara Şimşek Yapımı 164

7.1.5. Uygulama 4: Trafik Işığı Yapımı 167

7.2. DİJİTAL GİRİŞ KULLANIMI 170

7.2.1. Buton Kullanımı 170

7.2.2. Uygulama 5: Bir Buton İle LED Yakıp-Söndürme. 173

7.2.3. Uygulama 6: İki Buton İle Tek LED’i Yakıp-Söndürme. 175

7.3. LCD UYGULAMALARI 177

7.3.1. LCD Bağlantı Pinleri 178

7.3.2. LCD İle ilgili Bazı Komutlar. 179

7.3.3. Uygulama 7: LCD’ye Yazı Yazdırma. 181

7.3.4. Uygulama 8: LCD’ye Değişken İçeriği Yazdırma. 183

7.4. ANALOG GİRİŞ KULLANIMI 185

7.4.1. Analog Sinyalin Sayısal Karşılığı 186

7.4.2. Uygulama 9: Analog Bilgi Okuma Ve Ekrana Yazdırma. 186

7.5. ANALOG ÇIKIŞ -PWM KULLANIMI 189

7.5.1. PWM Çözünürlük Değeri 190

7.5.2. Uygulama 10: PWM Sinyali İle LED’in Parlaklığının Ayarlanması 190

7.6. EEPROM KULLANIMI 193

7.6.1. Uygulama 11: EEPROM Belleğe Veri Kaydetme. 194

  1. BÖLÜM… 197

8.1. LDR İLE KARANLIKTA YANAN LED.. 198

8.1.1. Uygulamanın Amacı 198

8.1.2. Uygulamada Kullanılan Malzemeler. 198

8.1.3. Uygulamada Kullanılan LDR Işık Sensörü.. 198

LDR (Işığa Bağlı Direnç). 198

8.1.4. Devrenin Uygulama Şekli 198

8.1.5. Program Kodları 199

8.1.6. Açıklamalar. 199

8.2. NTC İLE ISI KONTROL DEVRESİ 199

8.2.1. Uygulamanın Amacı 199

8.2.2. Uygulamada Kullanılan Malzemeler. 199

8.2.3. Uygulamada Kullanılan NTC Isı Sensörü.. 200

8.2.4. Devrenin Uygulama Şekli 200

8.2.5. Program Kodları 200

8.2.6. Açıklamalar. 201

8.3. REED ROLE İLE TEMASSIZ ALGILAMA.. 201

8.3.1. Uygulamanın Amacı 201

8.3.2. Uygulamada Kullanılan Malzemeler. 201

8.3.3. Uygulamada Kullanılan Reed Röle Manyetik algılayıcı 202

Reed Röle. 202

Your ads will be inserted here by

Easy Plugin for AdSense.

Please go to the plugin admin page to
Paste your ad code OR
Suppress this ad slot.

8.3.4. Devrenin Uygulama Şekli 202

8.3.5. Program Kodları 202

8.3.6. Açıklamalar. 203

8.4. HAREKET SENSÖRÜ İLE HIRSIZ ALARM… 203

8.4.1. Uygulamanın Amacı 203

8.4.2. Uygulamada Kullanılan Malzemeler. 203

8.4.3. Uygulamada Kullanılan Hareket Sensörü Ve Buzzer. 204

HC-SR501 Hareket Sensör Modülü.. 204

8.4.4. Devrenin Uygulama Şekli 205

8.4.5. Program Kodları 205

8.4.6. Açıklamalar. 206

8.5. LM35 İLE SICAKLIK ÖLÇÜMÜ.. 206

8.5.1. Uygulamanın Amacı 206

8.5.2. Uygulamada Kullanılan Malzemeler. 206

8.5.3. Uygulamada Kullanılan LCD Ekran Ve LM35 Sıcaklık Sensörü.. 206

8.5.4. Devrenin Uygulama Şekli 207

8.5.5. Program Kodları 208

8.5.6. Açıklamalar. 208

8.6. 3 RENKLİ (RGB) LED KONTROLÜ.. 209

8.6.1. Uygulamanın Amacı 209

8.6.2. Uygulamada Kullanılan Malzemeler. 209

8.6.3. Uygulamada Kullanılan Üç Renkli LED.. 209

8.6.4. Devrenin Uygulama Şekli 210

8.6.5. Program Kodları 210

8.6.6. Açıklamalar. 211

8.7. ULTRASONİK SENSÖR İLE MESAFE ÖLÇÜMÜ.. 212

8.7.1. Uygulamanın Amacı 212

8.7.2. Uygulamada Kullanılan Malzemeler. 212

8.7.3. Uygulamada Kullanılan Ultrasonik Sensör. 212

8.7.4. Devrenin Uygulama Şekli 213

8.7.5. Program Kodları 213

8.7.6. Açıklamalar. 214

8.8. POTANSİYOMETRE İLE SERVO MOTOR KONTROLÜ.. 214

8.8.1. Uygulamanın Amacı 214

8.8.2. Uygulamada Kullanılan Malzemeler. 215

8.8.3. Uygulamada Kullanılan Servo Motor. 215

8.8.4. Devrenin Uygulama Şekli 215

8.8.5. Program Kodları 216

8.8.6. Açıklamalar. 216

8.9. SERİAL INTERFACE MODÜLÜ İLE LCD KULLANIMI 217

8.9.1. Uygulamanın Amacı 217

8.9.2. Uygulamada Kullanılan Malzemeler. 217

8.9.3. Uygulamada Kullanılan Serial Interface Modül 217

8.9.4. Devrenin Uygulama Şekli 218

8.9.5. Program Kodları 218

8.9.6. Açıklamalar. 219

8.10. DHT11 İLE SICAKLIK VE NEM ÖLÇÜMÜ.. 219

8.10.1. Uygulamanın Amacı 219

8.10.2. Uygulamada Kullanılan Malzemeler. 220

8.10.3. Uygulamada Kullanılan DHT11 Sıcaklık Ve Nem Sensörü.. 220

8.10.4. Devrenin Uygulama Şekli 220

8.10.5. Program Kodları 221

8.10.6. Açıklamalar. 221

8.11. TOPRAK NEM SENSÖRÜ İLE OTOMATİK ÇİÇEK SULAMA.. 222

8.11.1. Uygulamanın Amacı 222

8.11.2. Uygulamada Kullanılan Malzemeler. 222

8.11.3. Uygulamada Kullanılan Toprak Nem Sensörü, Röle Modülü Ve Su Pompası 222

8.11.4. Devrenin Uygulama Şekli 224

8.11.5. Program Kodları 224

8.11.6. Açıklamalar. 225

8.12. YAĞMUR SENSÖRÜ İLE SİLECEK HIZI KONTROLÜ.. 226

8.12.1. Uygulamanın Amacı 226

8.12.2. Uygulamada Kullanılan Malzemeler. 226

8.12.3. Uygulamada Kullanılan Yağmur Sensörü.. 226

8.12.4. Devrenin Uygulama Şekli 227

8.12.5. Program Kodları 227

8.12.6. Açıklamalar. 228

8.13. TOUCH SWİTCH İLE SERVO MOTOR KONTROLÜ.. 228

8.13.1. Uygulamanın Amacı 228

8.13.2. Uygulamada Kullanılan Malzemeler. 228

8.13.3. Uygulamada Kullanılan Dokunma Algılayıcı Modül 229

8.13.4. Devrenin Uygulama Şekli 229

8.13.5. Program Kodları 230

8.13.6. Açıklamalar. 230

8.14. 7 SEGMENT DİSPLAY İLE 0-9 ARASI SAYICI 231

8.14.1. Uygulamanın Amacı 231

8.14.2. Uygulamada Kullanılan Malzemeler. 231

8.14.3. Uygulamada Kullanılan 7 Segment Display. 231

8.14.4. Devrenin Uygulama Şekli 232

8.14.5. Program Kodları 232

8.14.6. Açıklamalar. 234

8.15. PWM İLE DC MOTOR HIZ KONTROLÜ.. 234

8.15.1. Uygulamanın Amacı 234

8.15.2. Uygulamada Kullanılan Malzemeler. 234

8.15.3. Uygulamada Kullanılan DC Motor. 235

8.15.4. Devrenin Uygulama Şekli 235

8.15.5. Program Kodları 236

8.15.6. Açıklamalar. 236

8.16. L298N MOTOR SÜRÜCÜ İLE YÖN KONTROLÜ.. 237

8.16.1. Uygulamanın Amacı 237

8.16.2. Uygulamada Kullanılan Malzemeler. 237

8.16.3. Uygulamada Kullanılan DC Motor Ve Motor Sürücü.. 237

8.16.4. Devrenin Uygulama Şekli 238

8.16.5. Program Kodları 239

8.16.6. Açıklamalar. 240

8.17. STEP MOTOR İLE ADIM KONTROLÜ.. 241

8.17.1. Uygulamanın Amacı 241

8.17.2. Uygulamada Kullanılan Malzemeler. 241

8.17.3. Uygulamada Kullanılan Step Motor Ve Motor Sürücü Modülü.. 241

8.17.4. Devrenin Uygulama Şekli 242

8.17.5. Program Kodları 243

8.17.6. Açıklamalar. 243

8.18. XY JOYSTİCK MODÜLÜ İLE 2 SERVO MOTOR KONTROLÜ.. 244

8.18.1. Uygulamanın Amacı 244

8.18.2. Uygulamada Kullanılan Malzemeler. 244

8.18.3. Uygulamada Kullanılan Joystick Modülü.. 244

8.18.4. Devrenin Uygulama Şekli 245

8.18.5. Program Kodları 245

8.18.6. Açıklamalar. 246

8.19. NOKİA 5110 GRAFİK LCD KULLANIMI 246

8.19.1. Uygulamanın Amacı 246

8.19.2. Uygulamada Kullanılan Malzemeler. 246

8.19.3. Uygulamada Kullanılan Grafik Ekran Modülü.. 246

8.19.4. Devrenin Uygulama Şekli 247

8.19.5. Program Kodları 247

8.19.6. Açıklamalar. 248

8.20. ÇİZGİ İZLEYEN ROBOT.. 249

8.20.1. Uygulamanın Amacı 249

8.20.2. Uygulamada Kullanılan Malzemeler. 249

8.20.3. Uyg. Kullan. DC Motor, Çizgi ve Engel Algılayıcı Sensör. 249

8.20.4. Devrenin Uygulama Şekli 252

8.20.5. Program Kodları 252

8.20.6. Açıklamalar. 253

  1. BÖLÜM… 257

9.1. GÜÇ KAYNAĞI 258

9.1.1. Alternatif Akım (AC) Nedir?. 258

9.1.2. Doğru Akım(DC) Nedir?. 258

9.1.3. Piller. 260

9.2. DİYOTLAR.. 260

9.2.1. Diyot Çeşitleri 261

9.3. TRANSİSTÖR.. 264

9.3.1. NPN Transistör. 265

9.3.2. PNP Transistör. 265

9.4. DİRENÇ.. 266

9.4.1. Direnç Değerinin Okunması 267

9.4.2. Direnç Çeşitleri 268

9.5. BREAD BOARD (Devre Tahtası) Kullanımı 272

9.6. RÖLE.. 273

9.7. REED ROLE.. 274

9.8. 7 SEGMENT DISPLAY.. 275

9.9. DC MOTOR.. 276

9.10. SERVO MOTOR.. 277

9.11. STEP MOTOR.. 278

KULLANILAN MALZEMELERİN LİSTESİ 280

Kaynakça. 281

 

 

Kodlama Eğitimi

Bana Oyun Yapar Mısın?-Scratch

Hesaplamalı Düşünme Becerileri ve Kodlama

Code.org İle Kodlamaya Başlangıç