Innholdsfortegnelse:

AVR -programmerer med høy spenning: 17 trinn
AVR -programmerer med høy spenning: 17 trinn

Video: AVR -programmerer med høy spenning: 17 trinn

Video: AVR -programmerer med høy spenning: 17 trinn
Video: Inspeksjon av høyspent 2024, November
Anonim
AVR programmerer m/høyspenning
AVR programmerer m/høyspenning
AVR programmerer m/høyspenning
AVR programmerer m/høyspenning

Dette er min første instruks. Brettet jeg designet er en AVR -programmerer. Brettet kombinerer funksjonene til 4 separate prototypebrett jeg har bygget de siste årene:

- En høyspennings AVR -programmerer, hovedsakelig brukt på ATtiny -enheter for å stille sikringer når tilbakestillingslinjen brukes for I/O.

- Arduino som ISP, 5V og 3v3 (teller som to av funksjonene)

- NOR Flash EEPROM programmerer (kopierer raskt fra et SD -kort til NOR Flash)

Styret bruker vanlige AMS1117 LDO spenningsregulatorer for å få 5V og 3v3. Høyspenningsfunksjonen krever 12V. Til dette brukte jeg en MT3608 DC-DC step-up converter. MCU kjører på 16MHz, 5V. Nivåforskyvning for alt som krever 3v3 oppnås ved hjelp av en LVC125A. LVC125A er det du finner på mange av SD -kortmodulene. MCU'en er en ATmega328pb. ATMega328pb er nesten det samme som den mer vanlige ATMega328p bortsett fra at den har 4 flere I/O -pinner i pakken med samme størrelse.

Dette brettet er versjon 1.5. Nye funksjoner i denne siste versjonen:- et usb-serielt grensesnitt.- tilbakestillbare poly-sikringer.- LED-funksjonsindikatorer under funksjonsknappene.- en bryter for å kontrollere seriell tilbakestilling ved å koble DTR fra USB-seriell brikke. - en MOSFET for å fjerne strømmen helt fra DC-DC 12V når den ikke er i bruk.

Brettet har muligheten til å legge til en AT24Cxxx I2C seriell EEPROM, og det er en 5-pins I2C JST-XH-05-kontakt (GND/5V/SCL/SDA/INT1) for tilkobling av I2C-enheter.

En av de mer kompliserte aspektene ved dette prosjektet var hvordan du laster alle funksjonene/skissene på tavlen. Den enkleste metoden ville vært å ganske enkelt laste ned en skisse hver gang jeg trengte å endre funksjoner. En annen metode ville vært å kombinere alle skissene. Jeg bestemte meg for begge disse metodene. Skurtreskermetoden ville ha gjort det vanskelig å integrere eventuelle endringer i de opprinnelige kildeskissene. Kombinasjonsmetoden har også problemet med at mengden tilgjengelig SRAM ikke var tilstrekkelig uten å omskrive og grave i bibliotekene og skissene som ble brukt, igjen et vedlikeholdsproblem.

Metoden jeg valgte var å skrive et program som heter AVRMultiSketch som jobber med Arduino IDE for å laste skissene inn i flash ved å flytte minneplassene. Skissekildene endres ikke på noen måte. De løper på brettet som om de er den eneste skissen. Hvordan dette fungerer er beskrevet i detalj på åpen kildekode GitHub -readme for AVRMultiSketch. Se https://github.com/JonMackey/AVRMultiSketch for mer informasjon. Dette depotet inneholder også skissene jeg brukte/skrev/modifiserte, som kan brukes individuelt.

For å veksle mellom skisser har tavlen fire knapper: Reset og knapper merket 0, 1, 2. Ved oppstart eller tilbakestilling, hvis du ikke gjør noe, kjøres den siste valgte funksjonen. Hvis du holder nede en av de nummererte knappene, velger du en skisse/funksjon. Skissen blir den valgte skissen. Hvite lysdioder under hver av funksjonsknappene lyser for å gjenspeile gjeldende valg.

Foreløpig er tavlen bare vert for 3 skisser, men det kan være vert for noen flere. I så fall, forutsatt at bare 3 bits/nummererte knapper, kan den være vert for opptil 7 ved å holde inne mer enn en knapp.

Skjematikken er vedlagt i neste trinn

En minimal støttebrakett er tilgjengelig på thingiverse. Se

Brettet for versjon 1.5 deles på PCBWay. Se

Kontakt meg hvis du vil ha et montert og testet brett.

Trinn 1: Instruksjoner for montering av brettet

Instruksjoner for montering av styret
Instruksjoner for montering av styret

Instruksjoner for montering av brettet (eller nesten alle små brett) følger.

Hvis du allerede vet hvordan du bygger et SMD -kort, gå til trinn 13.

Trinn 2: Samle deler

Samle deler
Samle deler
Samle deler
Samle deler

