Innehållsförteckning:

Självgjord Arduino Board: 8 steg
Självgjord Arduino Board: 8 steg

Video: Självgjord Arduino Board: 8 steg

Video: Självgjord Arduino Board: 8 steg
Video: självgjord smällare 2024, November
Anonim
Självgjord Arduino Board
Självgjord Arduino Board

Genom att designa ditt eget Arduino-kort lär du dig om några nya komponenter och elektroniska kretsar, inklusive några avancerade ämnen som strömförsörjning, timingkrets och användning av ATmega IC (Integrated Circuit).

Det kommer att hjälpa dig i framtiden med att skapa dina egna projekt som väderstation, hemautomatiseringsskydd etc.

Fördelen med den självtillverkade Arduino är att den har en låg energiförbrukning och säkerställer att ett projekt kan köras länge på ett batteri.

Dessutom kan du utöka kortet genom att lägga till digital eller analog portutvidgning eller några kommunikationsmoduler.

Tillbehör

Hårdvaran

För att bygga en minimalistisk Arduino behöver du följande hårdvara:

1x ATmega328P-PU mikrokontroller med Arduino bootloader

1x 7805 linjär spänningsregulator (5v utgång, 35v max ingång)

1x brödbräda (jag använder 830 stiftskiva)

Olika anslutningskablar

1x 16 MHz kristalloscillator

1x 28 -stifts IC -uttag

1x 1 μF, 25 V elektrolytkondensator

1x 100 μF, 25 V elektrolytkondensator

2x 22 pF, 50 V keramiska kondensatorer

2x 100 nF, 50 V keramiska kondensatorer

2x 330 ohm motstånd (R1 och R2)

1x 10 kOhm motstånd (R3)

2x lysdioder efter eget val (LED1 och LED2)

1x tryckknapp

Valfri 2x 6-pins header och 3x 8-pin header

1x batteri av PP3-typ

1x 9 V batteri av PP3-typ

1x FTDI -programmeringsadapter

Steg 1: 7805 Linjär spänningsregulator

7805 Linjär spänningsregulator
7805 Linjär spänningsregulator
7805 Linjär spänningsregulator
7805 Linjär spänningsregulator
7805 Linjär spänningsregulator
7805 Linjär spänningsregulator

En linjär spänningsregulator innehåller en enkel krets som omvandlar en spänning till en annan. 7805-regulatorn kan omvandla en spänning mellan 7 och 30 volt till en fast 5 volt, med en ström upp till 1 ampere, vilket är perfekt för vårt Arduino-kort.

Vi börjar med att skapa strömförsörjningskretsen som innehåller en 7805 spänningsregulator i TO-220-form och två kondensatorer med 100 μF vardera.

När du tittar på framsidan av 7805 -chipet - stiftet till vänster är för ingångsspänningen, mittstiftet ansluts till GND och det högra stiftet är 5 V -utgångsanslutningen. Jag skulle rekommendera att placera en kylfläns, för när kretsen drar upp till maximalt 1 amp ström blir 7805 -chipet tyst varmt (du kan bränna fingertoppen när du rör det).

Placera en 100 μF kondensator mellan IN i regulatorn och marken och en 100 μF kondensator på höger skena mellan kraft och mark. Du måste vara försiktig - elektrolytkondensatorn är polariserad (silverremsan på kondensatorn betyder markbenet) och måste placeras exakt enligt schemat.

Lägg till ström- och jordledningar för var din spänningsregulator kommer att vara, ansluta varje skena i mitten och till höger på kortet. På detta sätt har vi 5 Volt strömförsörjning från topp- och bottenskenorna på brödbrädan. Dessutom kommer vi att inkludera en röd lysdiod som lyser när strömmen är på, på detta sätt kan vi alltid se när vårt kort är strömförsörjt.

