Cuprins:
- Pasul 1: Scoateți cablul de alimentare CA și scoateți bateria de 9V
- Pasul 2: Conectați firele jumper
- Pasul 3: Porniți RPi
- Pasul 4: Instalați Avrdude
- Pasul 5: Editați fișierul de configurare Avrdude
- Pasul 6: Descărcați sau copiați fișierul.hex Flash în / home / pi
- Pasul 7: Verificați dacă Avrdude poate vorbi cu ATMEGA48V-10PU
- Pasul 8: Introduceți fișierul.hex pe ATMEGA48V-10PU
- Pasul 9: Depanare simplă dacă blițul a eșuat
Video: Cum se utilizează pinii GPIO ai unui Raspberry Pi și Avrdude la programul Bit-bang DIMP 2 sau DA PIMP 2: 9 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Acestea sunt instrucțiuni pas cu pas despre cum să utilizați un Raspberry Pi și comanda gratuită open-source avrdude la bit-bang-program un DIMP 2 sau DA PIMP 2. Presupun că sunteți familiarizați cu Raspberry Pi și LINUX Linie de comanda. Nu trebuie să vă familiarizați cu programarea cipurilor AVR, dar vă ajută dacă ceva nu merge bine, deoarece puteți citi rezultatul avrdude și aveți o idee despre ce să faceți.
Această procedură ar trebui să dureze aproximativ 1 oră prima dată și 5 până la 10 minute de fiecare dată după.
Vei avea nevoie:
1) Un Raspberry Pi cu pini GPIO și sursă de alimentare. Folosesc un Raspberry Pi Zero W cu pini GPIO lipiți pe. Sistemul de operare ar trebui să fie Raspberry Pi OS (fost Raspbian). Folosesc Raspbian Lite (Stretch), care este cam vechi. Aceste comenzi ar trebui să funcționeze în continuare pe cea mai recentă versiune a sistemului de operare Raspberry Pi.
În continuare, mă voi referi la Raspberry Pi drept „RPi”.
2) Sârme jumper de la femeie la femeie. Obțineți una dintre aceste culori: roșu, negru, albastru, galben, verde, violet. Folosesc maro în loc de violet.
3) Un DIMP 2 sau DA PIMP 2 cu antetul opțional ICSP cu 10 pini lipit. Folosesc aici un DIMP 2, dar instrucțiunile sunt aceleași pentru DA PIMP 2.
4) Acces la internet pentru RPi, astfel încât să puteți instala comanda gratuită open-source avrdude.
5) O copie a fișierului flash.hex pentru DIMP 2 sau DA PIMP 2. Puteți construi singur fișierul.hex din codul sursă brut, dar nu vă voi arăta cum să faceți acest lucru aici.
6) O modalitate de a vă conecta la RPi - utilizați fie o conexiune de rețea, fie acces direct la consolă. Trebuie să puteți executa comenzi pe acesta.
Pasul 1: Scoateți cablul de alimentare CA și scoateți bateria de 9V
Mai întâi, verificați dacă cablul de alimentare CA este atașat la DIMP 2 sau DA PIMP 2 și conectat la rețeaua de curent alternativ. Dacă da, PERICOL: PERICOL DE ȘOC LETAL. Purtați mănuși de cauciuc și apoi opriți comutatorul basculant principal de pe DIMP 2 sau DA PIMP 2. Apoi, deconectați cablul de alimentare de la rețeaua de curent alternativ și desprindeți cablul de alimentare de la DIMP 2 sau DA PIMP 2. Puteți lua scoateți mănușile de cauciuc după îndepărtarea cablului de alimentare CA.
Apoi, scoateți bateria de 9V. Alimentarea va fi furnizată DIMP 2 de către RPi prin firele roșii (Vcc) și negre (GND). Opriți comutatorul glisant de pe DIMP 2 sau DA PIMP 2 pentru a-l dezactiva pentru orice eventualitate.
Pasul 2: Conectați firele jumper
Dacă RPi nu este pornit, începeți să conectați firele jumperului. În continuare, pinii GPIO sunt pe Raspberry Pi, iar pinii ICSP sunt pe DIMP 2 (antetul J3) sau DA PIMP 2 (antetul J1).
Consultați diagrama pe care am făcut-o împreună și fotografiile dacă sunteți pierdut.
Porțiunea RPi a diagramei este din pinout.xyz.
Partea ATMEGA48V-10PU a diagramei este copyright 2016 Atmel Corp.
Revendic utilizarea corectă a acestor desene din cauza adăugărilor semnificative, transformatoare.
Negrul trece de la pinul GPIO 6 la pinul ICSP 10. Acesta este GND (la sol)
Galbenul trece de la pinul GPIO 12 la pinul ICSP 9. Acesta este MISO.
Verde trece de la pinul GPIO 16 la pinul ICSP 1. Acesta este MOSI.
Albastrul trece de la pinul GPIO 18 la pinul ICSP 7. Acesta este SCK sau SCLK (SClock)
Violet (maro în fotografiile mele) trece de la pinul 32 GPIO la pinul ICSP 5. Acesta este RESET.
Roșu trece de la pinul GPIO 4 la pinul ICSP 2. Acesta este Vcc (putere 5V)
Pasul 3: Porniți RPi
Acum, continuați și porniți RPi. Partea de voltmetru a DIMP 2 sau DA PIMP 2 ar trebui să se alimenteze și ea, dar nu o veți cunoaște uitându-vă la afișaj. Dacă aveți dubii, măsurați tensiunea cu sonda roșie la pinul 20 de pe ATMEGA48V-10PU și sonda neagră la pinul 4, 6 sau 8 de pe antetul ICSP. Ar trebui să fie în jur de 5VDC.
Pasul 4: Instalați Avrdude
Instrucțiunile mele vor afișa numai comenzile din linia de comandă. Dacă aveți o interfață grafică care rulează, veți dori să deschideți un terminal pentru a rula aceste comenzi din linia de comandă.
Conectați-vă ca utilizator implicit pi. Parola implicită este zmeură
Instalați comanda avrdude tastând următoarele la promptul de comandă terminal:
sudo apt-get install avrdude
Pasul 5: Editați fișierul de configurare Avrdude
Editați fișierul de configurare avrdude tastând:
sudo nano /etc/avrdude.conf
Adăugați aceste linii la mijlocul fișierului unde se află celelalte definiții ale programatorului. Ceea ce am făcut este să copiez secțiunea de programare chiar deasupra ei pentru id = "linuxgpio", apoi o lipesc chiar mai jos (la linia 1274), apoi am editat noua secțiune.
programator
id = "pi_1"; desc = "Utilizați interfața Linux sysfs pentru a liniile bitbang GPIO"; type = "linuxgpio"; reset = 12; sck = 24; mosi = 23; miso = 18;;
Apoi salvați fișierul apăsând: Ctrl-O
Și apoi părăsiți editorul nano apăsând: Ctrl-X
Pasul 6: Descărcați sau copiați fișierul.hex Flash în / home / pi
Copiați fișierul flash.hex în RPi. Presupun că știi cum să faci asta. SUGESTIE: Utilizați comanda wget, curl, git sau scp pentru a descărca fișierul de pe web către RPi.
Fișierul.hex al DIMP 2 este aici, împreună cu codul sursă:
github.com/dchang0/dimp2
O versiune personalizată a fișierului.hex al lui DA PIMP 2 este aici. Nu am testat asta!
github.com/jcwren/DaPimp2
Dacă versiunea de mai sus a fișierului.hex al DA PIMP 2 nu funcționează, codul sursă original al DA PIMP 2 al lui Mikey Sklar este aici. Va trebui să îl compilați într-un fișier.hex funcțional. Nu acoper acest lucru în aceste instrucțiuni, deoarece va fi un tutorial lung (dar nu dificil). Am programat cu succes mai multe unități DA PIMP 2 funcționale folosind acest cod sursă:
drive.google.com/open?id=0Bx5Als-UeiZbSUdH…
Sau puteți accesa pagina principală DA PIMP 2 aici și faceți clic pe linkul către codul sursă.
mikeysklar.blogspot.com/p/da-pimp-battery-…
Puneți fișierul.hex la această cale și numele fișierului pe RPi …
Pentru DIMP 2:
/home/pi/dimp2.hex
Pentru DA PIMP 2:
/home/pi/da_pimp2.hex
Pasul 7: Verificați dacă Avrdude poate vorbi cu ATMEGA48V-10PU
Rulați comanda avrdude pentru a vă asigura că poate vorbi cu cipul ATMEGA48V-10PU de pe DIMP 2 sau DA PIMP 2.
cd / home / pi
sudo avrdude -c pi_1 -p m48 -v
Veți obține aproximativ o pagină de ieșire. Uită-te la final. Dacă primiți un răspuns ca acesta, atunci puteți continua.
avrdude: dispozitivul AVR inițializat și gata să accepte instrucțiunile
Citirea | ###################################################### | 100% 0,00
Dacă nu, atunci ceva nu este în regulă și ar trebui să-ți dai seama. Cel mai probabil este un cablu greșit, dar o altă plângere obișnuită pe care am văzut-o este că cipul ATMEGA48V-10PU este fals. Se pare că multe dintre ele vândute pe Amazon sau eBay sunt falsuri. Cele vândute de Mouser sau Digikey și de alți distribuitori autorizați sunt autentice.
Pasul 8: Introduceți fișierul.hex pe ATMEGA48V-10PU
Rulați această comandă pentru a efectua programarea cipului …
Pentru DIMP 2:
cd / home / pi
sudo avrdude -c pi_1 -p m48 -U flash: w: dimp2.hex
Pentru DA PIMP 2:
cd / home / pi
sudo avrdude -c pi_1 -p m48 -U flash: w: da_pimp2.hex
Veți obține aproximativ o pagină de ieșire. Căutați aceste linii:
avrdude: scriere flash (1528 octeți):
Scrierea | ###################################################### | 100% 0.79s
avrdude: verificarea …
avrdude: 1528 octeți de bliț verificat avrdude: safemode: Siguranțe OK (E: FF, H: DF, L: 62)
Dacă ați ajuns până aici, ar trebui să vedeți afișajul LED care arată zero-uri pentru tensiune. Dacă vedeți zero-urile, ați terminat! Dacă nu, treceți la pasul următor.
Dacă vedeți zero-urile, închideți cu grație RPi cu această comandă:
sudo shutdown -h acum
Când lampa de alimentare de pe RPi se stinge (DIMP 2 sau DA PIMP 2 vor fi în continuare aprinse), puteți deconecta sursa de alimentare de la RPi. Apoi deconectați firele jumperului între RPi și DIMP 2 sau DA PIMP 2.
Pasul 9: Depanare simplă dacă blițul a eșuat
Dacă nu vedeți zero pe afișajul DIMP 2 sau DA PIMP 2, atunci este timpul să depanați.
Din nou, verificați mai întâi cablajul.
Apoi, verificați stările siguranței afișate de avrdude. Este posibil ca cipul dvs. să fi venit cu siguranțele setate la valori diferite de cele implicite din fabrică. Este posibil ca cipul să aibă nevoie de resetarea siguranțelor, ceea ce necesită un dispozitiv hardware complet diferit. Aceasta este o problemă cu multe dintre cipurile false ATMEGA48V-10PU vândute pe eBay - sunt cipuri vechi extrase din hardware-ul aruncat, iar siguranțele au fost setate, iar vânzătorul nu s-a deranjat să reseteze siguranțele.
Uneori cipul nu este nici măcar un ATMEGA48V-10PU. Ar putea fi un cip diferit reetichetat. De obicei, puteți spune aceste falsuri uitându-vă cu atenție la marcajele din partea superioară și inferioară a cipului. Este mai înțelept să obțineți ATMEGA48V-10PU printr-un furnizor de încredere, cum ar fi Mouser sau Digikey.
Recomandat:
Visuino Cum se utilizează modularea lățimii pulsului (PWM) pentru a schimba luminozitatea unui LED: 7 pași
Visuino Cum se utilizează modularea lățimii pulsului (PWM) pentru a schimba luminozitatea unui LED: În acest tutorial vom folosi un LED conectat la Arduino UNO și Visuino pentru a modifica luminozitatea utilizând modularea lățimii pulsului (PWM). Urmăriți un videoclip demonstrativ
Controlul mai multor LED-uri cu Python și pinii GPIO ai Raspberry Pi: 4 pași (cu imagini)
Controlul mai multor LED-uri cu Python și pinii GPIO ai Raspberry Pi: Acest instructiv demonstrează cum să controlați mai mulți pin-uri GPIO de pe RaspberryPi pentru a alimenta 4 LED-uri. Vă va prezenta, de asemenea, parametrii și declarațiile condiționale în Python. Instrucțiunile noastre anterioare Utilizarea pinilor GPIO ai Raspberry Pi pentru a
LED clipeste cu Raspberry Pi - Cum se utilizează pini GPIO pe Raspberry Pi: 4 pași
LED clipeste cu Raspberry Pi | Cum se utilizează pinii GPIO pe Raspberry Pi: Bună, băieți, în acest instructable vom învăța cum să folosim GPIO-urile Raspberry pi. Dacă ați folosit vreodată Arduino, atunci probabil știți că putem conecta comutatorul cu LED-uri etc. la pinii săi și să-l facem să funcționeze ca. faceți LED-ul să clipească sau primiți intrarea de la comutator, așa că
Cum se utilizează terminalul Mac și cum se utilizează funcțiile cheie: 4 pași
Cum să utilizați terminalul Mac și cum să utilizați funcțiile cheie: Vă vom arăta cum să deschideți terminalul MAC. De asemenea, vă vom arăta câteva caracteristici în Terminal, cum ar fi ifconfig, schimbarea directoarelor, accesarea fișierelor și arp. Ifconfig vă va permite să vă verificați adresa IP și anunțul MAC
Cum să încărcați programul sau codul în Arduino Pro Mini folosind cablul convertizorului serial CH340 UART: 4 pași
Cum să încărcați programul sau codul în Arduino Pro Mini utilizând cablul convertizorului serial CH340 UART: Cablurile seriale USB TTL sunt o gamă de cabluri convertizor USB la serial care asigură conectivitate între interfețele USB și UART seriale. Sunt disponibile o gamă de cabluri care oferă conectivitate la 5 volți, 3,3 volți sau niveluri de semnal specificate de utilizator cu