Jeg starter med å tape et stykke papir på arbeidsbordet med etiketter for alle de svært små delene (motstander, kondensatorer, lysdioder). Unngå å plassere kondensatorer og lysdioder ved siden av hverandre. Hvis de blandes, kan det være vanskelig å skille dem fra hverandre.

Jeg fyller deretter opp papiret med disse delene. Rundt kanten legger jeg til de andre, enkle å identifisere delene.

(Vær oppmerksom på at jeg bruker det samme papiret til andre brett jeg har designet, så bare noen få av stedene på bildet har deler ved siden av/på etikettene)

Trinn 3: Monter brettet

Monter brettet
Monter brettet
Monter brettet
Monter brettet

Ved å bruke et lite treverk som en monteringsblokk, kiler jeg PCB -brettet mellom to stykker prototavle. Prototypeplatene holdes fast på festeblokken med dobbeltsidig tape (ingen tape på selve kretskortet). Jeg liker å bruke tre til monteringsblokken fordi det er naturlig ikke-ledende/antistatisk. Det er også enkelt å flytte rundt etter behov når du plasserer deler.

Trinn 4: Påfør loddepasta

Påfør loddepasta
Påfør loddepasta
Påfør loddepasta
Påfør loddepasta

Påfør loddemasse på SMD -putene, og la alle gjennomgående hullplater ligge. Siden jeg er høyrehendt, jobber jeg vanligvis øverst til venstre til nederst til høyre for å minimere sjansene for å smøre loddepastaen som jeg allerede har påført. Hvis du smører ut pastaen, bruker du en lofri tørk som for å fjerne sminke. Unngå å bruke Kleenex/vev. Å kontrollere mengden lim som brukes på hver pute er noe du får tak i gjennom prøving og feiling. Du vil bare ha en liten skvett på hver pute. Størrelsen på dappen er i forhold til størrelsen og formen på puten (omtrent 50-80% dekning). Hvis du er i tvil, bruk mindre. For pinner som er tett inntil hverandre, som LVC125A TSSOP -pakken jeg nevnte tidligere, bruker du en veldig tynn stripe på tvers av alle putene i stedet for å prøve å påføre en egen klatt på hver av disse svært smale putene. Når loddetinnet er smeltet, vil loddemasken få loddetinnet til å migrere til puten, omtrent som hvordan vann ikke fester seg til en fet overflate. Loddetinn vil perle eller flytte til et område med en eksponert pute.

Jeg bruker en loddepasta med lavt smeltepunkt (137C smeltepunkt) Det andre bildet er v1.3 -brettet og typen loddemasse jeg bruker.

Trinn 5: Plasser SMD -delene

Plasser SMD -delene
Plasser SMD -delene

Plasser SMD -delene. Jeg gjør dette fra øverst til venstre til nederst til høyre, selv om det ikke gjør så stor forskjell enn at du er mindre sannsynlig å gå glipp av en del. Delene plasseres med elektronisk pinsett. Jeg foretrekker pinsetten med en buet ende. Ta opp en del, vri om nødvendig monteringsblokken, og legg deretter delen. Gi hver del et lett trykk for å sikre at den sitter flatt på brettet. Når jeg plasserer en del, bruker jeg to hender for å hjelpe til med presis plassering. Når du plasserer en firkantet mcu, plukk den opp diagonalt fra motsatte hjørner.

Inspiser kortet for å kontrollere at eventuelle polariserte kondensatorer er i riktig posisjon, og at alle brikkene er riktig orientert.

Trinn 6: Tid for varmluftspistolen

Tid for varmluftspistolen
Tid for varmluftspistolen

Jeg bruker en loddetinnpasta med lav temperatur. For modellpistolen min har jeg temperaturen satt til 275C, luftstrømmen er satt til 7. Hold pistolen vinkelrett på brettet omtrent 4 cm over brettet. Loddetiden rundt de første delene tar en stund å begynne å smelte. Ikke bli fristet til å sette fart på tingene ved å flytte pistolen nær brettet. Dette resulterer vanligvis i å blåse delene rundt. Når loddetinnet smelter, går du videre til neste overlappende del av brettet. Jobb deg rundt hele brettet.

Jeg bruker en YAOGONG 858D SMD varmluftspistol. (På Amazon for mindre enn $ 40.) Pakken inneholder 3 dyser. Jeg bruker den største (8 mm) munnstykket. Denne modellen/stilen er laget eller solgt av flere leverandører. Jeg har sett vurderinger overalt. Denne pistolen har fungert feilfritt for meg.

Trinn 7: Forsterk om nødvendig

Forsterk om nødvendig
Forsterk om nødvendig
Forsterk om nødvendig
Forsterk om nødvendig

Hvis kortet har en overflatemontert SD -kortkontakt eller utenpåliggende lydkontakt osv., Må du påføre ekstra loddetinn på putene som brukes til å feste huset til kortet. Jeg har funnet ut at loddemasse alene ikke generelt er sterk nok til å sikre disse delene pålitelig.

Trinn 8: Rengjøring/fjerning av SMD Flux