En lysdiod är en diod och den tillåter bara elektrisk ström att flöda i en riktning. Elektricitet ska strömma in i det långa benet och ut ur det korta benet. Lysdiodernas katod har också en något utplattad sida, vilket motsvarar den korta, negativa delen av lysdioden.

Vår krets har en 5 volt strömförsörjning och en röd lysdiod är märkt runt 1,5 - 2 volt. För att minska spänningen måste vi ansluta motståndet i serie med lysdioden som begränsar mängden elektricitet som flödar för att förhindra förstörelse av LED. En del av spänningen kommer att förbrukas av motståndet och endast en lämplig andel av den appliceras över lysdioden. Sätt in motståndet mellan lysdiodens korta ben och raden som innehåller den svarta tråden på chipets högra sida (GND).

De röda och svarta ledningarna till vänster om spänningsregulatorn är där din strömförsörjning kommer att anslutas. Den röda ledningen är för STRÖMEN och den svarta ledningen är för marken (GND).

OBS: Du kan bara ansluta en strömförsörjning som är mellan 7-16V. Alla lägre och du kommer inte att få 5V ur din regulator, och spänning högre kommer 17 V att skada ditt chip. Ett 9V batteri, 9V DC strömförsörjning eller 12V DC strömförsörjning är lämpligt.

Och för några fler avancerade kretsar kan du placera en spänningsregulator med justerbar spänning. På så sätt kan du lägga till några 3,3 V -sensorer på kortet eller slå på en 9 V DC -motor.

Mer om linjära spänningsregulatorer -

www.instructables.com/id/Introduction-to-Linear-Voltage-Regulators

Steg 2: ATmega328P-PU mikrokontroller

ATmega328P-PU mikrokontroller
ATmega328P-PU mikrokontroller
ATmega328P-PU mikrokontroller
ATmega328P-PU mikrokontroller
ATmega328P-PU mikrokontroller
ATmega328P-PU mikrokontroller

För att bygga en Arduino på brödbrädet behöver du en ATmega328P-PU mikrokontroller som är hjärnan i vårt självgjorda Arduino-bräda. Placera den som visas i schemat och var försiktig - benen kan gå sönder om du tvingar in dem, eller så kan du använda 28 -stifts IC -uttag. IC bör placeras med en månformad skärning orienterad till vänster om brödbrädan (stiften är numrerade från 1 till 28 moturs).

OBS: Inte alla ATmega IC innehåller Arduino -bootloader (programvaran som gör det möjligt att tolka skisser som skrivits för en Arduino). När du letar efter en mikrokontroller för din självgjorda Arduino, var noga med att välja en som redan innehåller startladdaren.

Här lite teori om mikrokontroller

En mikrokontroller är en liten dator med en processor som kör instruktioner. Den har olika typer av minne för att lagra data och instruktioner från vårt program (skiss); ATmega328P-PU har tre typer av minne: 32kB ISP (in-system programmering) flashminne där skisser lagras, 1kB EEPROM (elektriskt raderbart programmerbart skrivskyddsminne) för långtidsdatalagring och 2kB SRAM (statiskt slumpmässigt åtkomstminne) för att lagra variabler när en skiss körs.

OBS: Det är viktigt att veta att data i flashminne och EEPROM behålls när strömmen till mikrokontrollern tas bort.

Mikrokontrollern har 13 digitala in-/utgångar (GPIO) för allmänna ändamål och sex 10-bitars (värden mellan 0 och 1023) analoga till digitala omvandlarens (ADC) GPIO-linjer för att konvertera spänningen på en stift till ett digitalt värde. Det finns tre timers med två 8-bitars timers med värden mellan 0 och 255, och en 16-bitars timer med värden mellan 0 och 65535, som används av fördröjning () -funktionen i en skiss eller genom pulsbreddsmodulering (PWM).

Det finns fem energisparlägen som kan väljas av mjukvara och mikrokontrollern fungerar mellan 1,8V och 5,5V. Du kan använda bilden som referens för stiftlayouten på ATmega328P-PU.

Det finns tre grupper av portar: PB, PC och PD med 8, 7 respektive 8 stift, plus två jordade (GND) stift, en 5V stift (VCC) med matningsspänning (AVCC) och analog referensspänning (AREF)) stift för analog-till-digital-omvandlaren (ADC).

Steg 3: ATmega328P-PU-anslutning

ATmega328P-PU-anslutning
ATmega328P-PU-anslutning

Efter att ha placerat IC, anslut stiften 7, 20 och 21 på ATmega till den positiva kraftskenan på brödbrädan och stift 8 och 23 till de negativa kraftskenorna, använd bygeltrådar för att ansluta de positiva och GND -kraftskenorna på vardera sidan av som visas i figuren.

Stift 7 - Vcc - Digital matningsspänning

Stift 8 - GND

Pin 22 - GND

Pin 21 - AREF - Analog referensstift för ADC

Pin 20 - AVcc - Matningsspänning för ADC -omvandlaren. Måste anslutas till ström om ADC inte används som i vårt exempel. Om du vill använda det i framtiden måste det drivas via ett lågpassfilter (för att minska buller).

Efter det placerar du någon fjortonvägs rubrikstift-det kommer att likna Arduino GPIO: er.

Steg 4: Återställ -knapp

Återställningsknapp
Återställningsknapp
Återställningsknapp
Återställningsknapp

Lägg till den lilla taktila omkopplaren så att du kan återställa Arduino och förbereda chippet för att ladda upp ett nytt program. Ett snabbt tryck på den här omkopplaren återställer chippet.

Vi sätter in återställningsknappen i vår krets som visas i figuren, när vi trycker på den förkortas den elektriska kretsen till GND genom att förbikoppla ett 1kOhm -motstånd och ansluta ATmega Pin 1 till GND. Lägg sedan till en ledning från omkopplarens nedre vänstra ben till återställningsstiftet på ATmega -chipet och en ledning från det övre vänstra benet på omkopplaren till marken.

Lägg dessutom till ett 10 k Ohm uppdragningsmotstånd till +5V från RESET-stiftet för att förhindra att chipet återställer sig själv vid normal drift. Detta motstånd kommer att anslutas till 5 volts strömförsörjning, "dra upp" stift 1 till 5 volt. Och när du ansluter Pin 1 till 0V utan ett motstånd, kommer chipet att starta om. Leta efter ett nytt program som laddas upp vid omstart av mikrokontrollern (vid uppstart om inget nytt skickas kör det det senaste programmet som skickades).

Motståndet har en fyrfärgad rand. Avläsning av brun = 1, svart = 0, orange = 3 ger oss siffran 103. Motståndet i ohm börjar "10" med 3 nollor efter - 10 000 ohm eller 10 kilo ohm, och guldremsan är toleransen (5 %).

För att uppgradera vår krets - kan vi placera 'avkoppling' kondensator '. Placera en 100 nF (nano Farad) keramisk kondensator. Det är en liten skiva med två trådar med '104 markering' och denna typ av kondensator är ingen polariserad och kan placeras i valfri riktning.

Denna "frikoppling" -kondensator utjämnar elektriska spikar, så omstartssignalen som skickas till pin 1 detekteras på ett tillförlitligt sätt. Siffrorna 104 visar dess kapacitans i pico Farad i vetenskaplig notering. Den sista siffran "4" berättar hur många nollor som ska läggas till. Kapacitansen startar ‘10’ och fortsätter sedan med ytterligare 4 nollor - 100 000 pico Farads, och eftersom 1000 pico Farads är 1 nano Farads finns det 100 nano Farads (104).

Sätt i kondensatorn mellan det övre vänstra benet på chipet (stift 1, moturs från halvmåneformen)

Steg 5: Kristalloscillator

Kristalloscillator
Kristalloscillator
Kristalloscillator
Kristalloscillator

Nu ska vi göra klockan för IC. Det är en 16 Mhz kvarts och två keramiska kondensatorer 22pF (piko Farad) vardera. Kristalloscillatorn skapar en elektrisk signal med en mycket exakt frekvens. I detta fall är frekvensen 16 MHz, vilket innebär att mikrokontroller kan utföra 16 miljoner processorinstruktioner per sekund.

16 MHz -kristallen (figur) gör att Arduino kan beräkna tid, och kondensatorerna tjänar till att jämna ut matningsspänningen.

Kvarts kristallbenen är båda desamma - du kan inte köra den bakåt. Anslut ett ben av kristallen till stift 9 på ATmega -chipet, och det andra benet till stift 10. Anslut benen på en av de 22 pF skivkondensatorerna till stift 9 och GND, och den andra skivkondensatorn till stift 10 och GND, som visas i figur.

Obs! Skivkondensatorer är opolariserade och kan sättas in på vilket sätt som helst.

Det är värt att nämna att trådlängderna mellan 22pF -kondensatorerna måste vara lika långa och bör vara så nära som möjligt för regulatorn för att undvika interaktioner med andra delar av kretsarna.

Steg 6: Lägga till LED till Pin 13

Lägger till LED till Pin 13
Lägger till LED till Pin 13
Lägger till LED till Pin 13
Lägger till LED till Pin 13
Lägger till LED till Pin 13
Lägger till LED till Pin 13

Nu lägger vi till den gröna lysdioden (digital pin 13 på Arduino).

Sätt i ett LED -ben långt på raden nedanför den röda tråden (på höger sida av chipet - effekt, eller 5 volt) och det korta benet i den första tomma raden nedanför mikrokontrollen.

Detta 330 Ohm -motstånd är seriekopplat med lysdioden, vilket begränsar mängden elektricitet som flödar för att förhindra att lysdioderna förstörs.

Sätt in motståndet mellan lysdiodens korta ben och raden som innehåller den svarta tråden på chipets högra sida (GND eller 0Volts)

Alla analoga, digitala och andra stift som finns på det vanliga Arduino -kortet är också tillgängliga i vår breadboard -version. Du kan använda ATmega -schemat och pin -tabellen som referens.

Steg 7: USB till seriell kontakt

USB till seriell kontakt
USB till seriell kontakt
USB till seriell kontakt
USB till seriell kontakt
USB till seriell kontakt
USB till seriell kontakt
USB till seriell kontakt
USB till seriell kontakt

ATmega 328P-PU mikrokontroller har tre kommunikationslägen: en seriell programmerbar USART (universell synkron och asynkron mottagarsändare), en SPI (Serial Peripheral Interface) seriell port och ett tvåtrådigt seriellt gränssnitt. USART tar byte med data och sänder de enskilda bitarna sekventiellt, vilket kräver överförings- (TX) och mottagning (RX) kommunikationslinjer. SPI använder fyra kommunikationslinjer: master-out slave-in (MOSI), master-in slave-out (MISO) och seriell klocka (SCK) med en separat slavval (SS) linje för varje enhet. I2C -kommunikationen Two Wire Interface (TWI) -bussen använder två signalledningar: seriell data (SDA) och seriell klocka (SCL).

För att ansluta vårt kort till datorn med Arduino IDE för att ladda ner en skiss, kommer vi att använda ett USB till seriellt UART -gränssnitt, till exempel FT232R FTDI.

När du köper en FTDI -kabel, se till att det är 5 V -modellen, eftersom 3,3 V -modellen inte fungerar som den ska. Denna kabel (visas i figuren) har en USB -kontakt i ena änden och ett uttag med sex ledningar i den andra.

När du ansluter kabeln, se till att sidan av uttaget med den svarta ledningen ansluter till GND -stiftet på brödbrädans huvudstiften. När kabeln väl är ansluten, levererar den också ström till kretsen, precis som ett vanligt Arduino -kort skulle göra.

Sedan kommer vi att ansluta vår FTDI med vårt självgjorda Arduino-kort; som referens kan du använda tabellen och schemat.

En 0,1 μF elektrolytkondensator är ansluten mellan DTR -stiftet (Data Terminal Ready) på USB till seriellt UART -gränssnitt och microcontroller Reset, som återställer mikrokontrollern för att synkronisera med USB till det seriella gränssnittet.

OBS: En smart del är att mikrokontroller RX -stift måste vara ansluten till TX på USB till seriell adapter och samma med TX för en enhet till RX för den andra.

CTS -stiftet (Clear to Send) på USB till det seriella UART -gränssnittet är inte anslutet till mikrokontrollern.

För att ladda ner en skiss till mikrokontrollern i Arduino IDE från menyn Verktyg ➤ Port väljer du den relevanta kommunikationsporten (COM) och från Verktyg ➤ Styrmenyn väljer du Arduino/Genuino Uno. Skissen sammanställs i Arduino IDE och laddas sedan till mikrokontrollen med USB till det seriella UART -gränssnittet. När skissen laddas ner flimrar de gröna och röda lysdioderna i USB-till-seriellt UART-gränssnittet TXD och RXD.

USB till seriellt UART -gränssnitt kan tas bort och en 5V strömförsörjning anslutas till mikrokontrollern. En LED och 220kΩ motstånd är anslutna till mikrokontrollstiftet 19, motsvarande Arduino pin 13, för att köra blinkskissen.

Steg 8: Ladda upp Sketch eller installera Bootloader

Ladda upp Sketch eller installera Bootloader
Ladda upp Sketch eller installera Bootloader
Ladda upp Sketch eller installera Bootloader
Ladda upp Sketch eller installera Bootloader

Om du inte har en USB till serieomvandlare-kan du använda en annan Arduino (i mitt fall Arduino UNO) för att ladda upp en skiss eller bootloader till det självtillverkade kortet.

ATmega238P-PU-mikrokontrollerna kräver en bootloader för att ladda upp och köra skisser från Arduino IDE; när ström tillförs mikrokontrollern bestämmer startladdaren om en ny skiss laddas upp och laddar sedan skissen i mikrokontrollerns minne. Om du har ATmega328P-PU utan bootloader kan du ladda upp bootloader med SPI-kommunikation mellan två kort.

Så här laddar du upp en bootloader till ATmega IC.

Låt oss först börja med att konfigurera vår Arduino UNO som ISP, detta görs för att du vill att Arduino UNO ska ladda upp skissen till ATmega IC och inte sig själv.

Steg 1: Konfigurera vår Arduino UNO som internetleverantör

Anslut inte ATmega IC medan uppladdningen nedan körs.

  • Anslut arduino till en dator
  • Öppna arduino IDE
  • Välj lämpligt kort (Verktyg> Kort> Arduino UNO) och COM -port (Verktyg> Port> COM?)
  • Öppna> Exempel> ArduinoISP
  • Ladda upp skiss

Därefter kan du ansluta ditt eget kort till Arduino UNO genom att följa kretsen som visas på schemat. I detta skede behöver du inte strömförsörja ditt eget kort eftersom Arduino skulle ge den nödvändiga strömmen.

Steg 2: Ladda upp en skiss eller bootloader

Med allt anslutet öppnar IDE från mappen du just skapade (kopian).

  • Välj Arduino328 från Verktyg> Kort
  • Välj Arduino som ISP från Verktyg> Programmerare
  • Välj Burn Bootloader

Efter en framgångsrik bränning skulle du få en "Klar att bränna bootloader".

Startladdaren laddas nu till mikrokontrollern, som är redo att ta emot en skiss efter att ha ändrat COM -porten i Verktyg ➤ Port -menyn.

Rekommenderad: