Агуулгын хүснэгт:
- Алхам 1: Өөрийн хөрвүүлэгч болон бусад хэрэгслийг авах
- Алхам 2: Загвар үүсгэх
- Алхам 3: Шинэ файл үүсгэх
- Алхам 4: Гүйцгээе
- Алхам 5: Дүгнэлт
Видео: Линукс дээр AVR програмчлалын орчныг хэрхэн тохируулах вэ: 5 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:02
Хэрэв та Windows дээр AVR микроконтроллер програмчлахыг хүсч байвал танд студи байгаа боловч Линукс дээр бидэнд байгаа бүх зүйл бол Dude.
AVRDUDE бол AVR чипийг програмчлах командын шугамын интерфэйс бөгөөд үүнийг эхлүүлэх нь жаахан төвөгтэй байж болох юм. Энэ зааварт би AVRDUDE -ийг тохируулж, Линукс терминалын AVR програмчлалын орчинг бүрдүүлэх болно.
Эхлээд би бүх AVRDUDE болон шаардлагатай бүх хамаарлыг суулгаж, дараа нь програмчлалд туслах BASH скриптийг үүсгэх болно.
Алхам 1: Өөрийн хөрвүүлэгч болон бусад хэрэгслийг авах
AVR чипийг програмчлахын тулд танд gcc-avr гэж нэрлэгддэг тусгай хөрвүүлэгч хэрэгтэй бөгөөд binutils-avr, avr-libc, gdb-avr гэх мэт бусад хэрэгслүүд хамгийн сүүлд аврудед байх ёстой.
sudo apt-get суулгах gcc-avr binutils-avr avr-libc gdb-avr avrdude
Алхам 2: Загвар үүсгэх
Хэрэв та arduino дээр шинэ ноорог нээвэл хоёр функц агуулсан кодын загварыг авах бөгөөд энэ нь танд маш их цаг хэмнэнэ.
AVRDUDE нь C -ийг ашигладаг бөгөөд код бичих бүртээ үргэлж үндсэн аргыг бий болгох нь жаахан ядаргаатай байдаг тул би AVR загварыг бий болгоно.
~/Templates/AVR.c дарна уу
Templates хавтсанд хоосон файл үүсгэхийн тулд touch командыг ашиглана уу.
vi ~/Загварууд/AVR.c
Файлыг дуртай текст засварлагчаар нээ, би vi ашиглаж байна.
#тодорхойлох F_CPU 16000000L
#include #include int main () {while () {} буцаах 0; }
Дээрх кодыг бичээд файлыг хадгална уу. Энэ код нь бидний загвар болох болно.
Тэмдэглэл: Би цагийнхаа давтамжийг 16000000 гэж тохируулсан бол та өөрийн давтамжийг бусад давтамж шиг 8000000 болгож тохируулж болно.
Алхам 3: Шинэ файл үүсгэх
Одоо бидэнд AVR кодын загвар байгаа бөгөөд бидний хийх ёстой зүйл бол шинэ файл үүсгэх явдал юм. Би нэг аргумент (файлын нэр) авах bash командыг үүсгэж, дараа нь AVR загвартай файлыг үүсгэх болно.
"үүсгэх" нэртэй хоосон файл хийцгээе.
бий болгох дээр дарна уу
файлын зөвшөөрлийг өөрчлөх, учир нь энэ нь BASH скрипт байх болно
chmod 755 үүсгэх
Текст засварлагчтайгаа "үүсгэх" -ийг нээнэ үү. Одоо "үүсгэх" -ийг засварлаж, дараах тушаалуудыг мөр мөр болгон нэмье.
#!/bin/bash
Энэ бол bash гэсэн "үүсгэх" гэсэн орчуулагчийн зам юм.
cp ~/Templates/AVR.c/home/$ USER
Энэ нь манай загварын файлыг хэрэглэгчдийн гэрийн лавлах руу хуулдаг.
mv ~/AVR.c $ 1
"Бүтээх" нь нэг аргументыг агуулдаг гэж би хэлснийг санаарай, $ 1 нь бидний тушаалын эхний аргумент бөгөөд энэ аргумент нь зориулагдсан файлын нэр бөгөөд бидний хүсч буй хамгийн сүүлийн зүйл бол ижил файлын нэртэй олон файл юм. Тушаал нь файлын нэрийг бидний аргумент болгон өөрчилнө.
vi $ 1
Энэ нь сонголттой боловч бид файлыг үүсгэсний дараа шууд нээхэд таатай байх болно.
Бид үүсгэх, хадгалах, хаах ажлыг дуусгасан.
Үйлдэл дээр бий болгох жишээ энд байна.
./ анивчих үүсгэх. c
Энэ нь blink.c гэж нэрлэгддэг файл үүсгэдэг бөгөөд энэ файл нь AVR.c. загвартай байх ёстой.
Алхам 4: Гүйцгээе
Бид "run" гэж нэрлэгддэг өөр bash скрипт үүсгэх ёстой, энэ скрипт нь 3 аргумент авах болно (бидний ашиглаж буй AVR микроконтроллер, файлын нэр, програмист)
Үүнийг мөр дараалан авч үзье.
#!/bin/bash
манай shebang
avr -gcc -Wall -g -0s -mmcu = $ 1 -o $ 2.bin $ 2.c
Дээрх тушаал нь бидний кодыг гомдоллож байна, '$ 1' бол бидний програмчилж буй микроконтроллер болох бидний анхны аргумент юм. $ 2 бол бидний хоёр дахь аргумент бөгөөд энэ нь файлын нэр юм.
avr -objcopy -j.text -j.data -O ihex $ 2.bin $ 2.hex
Энэ нь бидний дагаж мөрдөж буй файлыг hex болгон хөрвүүлдэг.
avrdude -p $ 1 -c $ 3 -U flash: w: $ 2.hex -P usb
Одоо avrdude кодыг AVR чип рүү шатаадаг. $ 3 бол бидний ашигладаг програмист болох бидний 3 дахь аргумент юм.
"Ажиллуулах" файлыг хадгална уу
үүнийг гүйцэтгэх зөвшөөрөл өгөх
chmod 755 ажиллуулах
Одоо үүнийг туршиж үзье. Бид blink.c -ийг байршуулахыг хүсч байгаа бөгөөд arduino самбарыг шууд ашиглаж байгаа, мөн usbasp програмист ашиглаж байна гэж бодъё. Бид "run" скриптийг ингэж ашигладаг.
./ ажиллуулах atmega328p USBasp
Arduino самбар нь atmega328p чиптэй тул та өөрийн хүссэн AVR микроконтроллерыг ашиглаж болно.
Хоёрдахь аргумент бол таны файлын нэр боловч энэ удаа скрипт үүнийг зохицуулдаг файлын өргөтгөлийг бүү нэмээрэй.
Дараа нь бидэнд таны ашиглаж буй програмист болох гурав дахь аргумент байна, би USBasp програмист ашиглаж байна.
Алхам 5: Дүгнэлт
Энэ бол програмчлалын туршлагаа автоматжуулах гайхалтай арга бөгөөд та "үүсгэх" болон "ажиллуулах" bash файлуудыг "~/.local/bin" руу зөөх боломжтой бөгөөд ингэснээр та хүссэн файлын лавлахаас скриптүүдийг ашиглаж болно.
Зөвлөмж болгож буй:
Линукс дээр STM32 хөгжүүлж эхлээрэй: 4 алхам
Линукс дээр STM32 -ийг хөгжүүлж эхлээрэй: Энэхүү зааварчилгаанд би Линукс дээр STM32 програмыг хөгжүүлж эхлэх нь хичнээн амархан болохыг харуулах болно. Би Linux -ийг 2 жилийн өмнөөс үндсэн машин болгон ашиглаж эхэлсэн бөгөөд түүнийг унагаагүй. Бүх зүйл цонхноос илүү хурдан, илүү сайн ажилладаг. Мэдээжийн хэрэг
Линукс ачаалах драйвыг хэрхэн яаж үүсгэх вэ (мөн үүнийг хэрхэн ашиглах вэ): 10 алхам
Линукс ачаалах драйвыг хэрхэн яаж үүсгэх вэ (мөн үүнийг хэрхэн ашиглах вэ): Энэ бол Linux, ялангуяа Ubuntu -ийг хэрхэн эхлүүлэх талаар энгийн танилцуулга юм
Линукс дээр ажилладаг USB TableClock: 10 алхам
Linux Powered USB TableClock: Linux Power USB Table цаг бол Raspbian Lite Линукс дээр ажилладаг ширээний цаг юм. Энэ нь ялангуяа над шиг шөнийн шар шувууг ашиглахад зориулагдсан бөгөөд хурдан харахыг хүсдэг боловч гар утсан дээрх цагийг шалгахад хэтэрхий тод LCD юм. Энэ нь миний тохиргоонд дажгүй харагдаж байна
Линукс дээр олон мониторыг хэрхэн тохируулах вэ: 6 алхам
Линукс дээр олон мониторыг хэрхэн яаж тохируулах вэ: энэ заавар нь ихэнх линукс түгээлт, ялангуяа ubuntu дээр олон толгойтой системийг хэрхэн тохируулахыг харуулах болно. Энэ нь дуусаагүй хэвээр байгааг анхаарна уу
Localhost дээр вэб хөгжүүлэх орчныг хэрхэн суулгах вэ: 6 алхам
Localhost дээр вэб хөгжүүлэлтийн орчинг хэрхэн суулгах вэ: Энэ заавар нь Apache, PHP, MySQL -ийг localhost дээр хэрхэн суулгахыг харуулах болно. Компьютерийн нэрийг ашиглан үндсэн лавлахыг ачаалах гэх мэт сүлжээний зарим гайхалтай шинж чанаруудтай байхын тулд үүнийг хэрхэн яаж тохируулах вэ (http: //desktop/index.php), b