Mündəricat:
- Addım 1: Kompilyatorunuzu və digər vasitələrinizi əldə edin
- Addım 2: Şablon yaratmaq
- Addım 3: Yeni bir fayl yaradın
- Addım 4: Çalışaq
- Addım 5: Nəticə
Video: Linux -da AVR Proqramlaşdırma Mühiti necə qurulur: 5 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
Windows -da AVR mikrokontrolörlərini proqramlaşdırmaq istəyirsinizsə, bir studiyanız var, ancaq Linux -da əlimizdə bir dost var.
AVRDUDE, AVR çiplərini proqramlaşdırmaq üçün əmr satırı interfeysidir, əvvəlcə qurmaq bir az çətin ola bilər. Bu təlimatda AVRDUDE quracağam və Linux terminalı üçün də AVR proqramlaşdırma mühiti yaradacağam.
Əvvəlcə bütün AVRDUDE və lazım olan bütün asılılıqları quracağam, sonra proqramlaşdırmağa kömək edəcək bir BASH skripti yaradacağam.
Addım 1: Kompilyatorunuzu və digər vasitələrinizi əldə edin
AVR çiplərini proqramlaşdırmaq üçün gcc-avr kimi tanınan xüsusi bir tərtibçiyə və binutils-avr, avr-libc, gdb-avr kimi digər vasitələrə ehtiyacınız var, amma ən sonu da deyil.
sudo apt-get install gcc-avr binutils-avr avr-libc gdb-avr avrdude
Addım 2: Şablon yaratmaq
Arduino -da yeni bir eskiz açarsanız, iki funksiyanı özündə cəmləşdirən bir kod şablonu alırsınız, bu da çox vaxtınıza qənaət edir.
AVRDUDE C istifadə edir və hər dəfə kod yazmaq istədiyiniz zaman hər zaman əsas metod yaratmaq bir az əsəbi ola bilər, buna görə də AVR şablonu yaradacağam.
~/Şablonlar/AVR.c vurun
Şablonlar qovluğunda boş bir fayl yaratmaq üçün toxunma əmrindən istifadə edin.
vi ~/Şablonlar/AVR.c
faylı sevdiyiniz mətn redaktoru ilə açın, vi istifadə edirəm.
#F_CPU 16000000L təyin edin
#include #include int main () {while () {} 0 qaytar; }
Yuxarıdakı kodu yazın və faylı qeyd edin. Bu kod şablonumuz olaraq xidmət edəcək.
Qeyd: Saat tezliyimi 16000000 olaraq təyin edirəm, sizinkini hər hansı digər tezlik kimi 8000000 olaraq təyin edə bilərsiniz.
Addım 3: Yeni bir fayl yaradın
İndi AVR kodlarımız üçün bir şablonumuz var, etməmiz lazım olan şey yeni bir fayl yaratmaqdır. Bir arqumenti (fayl adı) götürəcək, sonra AVR şablonu olan həmin faylı yaradacaq bir bash əmri yaradacağam.
"Yarat" adlı boş bir fayl hazırlayaq
yaratmaq toxun
fayl icazəsini dəyişdirin, çünki bu bir BASH skripti olacaq
chmod 755 yaradın
Mətn redaktoru ilə "Yarat" ı açın. İndi "yarat" ı düzəldək, aşağıdakı əmrləri sətir əlavə edin.
#!/bin/bash
Bu bash olan "yaratmaq" üçün tərcüməçiyə gedən yoldur.
cp ~/Şablonlar/AVR.c/home/$ USER
Bu şablon faylımızı istifadəçilərin ev qovluğuna kopyalayır.
mv ~/AVR.c $ 1
"Yarat" ın bir arqument götürdüyünü söylədiyimi unutmayın, $ 1 əmrimizin ilk arqumenti deməkdir, bu arqument nəzərdə tutulan fayl adıdır, istədiyimiz son şey eyni fayl adına malik birdən çox sənəddir. Komanda fayl adını arqumentimiz olaraq dəyişdirir.
vi 1 dollar
Bu isteğe bağlıdır, ancaq faylımızı yaratdıqdan dərhal sonra açmaq xoş olar.
Yaratmaq, saxlamaq və bağlamaqla işimiz bitdi.
İşdə yaratma nümunəsi budur.
./ göz qırpma yaradın.c
Bu blink.c olaraq bilinən bir fayl yaradır, bu fayl AVR.c. şablonuna sahib olmalıdır.
Addım 4: Çalışaq
"Çalış" olaraq bilinən başqa bir bash skript yaratmalıyıq, bu skript 3 arqument götürəcək (istifadə etdiyimiz avr mikrokontrolör, fayl adı və proqramçı)
Gəlin onu xətt üzrə götürək.
#!/bin/bash
bizim shebang
avr -gcc -Wall -g -0s -mmcu = 1 $ -o $ 2.bin $ 2.c
Yuxarıdakı əmr kodumuza şikayət edir, '$ 1' proqramlaşdırdığımız mikro nəzarətçi olan ilk arqumentimizdir. $ 2, fayl adı olan ikinci arqumentimizdir.
avr -objcopy -j.text -j.data -O ihex $ 2.bin $ 2.hex
Bu, uyğun sənədimizi hex -ə çevirir.
avrdude -p $ 1 -c $ 3 -U flaş: w: $ 2.hex -P usb
İndi avrdude kodu AVR çipinə yazır. $ 3, istifadə etdiyimiz proqramçı olan üçüncü arqumentimizdir.
"Çalış" faylını qeyd edin
icrasına icazə verin
chmod 755 run
İndi sınayaq. Tutaq ki, blink.c yükləmək istəyirik və birbaşa arduino lövhəsindən istifadə edirik, eyni zamanda bir usbasp proqramçısı da istifadə edirik. "Çalış" skriptini bu şəkildə istifadə edirik.
atmega328p yanıb -sönən USBasp -ı işə salın
Arduino lövhəsində atmega328p çipi var, seçdiyiniz hər hansı bir AVR mikro nəzarətçisindən istifadə edə bilərsiniz.
İkinci arqument fayl adınızdır, ancaq bu dəfə skriptin işlədiyi fayl uzantısını əlavə etməyin.
Sonra istifadə etdiyiniz proqramçı olan üçüncü arqumentimiz var, mən USBasp proqramçısı istifadə edirəm.
Addım 5: Nəticə
Bu, avr proqramlaşdırma təcrübənizi avtomatlaşdırmağın əla bir yoludur, bash fayllarını "yaratmaq" və "işlətmək" üçün "~/.local/bin" -ə köçürə bilərsiniz, beləliklə seçdiyiniz hər hansı bir fayl kataloqundan skriptlərdən istifadə edə bilərsiniz.
Tövsiyə:
Aşağı Qiymətli EKQ Cihazı Necə Qurulur: 26 Addım
Aşağı Qiymətli EKQ Cihazı Necə Qurulur: Hamıya Salam! Adım Mariano və mən biotibbi mühəndisiyəm. Bir neçə həftə sonu Bluetooth vasitəsilə bir Android cihazına (smartfon və ya tablet) qoşulmuş Arduino lövhəsinə əsaslanan aşağı qiymətli EKQ cihazının prototipini hazırlamaq və həyata keçirmək üçün keçirdim. Mən istərdim ki
Zebrano Bluetooth Dinamik - DIY necə qurulur: 10 addım
Zebrano Bluetooth Dinamik - DIY necə qurulur: Bu, bluetooth dinamikidir, taşınabilirlik üzərində səs keyfiyyətinə diqqət yetirməklə tamamilə xüsusi bir dizayndır. Yəni, hər yerə aparmaq üçün yüngül bir BT dinamik axtarırsınızsa, bu sizin üçün deyil. Xüsusiyyətləri: 16V - 11700mAh Batareya paketi Zebran
Kompüter necə qurulur - KCTC: 11 addım
Kompüter Necə Yaradılır - KCTC: Kompüter Necə Yaradılır? Aşağıdakı təlimatlar, öz kompüterinizi necə yığacağınızı sizə xəbər verəcəkdir. Öz kompüterinizi qurmaq yaxşı bir fikirdir, çünki ehtiyac duyduğunuz zaman komponentləri söndürə və təkmilləşdirə bilərsiniz
SMARS Robotu necə qurulur - Arduino Smart Robot Tank Bluetooth: 16 addım (şəkillərlə)
SMARS Robotu necə qurulur - Arduino Smart Robot Tank Bluetooth: Bu məqalə PCBWAY.PCBWAY tərəfindən qürurla sponsorluq edilir və bütün dünyada insanlar üçün yüksək keyfiyyətli PCB hazırlanır. Özünüz üçün cəhd edin və PCBWAY -da çox yüksək keyfiyyətlə cəmi 5 dollara 10 PCB əldə edin, təşəkkürlər PCBWAY. Arduino Uno üçün Motor Qalxanı
C/C ++ da Proqramlaşdırma Necə Qurulur: 5 Addım
C/C ++ da Proqramlaşdırma Necə Qurulur: C və C ++, düsturların hazırlanmasına və ən az xərclə mürəkkəb məsələlərin həllinə tez bir zamanda daxil olan məşhur proqramlaşdırma dilləridir. Məsələ, proqramı tərtib etmək və icra etmək üçün bir yol tapmaqdır. Seçimlərinizdən biri ola bilər