Innholdsfortegnelse:

Slik oppdaterer du fastvaren på en billig USBasp-klon: 9 trinn
Slik oppdaterer du fastvaren på en billig USBasp-klon: 9 trinn

Video: Slik oppdaterer du fastvaren på en billig USBasp-klon: 9 trinn

Video: Slik oppdaterer du fastvaren på en billig USBasp-klon: 9 trinn
Video: MEXC KICKSTARTER КАК ЗАРАБОТАТЬ НА КРИПТОВАЛЮТЕ 2024, November
Anonim
Slik oppdaterer du fastvaren på en billig USBasp-klon
Slik oppdaterer du fastvaren på en billig USBasp-klon

Dette er en liten guide for å blinke ny fastvare på en USBasp-klon som min. Denne veiledningen er spesielt skrevet for USBasp-klonen som ses på bildene, men den bør fortsatt fungere med andre. Kablingene er vist på trinn 5, det er en TL; DR på trinn 9.

Nyt!

Trinn 1: Problemet

Problemet
Problemet
Problemet
Problemet

Avrdude forteller meg at programmereren jeg bruker har utdatert fastvare. Den normale hopperen for selvprogrammering finnes ikke på brettet mitt. Slik fikser du det. Skjemaer for USBasp finner du på fischl.de.

Trinn 2: Nødvendige materialer

Du vil trenge…

  • Et loddejern
  • En Arduino (helst Nano)
  • Noen hoppetråder
  • En PC med Arduino IDE og avrdude installert

Trinn 3: Løsningen

Løsningen
Løsningen
Løsningen
Løsningen
Løsningen
Løsningen

For at vi skal blinke ny fastvare på ATmega8, må vi få kontroll over RESET -pinnen. Normalt kan en jumper på USBasp lukkes for å aktivere selvprogrammering, men produsenten av kortet mitt inkluderte ikke en.

På ATmega8 er RESET -pinnen pin 29, den fjerde pinnen øverst fra venstre. Den er koblet til en 10k pull-up motstand til 5V. Vi må koble den til pinne 5 i ICSP -hodet.

Vi kan prøve å lodde en ledning direkte på motstanden eller selve pinnen, men den er kjedelig og kan skade brettet ditt. (Jeg prøvde det og rev av pull-up-motstanden, jeg anbefaler det ikke) Det er også en mye enklere måte!

Selv om produsenten ikke inkluderte en ekte jumper for å aktivere selvprogrammering, la han en overskrift under mikrokontrolleren. Vi kan ganske enkelt lodde en ledning over og …

Trinn 4: Voilà

Voilà!
Voilà!

Vi har koblet de to tilbakestillingsnålene! De to hullene på bunnen forbinder pinne 29 og pinne 14 på mikrokontrolleren.

Trinn 5: Sette opp Arduino

For å blinke den nye fastvaren til programmereren trenger vi en annen programmerer, i dette tilfellet en Arduino med ArduinoISP -skissen på den. Bare for å sikre at oppsettet ditt er det samme, vennligst kommenter linje 81

// #define USE_OLD_STYLE_WIRING

Koble nå Arduino til ICSP -hodet på programmereren din.

Arduino USBasp

5V Pin 2 (VCC) GND Pin 4/6/8/10 (GND) Pin 10 Pin 5 (Reset) Pin 11 Pin 9 (MISO) Pin 12 Pin 1 (MOSI) Pin 13 Pin 7 (SCK)

USBasp forblir koblet fra PC -en.

Åpne en terminal og skriv

avrdude -cavrisp -pm8 -b19200 -P [Portnummeret ditt går her, det skal være det samme som i Arduino IDE]

Hvis alt går som det skal, bør avrdude skrive ut litt informasjon om ATmega8 (sikringer, signatur, etc.)

Trinn 6: Blinker ATmega8

For å blinke brikken trenger vi fortsatt fastvaren. Gå til fisch.de og last ned den nyeste versjonen. Pakk ut arkivet og naviger til det ved hjelp av skallet.

Å kompilere koden fungerte ikke for meg, men heldigvis inneholder arkivet alle de kompilerte programmene under

bin/fastvare

Her bør du se tre.hex -filer. Velg den med samme navn som brikken din. Programmereren min bruker en ATmega8, så jeg valgte

usbasp.atmega8.åååå-mm-dd.heks

Med en fungerende tilkobling til ATmega8, blinker det bare å skrive

avrdude -cavrisp -pm8 -b19200 -P [PORT] -U blits: w: [hex -fil]

Hvis alt ble gjort riktig, skulle avrdude skrive og bekrefte den valgte fastvaren.

Trinn 7: Sørg for at programmereren fungerer

Sørg for at programmereren fungerer
Sørg for at programmereren fungerer

For å bruke USBasp som programmerer igjen, må vi fjerne forbindelsen mellom pin 29 og pin 14. Å kutte jumperen på bunnen bør være tilstrekkelig, men det kan heller ikke skade å fjerne den.

Du kan prøve den ved å koble den tilbake til PC -en og skrive

avrdude -cusbasp -pm8

Selv om avrdude ikke kan nå målet, bør det i det minste anerkjenne den nye fastvaren til programmereren vår.

Trinn 8: Feilsøking

Feilsøking
Feilsøking

Skulle avrdude vise en feil som denne, har det sannsynligvis noe å gjøre med auto-reset-funksjonen til Arduino. For å omgå dette, legg til en kondensator mellom RESET og GND for Arduino. Det anbefales generelt å bruke en 10µF kondensator, men i mitt tilfelle fungerte en 100µF kondensator helt fint.

Skulle du få en feil som

avrdude: feil: programmer aktiver: målet svarer ikke. 1

eller en ugyldig signatur returneres, sjekk ledningene dine. Jeg hadde et problem med at strømkablene mine ruste og ikke ledet strøm lenger. Jeg anbefaler å sjekke alle hoppetrådene på forhånd.

Sørg også for å bytte pin 11 og pin 12 på Arduino, hvis problemet vedvarer.

Sørg også for å angi riktig overføringshastighet for Arduino som ISP, 19200. Den kan angis med alternativet

-b19200

Gi meg beskjed hvis du har spørsmål eller har oppdaget en feil:)

Trinn 9: TL; DR

  1. Lodd en ledning over de to pinnene på bunnen av brettet
  2. Sett opp en Arduino som Internett -leverandør, og sørg for å aktivere det gamle ledningsskjemaet
  3. Koble Arduino til programmereren gjennom ICSP -hodet
  4. Flash den nye fastvaren på programmereren
  5. Fjern tilkoblingen på bunnen
  6. Ikke riv av SMD -motstander

Anbefalt: