Cuprins:
- Pasul 1: Caracteristici și piese
- Pasul 2: Aspect, schemă și construcție a panoului de calcul
- Pasul 3: utilizare și aplicație
Video: Programator VUSBTiny AVR SPI: 3 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
După ce am făcut un programator usbtiny isp și l-am folosit timp de 6 luni, mă uitam să fac altul pentru transport. Îmi place simplitatea designului usbtiny isp, dar aș dori să-l fac și mai mic și să ia mai puține părți. un lucru în designul original pe care vreau să-l schimb este să elimin utilizarea cristalului de ceas. o soluție pe care am găsit-o este că driverele v-usb acceptă oscilatorul intern de 16,5 MHz pe dispozitivele attiny25 / 45/85. așa că încep acest proiect pentru a avea usbtiny isp folosește v-usb pentru comunicarea USB. beneficiile imediate sunt că economisește spațiu și are un număr mai mic de componente (nu mai există cristale). protocol pentru microcontrolerele Atmel ATtiny. Desigur, va funcționa și pe seria ATmega. Software-ul este scris pentru un AVR tactat la 12 MHz. La această frecvență, fiecare bit de pe magistrala USB durează 8 cicluri de ceas și, cu o mulțime de trucuri, este posibilă decodarea și codificarea formelor de undă USB prin software. Driverul USB are nevoie de aproximativ 1250 până la 1350 de octeți de spațiu flash (cu excepția șirurilor de identificare opționale), în funcție de configurație și versiunea compilatorului, și de 46 de octeți RAM (cu excepția spațiului stivei). Interfața C este formată din 3 până la 5 funcții, în funcție de configurație. Microcontrolere AVR, ceea ce face posibilă construirea hardware-ului USB cu aproape orice microcontroler AVR, fără a necesita niciun chip suplimentar. Video despre construcție și utilizare
Pasul 1: Caracteristici și piese
* logica de programare de la usbtiny isp, suport matur avr-dude * imprimeuri mici * componente minime * puteri dispozitiv țintă rețineți că liniile io către mcus țintă nu sunt protejate. puteți adăuga rezistențe 1k-2k la SCK și MOSI și puteți proteja împotriva posibilelor conexiuni greșite referințe bazate pe lucrările găsite la v-usb din framework https://www.obdev.at/vusb/ usbtiny isp https://www.xs4all. nl / ~ dicks / avr / usbtiny / lista pieselor * attiny45 / 85 (85 este mai ușor de găsit) * diode zener 3.6v (1n747, BZX79,.. evită tipurile 1W) * rezistor 68ohm x 2 * rezistor 1,5K * mini panou 170 puncte de legătură * cablu USB (cablul de imprimantă USB magazin dolar este bine) * Rezistoare 1k / 2k pentru protecția liniilor io (opțional) instrumente necesare * un programator avr funcțional (da, este un catch22, avem nevoie de unul pentru a face unul) * mediu de programare avr de lucru
Pasul 2: Aspect, schemă și construcție a panoului de calcul
constructie
* urmați aspectul plăcii, nu există componente care pot fi, 3 rezistențe, 2 diode, 1 capac, plus un MCU cu 8 pini. * obțineți un magazin de dolari cablu de imprimantă USB tăiat capătul imprimantei, vor exista 4 fire expuse, fixați-le și transformați-le într-un antet de sex masculin cu 4 pini, îl vom folosi pentru a ne conecta la panou. consultați schema pentru aspect și atribuirea pinilor (J1). * ai grijă la polaritatea diodei.
construirea și fulgerarea proiectului
proiectul a fost construit într-o cutie lucidă Ubuntu Linux cu lanțul de instrumente avr-gcc. se presupune că aveți deja un astfel de mediu sau puteți afla de pe internet cum să configurați unul. codurile sursă sunt gnu gpl v2 licențiate din moștenire.
codul sursă urmează o convenție recomandată de v-usb, puteți descărca pachetul sursă vusbtiny.tgz și untarred într-un director de proiect. în directorul dvs. sursă, există un main.c, care este versiunea mea de programator usbtiny modificat. și un subdirector usbdrv, care conține stratul v-usb. vă rugăm să respectați termenul de licențiere din cele două proiecte de mai sus atunci când construiți acest lucru. sursa mea despre logica programatorului se bazează pe versiunea Dick Streefland și nu pe versiunea ladyada (deși sunt aproape la fel).
pentru cei care nu au o construcție prea-lanț, puteți utiliza următorul binar
faceți clic pentru a descărca vusbtiny.hex
și utilizați avrdude pentru a bloca firmware-ul
avrdude -c usbtiny -p t45 -e -V -U flash: w: usbtiny.hex
(dacă dispozitivul dvs. este mic 85, înlocuiți -p t45 w / -p t85)
sursa poate fi descărcată aici faceți clic pentru a descărca vusbtiny.tgz
dezarhivați pachetul sursă în directorul dvs. de lucru
tar -zxvf vusbtiny.tgz
* faceți cd vsubtiny, pentru a schimba în directorul de lucru vusbtiny * ajustează makefile pentru dispozitivul țintă în funcție de cipul pe care îl veți utiliza. adică PROGRAMMER_MCU = t45 sau t85 * faceți un make * atașați programatorul dvs. ISP preferat * modificați makefile și modificați parametrii avrdude dacă este necesar. cel de stoc presupune programatorul USBTiny. adică AVRDUDE_PROGRAMMERID = usbtiny * firmware flash prin make install
după ce clipim firmware-ul, trebuie să setăm corect siguranța, folosim pin 1 reset ca io în acest proiect
* ceas ppl folosit conform cerințelor stratului v-usb pentru sincronizare USB * pin de resetare dezactivat deoarece trebuie să-l folosim ca io
avrdude -c usbtiny -p t45 -V -U lfuse: w: 0xe1: m -U hfuse: w: 0x5d: m -U efuse: w: 0xff: m
această setare dezactivează programarea suplimentară prin SPI de 5V deoarece avem nevoie de pinul RESET (pin1) pentru io. veți avea nevoie de acces la un programator HVSP pentru a recupera siguranța.
Pasul 3: utilizare și aplicație
intermitent direct pe panou
dacă utilizați vusbtiny pentru a clipi dispozitive AVR cu 8 pini, puteți apăsa doar dispozitivul țintă deasupra dispozitivului programator. programatorul a fost conceput astfel încât pinii de programare să se potrivească cu țintele. există totuși un truc, va trebui să izolați pinii 2 și 3 de pe programatorul mcu, deoarece aceștia sunt pinii USB D + și D- care se conectează la PC. Folosesc o bucată de bandă scotch pentru a realiza acest lucru, o puteți vedea pe fotografii. arată mai jos este un tiny13v „călare” pe tiny45, gata să primească firmware-ul.
ISP intermitent prin jumper
pentru a programa un circuit țintă prin ISP (programare în sistem), aveți nevoie de un cablu ISP. aici nu folosesc anteturile standard 2x3 sau 2x5 pin. în schimb, folosesc un jumper 1x6, care este mai prietenos cu panourile, puteți crea antet de 2x3 sau 2x5 pini, mapându-le la J2 așa cum se arată în aspectul și schemele panoului de pană. următoarea fotografie arată un tiny2313 gata să fie intermitent prin ISP.
depanare
* nu pot bloca firmware-ul? verificați programatorul original, poate fi necesar să ajustați temporizarea prin -B flag în avrdude. încercați să citiți cipul 1, poate fi o siguranță proastă, poate fi cipul dvs. are nevoie de un semnal de ceas extern. s-ar putea să fie nevoie să vă reparați cipul la primul loc implicit. * verificați conexiunile * dacă utilizați pini io diferiți, verificați codul și conexiunile * puteți înlocui diodele zener cu tipuri 500mw, 400mw * puteți încerca să reduceți valoarea R3 la 1,2K sau mai puțin * este mai probabil să întâmpinați probleme de sincronizare avrdude, încercați -B pavilion de avrdude, au un cablu USB mai scurt, toate ajută
Recomandat:
Arduino Ca ISP -- Înregistrați fișierul hexagonal în AVR -- Siguranță în AVR -- Arduino ca programator: 10 pași
Arduino Ca ISP || Înregistrați fișierul hexagonal în AVR || Siguranță în AVR || Arduino ca programator: ……………………… Vă rugăm să vă ABONAȚI la canalul meu YouTube pentru mai multe videoclipuri …….. Acest articol este totul despre arduino ca isp. Dacă doriți să încărcați fișier hexagonal sau dacă doriți să setați siguranța în AVR, atunci nu este nevoie să cumpărați un programator, puteți face
Programator AVR cu înaltă tensiune: 17 pași
Programator AVR cu înaltă tensiune: Acesta este primul meu instructabil. Placa pe care am proiectat-o este un programator AVR. Placa combină funcțiile a patru plăci prototip separate pe care le-am construit în ultimii ani: - Un programator AVR de înaltă tensiune, utilizat în principal pe dispozitivele ATtiny pentru a seta fu
Cum să încărcați codul C pe ِ AVR folosind Arduino Uno ca programator: 6 pași
Cum să încărcați codul C în R AVR folosind Arduino Uno ca programator: Bună ziua tuturor: D Aici voi împărtăși o modalitate simplă de a programa orice cip AVR folosind Arduino Uno R3 Tot ce trebuie să ardeți codul pe microcontrolerul dvs. este Arduino Uno în loc să cumpărați programator care a costat mult
Reduceți proiectele dvs. Arduino - Programator Arduino UNO ca programator ATmega328P (https://youtu.be/YO61YCaC9DY): 4 pași
Reduceți proiectele dvs. Arduino | Programatorul Arduino UNO As ATmega328P (https://youtu.be/YO61YCaC9DY): Link video: https://youtu.be/YO61YCaC9DY Programarea ATmega328P folosind Arduino ca ISP (In-System Programmer) vă permite să utilizați caracteristicile Arduino pe o panou de calcul sau PCB. Mai ales ajută atunci când îți faci proiectul de facultate. Reduce
Programator STK500 AVR ieftin pentru Atmel Studio: 7 pași
Programator STK500 AVR ieftin pentru Atmel Studio: Atmel Studio este un instrument puternic pentru realizarea de programe AVR, dar scrierea unui program este primul pas. Pentru a utiliza programul, trebuie să creați un circuit și să transferați codul în microcontroler. Puteți programa AVR-ul dvs. de la Atmel Studio folosind