4 Temmuz 2020 Cumartesi

Raspberry Pi Linux - İlk C program





https://www.raspberrypi.org/downloads/raspbian/ sitesinden “Raspbian Stretch Lite” minimal image dosyasını indiriniz. Bu image GUI içermez, raspbery pi 3 üzerinden usb to ttl ile bağlanrak konsol üzerinden erişilebilir ve komutlar girilmektedir.

Daha sonra “Etcher” programını kullanarak, sd kart’a, indirilen image dosyası yüklenir. 



Yükleme tamamladınktan sonra sd kart içersindeki “/boot/config.txt” dosyası içine “enable_uart=1” eklenir. Sd kart raspery pi’ye takılır, Daha sonra usb to ttl dönüştürücü uart pinlerine takılarak konsol açılır. İlk açılış esnasında kullanıcı adı “pi”, şifresi “raspberry”dir.


 Böylece raspberry pi kernel açılış olur ve konsol karşımıza gelir. Login olunduktan sonra karşımızıa raspberry pi konsolundan şöyle bir ekran çıkar.


Cross Compiler Kurulumu

Crosscompiler için ilk önce yapılması gereken adımlar vardır, bu adımlar yapıldıktan sonra ilk uygulama için derleme yapılır.

~$ sudo apt-get install build-essential git
~$ sudo apt-get install ia32-libs
~$ mkdir rpi
~$ cd rpi
~$ sudo git clone git://github.com/raspberrypi/tools.git
~$ cd ~/
~$ nano .bashrc
“export PATH=$PATH:$HOME/rpi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin”
~$ arm-linux-gnueabihf- gcc -v

Attaki resimdeki mesajı gördüyseniz Raspberry pi için cross compiling toolchain yüklediniz demektir.




C Uygulaması

İlk helloword ugulaması, Lİnux işletim sistemine sahip bir pc’nizin “ctrl + alt +T “  tuşlarına aynı anda basılarak terminal açılır ve sırayal şu komutlar girilir ;

1. Bir dosya yaratılır, kendi masa üstümüzde

~$ mkdir rsp_ilk_deneme

2. Açılan dosya içinde bir c program yazılır(Merhaba Dünya)

~/rasPiDeneme$ nano ilkDeneme.c

3.Açılan text editörüne c kodu yazılır ve kaydedilir.

#include "stdio.h"

int main(void) {
  printf("Hello world !\n");
  return 0;
}

4. Daha sonra oluşturulan c uzantılı kod kaydedildekten sonra linux ortamında derlenir.

~/rasPiDeneme$ arm-linux-gnueabihf-gcc ilkDeneme.c -o ilkDeneme


5. Derlenen kod raspery pi’ye gönderilir.

~/rasPiDeneme$ scp "ilkDeneme" pi@rasperyinizin_ip_adresi:

Kod gönderilmeden önce raspery pi konsol bağlantısı üzerinden bağlanarak ssh bağlantısı açılır ve ethernet ayarları yapılır.

6. Kod transfer işlemi tamamlandıktan sonra, onuda raspery konsol üzerinden “ls” komutu bakarak “ilkDenem” objesi geldiği görülecektir. 



Daha sonra “./ilkDeneme” konsola yazılarak sonuç gözlemlenir.

pi@hakan:~$
pi@hakan:~$
pi@hakan:~$
pi@hakan:~$ ./ilkDeneme
Hello world !
pi@hakan:~$

Eclips Üzerinden Kod Derleme:

“https://www.eclipse.org/downloads/packages/release/2019-03/r/eclipse-ide-enterprise-java-developers” Eclipse programını indiriniz. Tar uzantılı eclips dosyasını çıkartınız ve çalıştırıp c projesi oluşturunuz.

https://www.tutorialspoint.com/inter_process_communication/inter_process_communication_quick_guide.htm
https://github.com/JeffCost/NRF24-PI/tree/master/librf24-rpi/librf24-bcm
https://bitcontrol.ch/en/2016/02/16/iot-remote-power-switch-part-11/
http://crsengineering.altervista.org/eng/pi/pi_gpio_eng_1_0_a.html  (base adres)