INHOUDSOPGAWE:

Atmega328p Metgesel: 6 stappe (met foto's)
Atmega328p Metgesel: 6 stappe (met foto's)

Video: Atmega328p Metgesel: 6 stappe (met foto's)

Video: Atmega328p Metgesel: 6 stappe (met foto's)
Video: Lesson 9: Reading Voltage Using Arduino, Potentiometer AnalogRead SunFounder Kit | Robojax 2024, November
Anonim
Atmega328p Metgesel
Atmega328p Metgesel

ATMEGA328P Metgesel: Die selflaaiprogram en programmeermodule

As jy soos ek is, is jy verslaaf aan projekte en Arduino. As u egter 'n aantal projekte met 'n Arduino as die brein gedoen het, het u waarskynlik begin siek word om na die Arduino -raam in sy geheel te kyk, u projek deurmekaar te maak en in die algemeen net sleg te lyk. As sodanig het ek besluit dat ek van die Arduino -borde wil gaan na net die IC.

Voer die atmega328p in.

Die atmega328p is waarskynlik die vrugbaarste Arduino -versoenbare IC op die mark. Dit is geensins die goedkoopste of kragtigste nie, maar as ek albei in ag neem, is dit na my mening die beste prestasie per dollar. Is u gereed om u projekte baie meer professioneel te laat lyk en minder na 'n samekoms van modules uit die rak te kyk? As dit so is, lees hierdie instruksies deur, en u kry die nodige inligting om u eie module te bou waarmee u 'n selflaaiprogram na u doel atmega328p kan flits, die knipskets kan oplaai om te verseker dat dinge werk en uiteindelik u eie sketse oplaai vir u individuele projekte.

Stap 1: BOM en gereedskap

Eerstens, hierdie instruksies gaan nie stap vir stap 'n handleiding wees nie, maar ek neem aan dat u weet hoe u 'n skematiese lees kan lees en dit na 'n bord kan vertaal. Met die oog hierop, is hier die nodige materiaal en gereedskap:

Materiaal:

  • 1x 40x60mm protoboard of PCB
  • 1x 6 -pins manlike kopstuk (ek het mannetjies met 'n regte hoek gebruik)
  • 2x 14 -pins vroulike kopstuk
  • 1x 6 -pins vroulike kopstuk
  • 1x 2 -pins vroulike kopstuk
  • 2x 22pF kapasitor (22)
  • 1x 0.1uF kapasitor (104)
  • 1x 10 kOhm weerstand
  • 2x 330ohm weerstand
  • 1x LED (enige kleur vir kragaanwyser - 3 mm vir PCB -ontwerp)
  • 1x LED (enige kleur vir digitale pen 13 vir blinkskets - 3 mm vir PCB -ontwerp)
  • 1x 16 MHz kristal
  • 1x skuifskakelaar
  • 1x kort drukknop

Gereedskap:

  • Arduino Uno
  • Soldeerbout
  • 6x MM springers
  • FTDI programmeerder
  • USB -kabel wat by u FTDI -programmeerder pas
  • Arduino IDE

Stap 2: Skematiese/uitleg

Skematiese/uitleg
Skematiese/uitleg
Skematiese/uitleg
Skematiese/uitleg

By hierdie stap is die arendlêers wat ek gebruik het, aangeheg. U staan dit vry om dit te verander en te verander soos u wil. Ek het die bord egter so ontwerp dat al die spore op die onderste laag is, sodat dit maklik is om op 'n PCB -meul (as u toegang daartoe het) met 'n eensydige bord te vervaardig. Dit is ook onderaan, sodat dit maklik is om die komponente saam te soldeer.

As u egter die PCB wil hê, moet u die CAM gebruik om die nodige gerber -lêers vir u gunsteling vervaardiger te kry. Ek hou van OSH Park, want u gee hulle net die bordlêer en hulle voer die nodige CAM's uit om die lêers te kry wat hulle benodig.

Stap 3: soldeer

Soldeer
Soldeer
Soldeer
Soldeer

Daar is drie maniere om hierdie bord te maak:

  • Bevolking van 'n PCB
  • Bevolking van 'n gemaalde bord
  • Bevolking van 'n protobord

Die bevolking van die PCB is redelik eenvoudig en behoort u geen probleme te veroorsaak nie, aangesien alles gemerk is.

Dit moet ook nie te moeilik wees om 'n gemaalde bord te bevolk nie, aangesien dit presies op dieselfde manier as die PCB gemodelleer is, behalwe dat u nie die merke het nie, dus volg die bordlêer in Eagle om seker te maak dat u dinge plaas op die regte plek (veral die polariteit van die LED's).

Laastens is die bevolking van 'n protobord die mees gedagte -intensiewe, maar dit is nie vreeslik moeilik nie. Ek het 'n paar foto's op hierdie stap wat my protoboard -weergawe toon en hoe ek alles pas. Let daarop dat die LM7805, die twee 4.7uF -kondensators en die skroefaansluitings nie op u bord is nie. Ek het gespeel met die idee dat dit ekstern kan werk, maar toe ek daaroor begin dink, het ek besluit dat dit uiteindelik 'n vermorsing van bordruimte is.

Stap 4: Laai terug

Laai laai
Laai laai

Die opstel van die laai -Arduino:

So hier het u u ander Arduino nodig. Gaan eers hier af en laai die lêers van hierdie man af. Op hierdie stadium is die lêers 'n paar jaar oud, maar dit werk steeds uitstekend. Sodra u dit afgelaai het, moet u optiLoader.ino oopmaak en u Arduino IDE moet u vra om dit in 'n gids te plaas. Doen dit en plaas dan die optiLoader.h -lêer in die gids met die.ino. Nou is u gereed om die skets op te laai na u laai -Arduino. Ek het 'n Arduino Uno gebruik, so ek weet dit werk daarmee, maar ek is seker dat dit ook met ander borde sal werk.

Sodra u die optiLoader.ino na u Arduino opgelaai het, is dit gereed om baie verskillende Arduino -skyfies te laai. Ek het dit net met die atmega328p gedoen, maar die kode is opgestel om die doel -MCU op te spoor en die korrekte selflaaiprogram te flits, wat baie goed is. Elke keer as u hierdie Arduino aan die Atmega Companion -bord koppel met 'n geïnstalleerde chip en dit aanskakel, sal dit outomaties opspoor dat die teiken 'n atmega328p is en die toepaslike selflaaiprogram outomaties flits. Geen terugspring nie, geen vreemde goed nie; net plug and play.

Om die selflaaiprogram aan die metgeselraad te koppel:

[Bootloader Arduino] [Atmega328p Companion Board]

  • D10 Herstel / pen 1
  • D11 MOSI / pen 17
  • D12 MISO / pen 18
  • D13 SCK / pen 19
  • 5V Vcc / pen 20 of 21
  • GND Gnd / pen 22

Die penne verwys na die bene van die IC self. As dit verwarrend is, kyk na die prentjie op die bord vanaf die skematiese/uitlegstap, soos die penne op die metgeselbord aangedui is.

Die opstartlaaier flikker:

Noudat u die Bootloader Arduino -opstelling met die optiLoader.ino -skets het en ook nou aan u metgeselbord gekoppel is, moet u seker maak dat die skakelaar van die metgeselbord op "laai" in plaas van "oplaai" is, en sluit dan u Arduino na 'n rekenaar. U moet die ligte op u Arduino en metgeselbord 'n paar keer sien flits. Na 'n paar sekondes moet albei donker word en nie meer flikker nie. Dit beteken waarskynlik dat u u atmega328p IC met die selflaaiprogram suksesvol geflits het. Om seker te maak dat alles goed verloop, koppel dit aan op u rekenaar en maak die Arduino IDE oop en dan die seriële monitor. Verander die baud -tempo na 19200. As dit dan nie outomaties herlaai nie, druk dan op die reset -knoppie op u Arduino. U moet 'n klomp teks sien wat beskryf wat die skrif doen. Aan die einde moet dit geen foutboodskappe bevat nie en moet u in kennis stel dat die proses voltooi is.

As u 'n fout kry, kyk dan na u skakelaar en maak seker dat u 'laai' is. As u nog steeds foute ondervind, moet u al u bedrading nagaan en seker maak dat dit korrek is.

Stap 5: Laai op

Laai tans op
Laai tans op

Dit is die maklike stap.

Ontkoppel alle drade van die vorige stap en draai die skakelaar van "bootload" na "upload". Koppel u FTDI -module aan. Ek hou van die Adafruit CP2104 en die SparkFun CH340G, veral omdat hulle relatief goedkoop is en dat die pinout ooreenstem met die FTDI -penne wat van die metgeselbord afkom.

Sodra u FTDI op u metgeselbord aangesluit het, kan u dit op u rekenaar aansluit. Laai van daar af 'n skets met 'n knipoog om seker te maak dat die selflaaiprogram korrek geflits is. Kies Arduino/Genuino Uno in die spyskaarte. Sodra die knipskets opgelaai is, moet u die knipper -LED soos verwag sien knip. As dit werk, is u gereed om u eie sketse na die IC te laai, net soos met enige ander Arduino.

Stap 6: Toekomstige werk

In die toekoms is ek van plan om dit van 'n Arduino Uno -skild te maak. Dit behoort nie lank te neem om dit te doen nie, en as mense wil, kan ek die Eagle -lêers daarvoor ook hier oplaai. Dit sou die staplaaiproses vergemaklik, aangesien u nie hoef te bekommer oor die verkeerde bedrading nie. Ek is ook oop vir ander verbeteringsvoorstelle, maar ek vermoed nie dat ek nog baie meer hiermee sal doen nie, aangesien dit net 'n noodsaaklike stap was om my toekomstige projekte voor te berei.

Laat weet my as u meer van my toekomstige projekte wil sien, en ek sal probeer om die gemeenskap op hoogte te hou.

Aanbeveel: