INHOUDSOPGAWE:
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-23 12:53
As u AVR -mikrobeheerders op Windows wil programmeer, het u 'n Studio, maar op Linux is alles wat ons het 'n Dude.
AVRDUDE is die opdraglyn -koppelvlak om AVR -skyfies te programmeer; dit kan eers 'n bietjie moeilik wees om op te stel.
Eerstens installeer ek alle AVRDUDE en alle vereiste afhanklikhede, dan skep ek 'n BASH -script wat sal help met die programmering
Stap 1: Kry u samesteller en ander gereedskap
In ander om AVR-skyfies te programmeer, benodig u 'n spesiale samesteller wat bekend staan as gcc-avr en die ander gereedskap soos binutils-avr, avr-libc, gdb-avr laastens, maar nie die minste nie, avrdude.
sudo apt-get install gcc-avr binutils-avr avr-libc gdb-avr avrdude
Stap 2: Skep 'n sjabloon
As u 'n nuwe skets in arduino oopmaak, kry u 'n kodesjabloon met twee funksies, dit bespaar u baie tyd.
AVRDUDE gebruik C en dit kan 'n bietjie irriterend wees om altyd 'n hoofmetode te skep elke keer as u wil kodeer, so ek sal 'n AVR -sjabloon skep.
raak ~/Templates/AVR.c
Gebruik die aanraakopdrag om 'n leë lêer in die gids Sjablone te skep.
vi ~/Templates/AVR.c
maak die lêer oop met u gunsteling teksredakteur, ek gebruik vi.
#definieer F_CPU 16000000L
#include #include int main () {while () {} return 0; }
Tik die kode hierbo en stoor die lêer. Hierdie kode dien as ons sjabloon.
Let wel: ek stel my klokfrekwensie as 16000000, u kan u s'n stel soos enige ander frekwensie, miskien 8000000.
Stap 3: Skep 'n nuwe lêer
Nou het ons 'n sjabloon vir ons AVR -kodes, al wat ons hoef te doen is om 'n nuwe lêer te skep. Ek sal 'n bash -opdrag skep wat een argument (die lêernaam) sal inneem en dan die lêer met die AVR -sjabloon skep.
Kom ons maak 'n leë lêer met die naam "skep"
raak skep
verander die lêertoestemming omdat dit 'n BASH -script sal wees
chmod 755 skep
Maak 'skep' oop met u teksredakteur. Laat ons nou "skep" wysig, voeg die volgende opdragte reël vir reël by.
#!/bin/bash
Dit is die pad na die tolk vir 'skep', wat bash is.
cp ~/Templates/AVR.c/home/$ GEBRUIKER
Dit kopieer ons sjabloonlêer na die gebruikers se tuisgids.
mv ~/AVR.c $ 1
Onthou ek het gesê dat 'skep' een argument inneem, $ 1 beteken dat die eerste argument van ons opdrag hierdie argument die beoogde lêernaam is; die laaste ding wat ons wil hê, is meerdere lêers met dieselfde lêernaam. Die opdrag hernoem die lêernaam na ons argument.
vi $ 1
Dit is opsioneel, maar dit sal lekker wees om ons lêer oop te maak onmiddellik nadat ons dit gemaak het.
Ons is klaar met die redigering van die skep, stoor dit en maak dit toe.
Hier is 'n voorbeeld van skep in aksie.
./ skep knipoog. c
Dit skep 'n lêer wat bekend staan as blink.c, hierdie lêer moet die sjabloon van AVR.c. hê
Stap 4: Laat ons hardloop
Ons moet 'n ander bash -skrip skep, bekend as 'run', hierdie script sal 3 argumente neem (die avr -mikrobeheerder wat ons gebruik, die lêernaam en die programmeerder)
Kom ons vat dit reël vir reël.
#!/bin/bash
ons shebang
avr -gcc -Wall -g -0s -mmcu = $ 1 -o $ 2.bin $ 2.c
Die opdrag hierbo komplimenteer ons kode, '$ 1' is ons eerste argument, die mikrobeheerder wat ons programmeer. $ 2 is ons tweede argument, naamlik die lêernaam.
avr -objcopy -j.text -j.data -O ihex $ 2.bin $ 2.hex
Dit omskep ons voldoende lêer in hex.
avrdude -p $ 1 -c $ 3 -U flits: w: $ 2. heks -P usb
Nou verbrand avrdude die kode in AVR -chip. $ 3 is ons derde argument, die programmeerder wat ons gebruik.
Stoor die lêer "hardloop"
gee dit toestemming
chmod 755 hardloop
Kom ons toets dit nou. Gestel ons wil blink.c oplaai en ons gebruik 'n arduino -bord direk, ons gebruik ook 'n usbasp -programmeerder. Dit is hoe ons die 'run' script gebruik.
./run atmega328p knip USBasp
Die arduino -bord het 'n atmega328p -chip, u kan enige AVR -mikrobeheerder van u keuse gebruik.
Die tweede argument is u lêernaam, maar hierdie keer moet u nie die lêeruitbreiding byvoeg nie, maar die script hanteer dit.
Dan het ons die derde argument: die programmeerder wat u gebruik, ek gebruik 'n USBasp -programmeerder.
Stap 5: Gevolgtrekking
Dit is 'n uitstekende manier om u avr -programmeringservaring te outomatiseer; u kan die bash -lêers "skep" en "uitvoer" na "~/.local/bin" skuif, sodat u die skrifte uit enige lêergids van u keuse kan gebruik.
Aanbeveel:
Hoe om 'n Raspberry Pi op te stel en te begin gebruik: 4 stappe
Hoe om 'n Raspberry Pi op te stel en te begin gebruik: Vir die lesers van die toekoms is ons in 2020. Die jaar waarin u gelukkig is om gesond te wees en nie deur Covid-19 besmet is nie , kry baie meer vrye tyd as wat u ooit kon dink. So, hoe kan ek myself op 'n nie te dom manier besig hou nie? O ja
Hoe om OSMC op te stel met Hyperion op Raspberry Pi met WS2812b Led Strip: 8 stappe
Hoe om OSMC op te stel met Hyperion op Raspberry Pi met WS2812b Led Strip: Soms is ek baie goed in Engels, soms nie … Eerste dinge eerste. Dit is my eerste onderrig en Engels is nie my moedertaal nie, so wees asseblief nie te hard met my nie. Dit gaan nie oor hoe om die raam te bou nie, dit is maklik. Dit gaan oor installasie
Stel Linux op vir Windows !: 12 stappe
Stel Linux vir Windows op !: Welkom by die instruksieset vir die opstel van Linux vir Windows! Hierdie instruksieset is om beginners te help met die opdragreël om 'n Ubuntu Linux-stelsel op hul Windows-masjien op te stel en hul Windows-lêers aan hul Linux-stelsel te koppel. Die Linux subsys
Hoe om 'n rekenaar saam te stel: 29 stappe
Hoe om 'n rekenaar saam te stel: Die bou van 'n rekenaar kan frustrerend en tydrowend wees, as u nie weet wat u moet doen of wat u nodig het nie. As u dink dat u alles reg gedoen het, maar dit steeds nie kan aanskakel nie, of die luidspreker nie meer laat piep nie. Weet jy het gemors, en ha
Hoe om verskeie monitors in Linux op te stel: 6 stappe
Hoe om verskeie monitors in Linux op te stel: hierdie tutoriaal sal u wys hoe u 'n multi-head-stelsel kan instel in die meeste Linux-distros, veral ubuntu. let wel, dit is nog steeds grootliks onvoltooid