Hesabım
Şifremi Unuttum
Kayıt Ol
16.02.2018

Hello World!

Hello World

Mikrodenetleyiciler, içerisine yazılan programları çalıştırabilen entegre devrelerdir. Bugün piyasada birçok firmanın çeşitli mikrodenetleyicileri bulunmaktadır. Bu mikrodenetleyiciler içerdiği genel amaçlı giriş çıkış (GPIO) pinleri, SPI, I2C, UART ve daha birçok protokol desteği, kimisinde bulunan kablosuz bağlantı ile hayatımızı kolaylaştıracak bir çok araca yapı taşı olmaktadır. 

Bu yazıda Espressif Systems tarafından geliştirilen ESP32 mikrodenetleyicilerinden bahsedeceğiz. 

ESP32, Wi-Fi (2.4 GHz band) ve Bluetooth 4.2 bağlantı çözümlerini tek bir çip üzerinde, çift çekirdek yüksek performanslı ultra düşük güç tüketimine sahip işlemci ve çeşitli çevre birimleri ile bir araya getiriyor.

Espressif, geliştiricilerin ESP32 serisi donanım etrafında uygulamalarını geliştirmelerine yardımcı olmak için temel donanım ve yazılım kaynaklarını geliştiricilere sunmaktadır. Espressif'in yazılım geliştirme frameworkü (ESP-IDF), Wi-Fi, Bluetooth, güç yönetimi ve diğer bir çok sistem özellikleri ile Internet of Things uygulamalarınızı hızlıca geliştirebilmeniz için oluşturulmuştur.

Hello World

Bir ESP32 uygulaması yapmak için nelere ihtiyacımız olacak?

İlk olarak Espressif Github hesabından ESP-IDF frameworkünü, git kullanarak bilgisayarımıza kolanlamamız gerekmektedir. Yazdığımız programları bu framework çerçevesinde oluşturacağız.

ESP32, Arduino dilini ve IDE'sini desteklemektedir. Espressif Github hesabından Arduino reposunu inceleyebilir, Arduino dili ve IDE'sini kullanarak kolayca uygulama geliştirebilirsiniz. Biz yazının devamında C dili ile devam edeceğiz.

C dili ile çalışmak için öncelikle bir kod yazacabileceğimiz metin editörüne, daha doğrusu IDE'ye ihtiyacımız var. C dilini destekleyen herhangi birisi olabilir. Espressif'in resmi dökümanlarında Eclipse IDE'si kullanılarak anlatım yapılmaktadır.

Uygulamalarımızı build edebilmek için Toolchain aracına ihtiyacımız vardır. Bu araçla kodlarımızı derleyebilir, bilgisayara bağladığımız ESP32 kartımızın konfigürasyon ayarını yapabilir, derlenen kodu karta yükleyip istediğimizde seri monitör olarak işlemleri izlememize imkan tanır.

ESP32 için ilk programımız olan "Hello World!"ü aşağıdaki gibi yazıyoruz.

#include <stdio.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_system.h"
#include "esp_spi_flash.h"

void app_main()
{
        printf("Hello world!\n");

        esp_chip_info_t chip_info;
        esp_chip_info(&chip_info);
        printf("%d CPU çekirdeği, WiFi%s%s özellikli ESP32 çipi",
                chip_info.cores,
                (chip_info.features & CHIP_FEATURE_BT) ? "/BT" : "",
                (chip_info.features & CHIP_FEATURE_BLE) ? "/BLE" : "");

        printf("%d MB %s flash\n", spi_flash_get_chip_size() / (1024 * 1024),
                (chip_info.features & CHIP_FEATURE_EMB_FLASH) ? "gömülü" : "harici");

        for (int i = 10; i >= 0; i--) {
                printf("%d saniye sonra yeniden başlayacak.\n", i);
                vTaskDelay(1000 / portTICK_PERIOD_MS);
        }
        printf("Yeniden Başlatılıyor.\n");
        fflush(stdout);
        esp_restart();
}

Bu program seri ekrana 10 saniye aralıkla "Hello World!" yazdıracak ve işlemci hakkında bilgi verecektir.


Programı yazdıktan sonra kodu çalıştırmak için aşağıdaki 4 adım takip edilir:

        1. Gerekli yapılandırma ayarları yapılır

        2. Uygulamanın build edilmesi için proje derlenir ve linklenir

        3. Uygulama ESP32'ye yüklenir (flashing/uploading)

        4. Yukarıdaki kod seri ekranda işlem yaptığı için toolchain üzerinden seri ekran açılır.


ESP32'de uygulama geliştirmek için daha fazla ve detaylı bilgiye ESP-IDF dökümanlarında bulabilirsiniz.

ESP32 üzerinde çalışmaya hızlıca başlamak için ESP32-DevKitC ve ESP-WROVER-KIT ürünlerimizi inceleyebilirsiniz.

Tüm Espressif ürünlerine buradan ulaşabilirsiniz.

T-Soft E-Ticaret Sistemleriyle Hazırlanmıştır.