Rengjøring/fjerning av SMD Flux
Rengjøring/fjerning av SMD Flux
Rengjøring/fjerning av SMD Flux
Rengjøring/fjerning av SMD Flux

Loddemassen jeg bruker, er annonsert for å være "ikke ren". Du trenger å rengjøre brettet, det ser mye bedre ut, og det vil fjerne eventuelle små loddeperler på brettet. Ved å bruke latex-, nitril- eller gummihansker i et godt ventilert rom, hell en liten mengde Flux Remover i en liten tallerken av keramikk eller rustfritt stål. Forsegl flusfjernerflasken igjen. Bruk en stiv børste, dup penselen i flussfjerneren og skrubb et område av brettet. Gjenta til du har skrubbet brettoverflaten helt. Jeg bruker en pistolrensebørste til dette formålet. Børsten er stivere enn de fleste tannbørster.

Trinn 9: Plasser og lodd alle gjennomhullsdelene

Plasser og lodd alle deler av hullet
Plasser og lodd alle deler av hullet
Plasser og lodd alle gjennomhullsdelene
Plasser og lodd alle gjennomhullsdelene

Etter at flussfjerner har fordampet av brettet, plasser og lodd alle hullhulldelene, kortest til høyest, en om gangen.

Trinn 10: Skyll gjennom hullnålene

Skyll gjennom hullnålene
Skyll gjennom hullnålene

Trim de gjennomgående hullpinnene på undersiden av brettet med en tang. Dette gjør det lettere å fjerne fluksrester.

Trinn 11: Varm opp gjennom hullnålene etter klipping

Varm opp gjennom hullnålene etter klipping
Varm opp gjennom hullnålene etter klipping

For et fint utseende, varm opp loddetinnet på de gjennomgående hullpinnene etter klipping. Dette fjerner skjærmerkene som er igjen av spylekutteren.

Trinn 12: Fjern gjennomstrømningshullstrømmen

Fjern gjennomstrømningshullet
Fjern gjennomstrømningshullet

Rengjør baksiden av brettet med samme rengjøringsmetode som før.

Trinn 13: Påfør styret

Påfør makt til styret
Påfør makt til styret

Koble strømmen til brettet (6 til 12V). Hvis ingenting frites, måler du 5V, 3v3 og 12V. 5V og 3v3 kan måles fra den store tappen på de to regulatorbrikkene. 12V kan måles fra R3, enden av motstanden nærmest brettet nederst til venstre (strømkontakten er øverst til venstre).

Trinn 14: Last inn Bootloader

Last inn Bootloader
Last inn Bootloader

Fra menyen Arduino IDE Tools, velg brettet og andre alternativer for mcu -en som målrettes mot.

På bordene mine har jeg nesten alltid en ICSP -kontakt. Hvis du ikke har en Arduino som ISP eller en annen ICSP -programmerer, kan du bygge en på et brødbrett for å laste ned bootloaderen til programmererkortet. Velg Arduino som ISP fra programmeringsmenyelementet, og velg deretter burn bootloader. I tillegg til å laste ned bootloader, vil dette også sette sikringene riktig. På bildet er brettet til venstre målet. Tavlen til høyre er Internett -leverandøren.

Trinn 15: Last inn Multi Sketch

Last inn Multi Sketch
Last inn Multi Sketch
Last inn Multi Sketch
Last inn Multi Sketch
Last inn Multi Sketch
Last inn Multi Sketch

Følg instruksjonene på GitHub -depotet mitt for AVRMultiSketch for å laste multi -skissen til flash via den serielle porten på brettet. GitHub AVRMultiSketch -depotet inneholder alle skissene som vises på bildet. Selv om du ikke planlegger å bygge brettet, kan det hende du finner NOR Flash Hex Copier og AVR High Voltage -skissene nyttige.

Trinn 16: Ferdig

Ferdig
Ferdig
Ferdig
Ferdig
Ferdig
Ferdig
Ferdig
Ferdig

Jeg har også designet noen få adapterkort ved bruk av umonterte sjetonger, for eksempel ved breadboarding.

- ATtiny85 ICSP -adapter. Brukes til å programmere en frittstående ATtiny85.

- ATtiny84 til ATtiny85. Dette brukes til både høyspenningsprogrammering og koblet til ATtiny85 ICSP -adapteren.

- NOR Flash -adapter.

For å se noen av mine andre design, besøk

Trinn 17: Forrige versjon 1.3

Forrige versjon 1.3
Forrige versjon 1.3
Forrige versjon 1.3
Forrige versjon 1.3

Ovenstående er bilder av versjon 1.3. Versjon 1.3 har ikke USB Serial, gjenopprettbare sikringer og funksjonsindikatorer. En versjon 1.3 -variant bruker en ATmega644pa (eller 1284P)

Hvis du er interessert i å bygge versjon 1.3, send meg en melding (i stedet for å legge til en kommentar.)

Anbefalt: