Indholdsfortegnelse:

Sådan opsættes AVR -programmeringsmiljø på Linux: 5 trin
Sådan opsættes AVR -programmeringsmiljø på Linux: 5 trin

Video: Sådan opsættes AVR -programmeringsmiljø på Linux: 5 trin

Video: Sådan opsættes AVR -programmeringsmiljø på Linux: 5 trin
Video: How to Connect An AV Receiver (AVR) | EASY Step By Step Instructions 2024, November
Anonim
Sådan opsættes AVR -programmeringsmiljø på Linux
Sådan opsættes AVR -programmeringsmiljø på Linux

Hvis du vil programmere AVR -mikrokontrollere på Windows, har du et Studio, men på Linux er alt, hvad vi har, en Dude.

AVRDUDE er kommandolinjegrænsefladen til at programmere AVR -chips, det kan være lidt svært at opsætte først. I denne instruktør vil jeg konfigurere AVRDUDE og også oprette et AVR -programmeringsmiljø for Linux -terminalen.

Først installerer jeg alle AVRDUDE og alle nødvendige afhængigheder, derefter opretter jeg et BASH -script, der hjælper med programmering

Trin 1: Få din kompilator og andre værktøjer

I andre programmer til AVR-chips har du brug for en speciel compiler kendt som gcc-avr og de andre værktøjer som binutils-avr, avr-libc, gdb-avr sidst men ikke mindst avrdude.

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

Trin 2: Oprettelse af en skabelon

Oprettelse af en skabelon
Oprettelse af en skabelon

Hvis du åbner en ny skitse i arduino, får du en kodeskabelon, der indeholder to funktioner, hvilket sparer dig meget tid.

AVRDUDE bruger C, og det kan være lidt irriterende at altid oprette en hovedmetode hver gang du vil kode, så jeg opretter en AVR -skabelon.

tryk på ~/Skabeloner/AVR.c

Brug berøringskommandoen til at oprette en tom fil i mappen Skabeloner.

vi ~/Skabeloner/AVR.c

Åbn filen med din yndlings teksteditor, jeg bruger vi.

#define F_CPU 16000000L

#include #include int main () {while () {} returner 0; }

Indtast koden ovenfor, og gem filen. Denne kode fungerer som vores skabelon.

Bemærk: Jeg indstiller min urfrekvens til 16000000, du kan indstille din som enhver anden frekvens måske 8000000.

Trin 3: Opret en ny fil

Nu har vi en skabelon til vores AVR -koder, alt hvad vi skal gøre er at oprette en ny fil. Jeg opretter en bash -kommando, der tager ét argument (filnavnet) og derefter opretter filen med AVR -skabelonen.

lad os lave en tom fil kaldet "opret"

tryk opret

ændre filtilladelsen, fordi dette vil være et BASH -script

chmod 755 oprette

Åbn "opret" med din teksteditor. Lad os nu redigere "opret", tilføj følgende kommandoer linje for linje.

#!/bin/bash

Dette er stien til tolken for "skabe", som er bash.

cp ~/Templates/AVR.c/home/$ USER

Dette kopierer vores skabelonfil til brugernes hjemmemappe.

mv ~/AVR.c $ 1

Husk, jeg sagde, at "skabe" tager et argument ind, $ 1 betyder, at det første argument i vores kommando, dette argument er det tilsigtede filnavn, den sidste ting, vi ønsker, er flere filer med det samme filnavn. Kommandoen omdøber filnavnet til vores argument.

vi $ 1

Dette er valgfrit, men det vil være rart at åbne vores fil, umiddelbart efter at vi har oprettet den.

Vi er færdige med at redigere oprette, gemme det og lukke det.

Her er et eksempel på create in action.

./oprett blink. c

Dette opretter en fil kendt som blink.c, denne fil skal have skabelonen AVR.c.

Trin 4: Lad os køre

Vi er nødt til at oprette et andet bash -script kendt som "run", dette script vil tage 3 argumenter (den avr -mikrokontroller, vi bruger, filnavnet og programmøren)

Lad os tage det linje for linje.

#!/bin/bash

vores shebang

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

Kommandoen ovenfor komplimenterer vores kode, '$ 1' er vores første argument, som er den mikrokontroller, vi programmerer. $ 2 er vores andet argument, som er filnavnet.

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

Dette konverterer vores overholdte fil til hex.

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

Nu brænder avrdude koden ind i AVR -chip. $ 3 er vores tredje argument, som er den programmør, vi bruger.

Gem filen "Kør"

give det eksekvere tilladelse

chmod 755 løb

Lad os nu teste det. Lad os sige, at vi vil uploade blink.c, og vi bruger et arduino -kort direkte, vi bruger også en usbasp -programmerer. Sådan bruger vi "run" scriptet.

./run atmega328p blink USBasp

Arduino -kortet har en atmega328p -chip, du kan bruge enhver AVR -mikrokontroller efter eget valg.

Det andet argument er dit filnavn, men denne gang må du ikke tilføje filtypen, scriptet håndterer det.

Så har vi det tredje argument, som er den programmerer, du bruger, jeg bruger en USBasp -programmerer.

Trin 5: Konklusion

Dette er en fantastisk måde at automatisere din avr -programmeringsoplevelse på. Du kan flytte bash -filerne "create" og "run" til "~/.local/bin", så du kan bruge scripts fra enhver filmappe efter eget valg.

Anbefalede: