Innholdsfortegnelse:
- Trinn 1: Funksjoner og deler
- Trinn 2: Brettbrettoppsett, skjematisk og konstruksjon
- Trinn 3: Bruk og applikasjon
Video: VUSBTiny AVR SPI programmerer: 3 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
Etter å ha laget en usbtiny isp programmerer og brukt den i 6 måneder, så jeg på å lage en til for å bære rundt. Jeg liker det enkle i usbtiny isp -design, men vil gjerne gjøre det enda mindre og ta færre deler. en ting i det originale designet jeg vil endre er å eliminere bruken av klokkekrystall. en løsning jeg fant er at v-usb-drivere støtter 16,5 Mhz intern oscillator på attiny25/45/85 enheter. så jeg starter opp dette prosjektet for å få usbtiny isp bruker v-usb for usb-kommunikasjon. de umiddelbare fordelene er at det sparer plass og har færre komponentteller (ikke flere krystaller).usbtiny-beskrivelse fra https://www.xs4all.nl/~dicks/avr/usbtiny/ USBtiny er en programvareimplementering av USB-lavhastigheten protokoll for Atmel ATtiny mikrokontrollere. Selvfølgelig vil det også fungere på ATmega -serien. Programvaren er skrevet for en AVR klokket til 12 MHz. Ved denne frekvensen tar hver bit på USB -bussen 8 klokkesykluser, og med mye lureri er det mulig å dekode og kode USB -bølgeformene med programvare. USB -driveren trenger omtrent 1250 til 1350 byte flash -plass (unntatt valgfrie identifikasjonsstrenger), avhengig av konfigurasjon og kompilatorversjon, og 46 byte RAM (unntatt stakkplass). C-grensesnittet består av 3 til 5 funksjoner, avhengig av konfigurasjonen. Vusb-beskrivelse fra https://www.obdev.at/products/vusb/ V-USB er en programvare-bare implementering av en lavhastighets USB-enhet for Atmel's AVR -mikrokontrollere, noe som gjør det mulig å bygge USB -maskinvare med nesten hvilken som helst AVR -mikrokontroller, som ikke krever noen ekstra brikke. Video om konstruksjon og bruk
Trinn 1: Funksjoner og deler
* programmeringslogikk fra usbtiny isp, moden avr-dude-støtte * liten fotavtrykk * minimale komponenter * driver målenheten, merk at io-linjene til mål-mcus ikke er beskyttet. du kan legge 1k-2k motstander til SCK og MOSI og beskytte mot mulige feil tilkoblingsreferanser basert på verkene som finnes på v-usb fra rammeverket https://www.obdev.at/vusb/ usbtiny isp https://www.xs4all. nl/~ dicks/avr/usbtiny/deleliste * attiny45/85 (85 er lettere å få tak i) * 3,6v zenerdioder (1n747, BZX79,.. unngå 1W -typer) * 68ohm motstand x 2 * 1,5K motstand * mini breadboard 170 tiepoints * usb -kabel (dollar shop usb -skriverkabel er fin) * 1k/2k motstander for io lines beskyttelse (valgfritt) verktøy kreves * en fungerende avr programmerer (ja, det er en fangst22, vi trenger en for å lage en) * arbeider avr programmeringsmiljø
Trinn 2: Brettbrettoppsett, skjematisk og konstruksjon
konstruksjon
* følg brødbrettoppsettet, det er ikke det som kan være komponenter, 3 motstander, 2 dioder, 1 hette, pluss en 8 -pinners mcu. * få en dollar -butikk usb -skriverkabel kuttet av skriverenden, det vil være 4 synlige ledninger, sikre og gjøre dem til en 4 -pinners hannhodet, vi bruker den til å koble til brødbrettet. se skjema for layout og pin -tildeling (J1). * se opp for diodepolaritet.
bygge og blinke prosjektet
prosjektet ble bygget i en linux ubuntu lucid-boks med avr-gcc verktøykjede. det antas at du allerede har et slikt miljø, eller du kan finne ut fra internett hvordan du konfigurerer et. kildekoder er gnu gpl v2 lisensiert fra arv.
kildekoden følger en konvensjon som er anbefalt av v-usb, du kan laste ned kildepakken vusbtiny.tgz og ta ut av tarmen til en prosjektkatalog. i kildekatalogen din, er det en main.c, som er min versjon av endret usbtiny programmerer. og en usbdrv-undermappe, som inneholder v-usb-laget. Vær oppmerksom på lisensvilkårene fra de to ovennevnte prosjektene når du bygger dette. min kilde på programmeringslogikken er basert på Dick Streefland -versjonen og ikke ladyada -versjonen (selv om de er nesten de samme).
for de som ikke har en build-for-kjede, kan du bruke følgende binære
klikk for å laste ned vusbtiny.hex
og bruk avrdude til å blinke fastvare
avrdude -c usbtiny -p t45 -e -V -U flash: w: usbtiny.hex
(hvis enheten er en liten85, bytt -p t45 m/ -p t85)
kilden kan lastes ned her klikk for å laste ned vusbtiny.tgz
ta opp kildepakken i arbeidskatalogen
tar -zxvf vusbtiny.tgz
* gjør cd vsubtiny, for å bytte til vusbtiny working directory * ajust makefile for target device ifolge brikken du skal bruke. dvs. PROGRAMMER_MCU = t45 eller t85 * gjør en make * legg til din favoritt ISP -programmerer * endre makefile og endre avrdude -parametrene om nødvendig. aksjen man antar USBTiny programmerer. dvs. AVRDUDE_PROGRAMMERID = usbtiny * flash firmware via make install
etter å ha blinket fastvare, må vi sette sikringen riktig, vi bruker pin 1 reset som io i dette prosjektet
* ppl-klokke brukt som kreves av v-usb-lag for usb-timing * tilbakestillingsnål deaktivert da vi må bruke den som io
avrdude -c usbtiny -p t45 -V -U lfuse: w: 0xe1: m -U hfuse: w: 0x5d: m -U efuse: w: 0xff: m
denne innstillingen deaktiverer videre programmering via 5V SPI ettersom vi trenger RESET -pin (pin1) for io. du trenger tilgang til en HVSP -programmerer for å gjenopprette sikringen.
Trinn 3: Bruk og applikasjon
blinker direkte på brødbrettet
Hvis du bruker vusbtiny til å blinke 8 -pinners AVR -enheter, kan du bare trykke på målenheten på toppen av programmeringsenheten. programmereren hadde blitt designet slik at programmeringsnålene samsvarer med mål. Det er imidlertid et triks, du må isolere pin 2 og 3 på programmereren mcu, da de er USB D+ og D-pins som kobles til PCen. Jeg bruker et snitt av tape for å oppnå dette, du kan se det på bildene. Vis nedenfor er en liten 13v "ridning" på tiny45, klar til å motta fastvare.
ISP blinker via jumper
for å programmere en målkrets via ISP (programmering i systemet), trenger du en ISP-kabel. her bruker jeg ikke standard 2x3 eller 2x5 pin hoder. i stedet bruker jeg en 1x6 jumper som er mer brødbrettvennlig, du kan lage 2x3 eller 2x5 pin header ved å kartlegge dem til J2 som vist på brødbrettoppsettet og skjemaene. bildet nedenfor viser en liten2313 klar til å bli blinket via Internett -leverandøren.
feilsøking
* kan ikke blinke fastvaren? sjekk den originale programmereren din, kanskje du må justere timingen via -B flagg i avrdude. Prøv å lese chip 1st, kan være en dårlig sikring, det kan være at chipen din trenger et eksternt klokkesignal. Du må kanskje fikse brikken din tilbake til standard 1. * sjekk tilkoblinger * hvis du bruker forskjellige io -pinner, sjekk kode og tilkoblinger * du kan erstatte zener -dioder med 500mw, 400mw -typer * du kan prøve å redusere R3 -verdien til 1,2K eller mindre * det er mer sannsynlig at du får avrdude -timingproblemer, prøv -B flag av avdude, har en kortere USB -kabel, alt hjelper
Anbefalt:
Arduino As ISP -- Brenn sekskantfil i AVR -- Sikring i AVR -- Arduino som programmerer: 10 trinn
Arduino As ISP || Brenn sekskantfil i AVR || Sikring i AVR || Arduino Som programmerer: ……………………… Vennligst abonner på YouTube -kanalen min for flere videoer …….. Denne artikkelen handler om arduino som isp. Hvis du vil laste opp hex -fil eller hvis du vil sette sikringen i AVR, trenger du ikke kjøpe en programmerer, du kan gjøre
Slik blinker eller programmerer du ESP8266 AT -fastvare ved hjelp av ESP8266 Blinker og programmerer, IOT Wifi -modul: 6 trinn
Slik blinker eller programmerer du ESP8266 AT-fastvare ved bruk av ESP8266 blinker og programmerer, IOT Wifi-modul: Beskrivelse: Denne modulen er en USB-adapter /programmerer for ESP8266-moduler av typen ESP-01 eller ESP-01S. Den er praktisk utstyrt med en 2x4P 2.54mm hunnhodet for å koble ESP01. Den bryter også ut alle pinnene på ESP-01 via en 2x4P 2.54mm hannh
AVR -programmerer med høy spenning: 17 trinn
AVR -programmerer med høy spenning: Dette er min første instruks. Brettet jeg designet er en AVR -programmerer. Brettet kombinerer funksjonene til 4 separate prototypekort jeg har bygget de siste årene: - En høyspennings AVR -programmerer, hovedsakelig brukt på ATtiny -enheter for å stille inn
Slik laster du opp C -kode til ِ AVR Bruker Arduino Uno som programmerer: 6 trinn
Slik laster du opp C -kode til ِ AVR Bruker Arduino Uno som programmerer: HI alle: D Her vil jeg dele en enkel måte å programmere en AVR -brikke med Arduino Uno R3 Alt du trenger for å brenne koden til mikrokontrolleren din er Arduino Uno i stedet for å kjøpe spesifikk programmerer som koster mye
Slik programmerer du PIC MCU med PICkit -programmerer ved hjelp av et brødbrett: 3 trinn
Slik programmerer du PIC MCU med PICkit -programmerer som bruker et brødbrett: Du trenger ikke dyre og sofistikerte verktøy for å spille med PIC (eller andre) mikrokontrollere. Alt du trenger er et brødbrett der du tester kretsen og programmeringen. Selvfølgelig er en slags programmerer og IDE nødvendig. I denne instruksjonen