İçindekiler:

Linux'ta AVR Programlama Ortamı Nasıl Kurulur: 5 Adım
Linux'ta AVR Programlama Ortamı Nasıl Kurulur: 5 Adım

Video: Linux'ta AVR Programlama Ortamı Nasıl Kurulur: 5 Adım

Video: Linux'ta AVR Programlama Ortamı Nasıl Kurulur: 5 Adım
Video: Güzel bir linux terminal nasıl yapılır? 2024, Kasım
Anonim
Linux'ta AVR Programlama Ortamı Nasıl Kurulur
Linux'ta AVR Programlama Ortamı Nasıl Kurulur

AVR mikro denetleyicilerini Windows'ta programlamak istiyorsanız, bir Studio'nuz var ama Linux'ta sahip olduğumuz tek şey bir Dude.

AVRDUDE, AVR çiplerini programlamak için komut satırı arayüzüdür, ilk başta kurulumu biraz zor olabilir. Bu Eğitilebilir Tabloda, AVRDUDE'yi kuracağım ve ayrıca Linux terminali için bir AVR programlama ortamı oluşturacağım.

İlk önce tüm AVRDUDE ve gerekli tüm bağımlılıkları kuracağım, sonra programlamaya yardımcı olacak bir BASH betiği oluşturacağım

Adım 1: Derleyicinizi ve Diğer Araçları Alma

AVR çiplerini programlamak için diğerinde, gcc-avr olarak bilinen özel bir derleyiciye ve binutils-avr, avr-libc, gdb-avr gibi diğer araçlara ihtiyacınız var, ancak en az avrdude değil.

sudo apt-get kurulumu gcc-avr binutils-avr avr-libc gdb-avr avrdude

Adım 2: Bir Şablon Oluşturma

Şablon Oluşturma
Şablon Oluşturma

Arduino'da yeni bir çizim açarsanız, iki işlev içeren bir kod şablonu alırsınız, bu size çok zaman kazandırır.

AVRDUDE C kullanıyor ve her kodlamak istediğinizde her zaman bir ana yöntem oluşturmak biraz can sıkıcı olabilir, bu yüzden bir AVR şablonu oluşturacağım.

~/Şablonlar/AVR.c'ye dokunun

Şablonlar klasöründe boş bir dosya oluşturmak için dokunma komutunu kullanın.

vi ~/Şablonlar/AVR.c

dosyayı favori metin düzenleyicinizle açın, vi kullanıyorum.

#define F_CPU 16000000L

#include #include int main(){ while(){ } 0 döndür; }

Yukarıdaki kodu yazın ve dosyayı kaydedin. Bu kod şablonumuz olarak görev yapacak.

Not: Saat frekansımı 16000000 olarak ayarladım, kendi frekansınızı da 8000000 olarak ayarlayabilirsiniz.

Adım 3: Yeni Bir Dosya Oluşturun

Artık AVR kodlarımız için bir şablonumuz var, tek yapmamız gereken yeni bir dosya oluşturmak. Bir argüman (dosya adı) alacak bir bash komutu oluşturacağım ve ardından AVR şablonuna sahip o dosyayı oluşturacağım.

"create" adında boş bir dosya yapalım

dokun oluştur

dosya iznini değiştirin çünkü bu bir BASH betiği olacak

chmod 755 oluşturma

Metin düzenleyicinizle "oluştur"u açın. Şimdi "create" düzenleyelim, aşağıdaki komutları satır satır ekleyelim.

#!/bin/bash

Bu, bash olan "create" için yorumlayıcıya giden yoldur.

cp ~/Şablonlar/AVR.c /home/$USER

Bu, şablon dosyamızı kullanıcıların ana dizinine kopyalar.

mv ~/AVR.c $1

"Oluştur" un bir argümanı aldığını söylediğimi hatırlayın, $1 komutumuzun ilk argümanı anlamına gelir, bu argüman amaçlanan dosya adıdır, istediğimiz son şey aynı dosya adına sahip birden fazla dosyadır. Komut, dosya adını argümanımıza göre yeniden adlandırır.

1$

Bu isteğe bağlıdır, ancak dosyamızı oluşturduktan hemen sonra açmak güzel olacaktır.

Oluştur, kaydet ve kapat düzenleme ile işimiz bitti.

İşte eylem halinde oluşturma örneği.

./flash.c oluştur

Bu, flash.c olarak bilinen bir dosya oluşturur, bu dosyanın AVR.c şablonuna sahip olması gerekir.

Adım 4: Hadi Koşalım

"run" olarak bilinen başka bir bash betiği oluşturmalıyız, bu betik 3 argüman alacak (kullandığımız avr mikrodenetleyici, dosya adı ve programcı)

Satır satır ele alalım.

#!/bin/bash

bizim shebang

avr-gcc -Duvar -g -0s -mmcu=1$ -o $2.bin $2.c

Yukarıdaki komut kodumuzu tamamlar, '$1' programladığımız mikrodenetleyici olan ilk argümanımızdır. $2, dosya adı olan ikinci argümanımızdır.

avr-objcopy -j.text -j.data -O ihex 2,bin$ 2,hex

Bu, uyumlu dosyamızı hex'e dönüştürür.

avrdude -p $1 -c $3 -U flash:w:$2.hex -P usb

Şimdi avrdude, kodu AVR çipine yazar. $3, kullandığımız programcı olan 3. argümanımızdır.

"Çalıştır" dosyasını kaydedin

yürütme izni ver

chmod 755 çalıştırma

Şimdi test edelim. Diyelim ki flash.c'yi yüklemek istiyoruz ve doğrudan bir arduino kartı kullanıyoruz, ayrıca bir usbasp programcısı kullanıyoruz. "Çalıştır" betiğini bu şekilde kullanıyoruz.

./run atmega328p USBasp yanıp sönüyor

Arduino kartının bir atmega328p çipi vardır, istediğiniz herhangi bir AVR mikro denetleyicisini kullanabilirsiniz.

İkinci argüman dosya adınızdır, ancak bu sefer komut dosyasının işlediği dosya uzantısını eklemeyin.

Sonra kullandığınız programcı olan üçüncü argümanımız var, bir USBasp programcısı kullanıyorum.

Adım 5: Sonuç

Bu, avr programlama deneyiminizi otomatikleştirmenin harika bir yoludur, "oluştur" ve "çalıştır" bash dosyalarını "~/.local/bin" konumuna taşıyabilirsiniz, böylece komut dosyalarını istediğiniz herhangi bir dosya dizininden kullanabilirsiniz.

Önerilen: