Totta kai lukemattomat USB-liitännällä varustetut mikrokontrollerikehitysalustat ovat päässeet Electroschematicsin projekteihin ja opetusohjelmiin. Vaikka nykyään on todella helppoa rakentaa omia USB-liitännällä varustettuja kehityskortteja, on paljon helpompaa ostaa tällaisia kortteja valmiina, integroiduilla ajureilla varustettuna. Tässä artikkelissa ei käsitellä mikrokontrollerikehityslevyjä, vaan otetaan askeleita esitellä ATtiny85 USB Mini Development Board from Digispark ™!
Digisparkissa toimii ”micronucleus tiny85” bootloader versio 1.02, avoimen lähdekoodin projekti: alun perin kirjoittanut Bluebie: . Bootloader on koodi, joka on esiohjelmoitu Digisparkkiin ja mahdollistaa sen toimimisen USB-laitteena, jotta sitä voidaan ohjelmoida Arduino IDE:llä (Digispark käyttää Arduino IDE:tä 1.6.5+).
Seuraavat tuotteet: Digispark/Digispark-yhteensopivan ATtiny85-USB-minikehitysalustan ominaisuudet
ATtiny85-pohjainen minikehitysalusta on samankaltainen kuin Arduino, mutta halvempi ja pienempi (tietysti hieman tehottomampi). Koko joukko suojakilpiä sen toimintojen laajentamiseen ja mahdollisuus käyttää tuttua Arduino IDE:tä, tämä kortti on loistava tapa hypätä mikrokontrollerielektroniikkaan.
- Tuki Arduino IDE:lle 1.0+ (OSX/Win/Linux)
- Virransyöttö USB:n tai ulkoisen lähteen kautta
- Ohjelmalla oleva 5V-säädin
- Built-in USB
- 6 I/O Pins
- 8k Flash-muisti (noin 6k bootloaderin jälkeen)
- I2C ja SPI (vis USI)
- PWM 3 pinnillä (enemmän mahdollista Software PWM:llä)
- ADC 4 pinnillä
- Virta-LED ja Test/Status-LED
Tämä piirilevy toimitetaan yleensä valmiiksi koottuna pre-valmiiksi poltettuna bootloaderina. Koska käynnistyslataaja on jo poltettu, piirilevyn LED alkaa vilkkua virran kytkemisen yhteydessä, mutta sinun on asennettava asiaankuuluva ajuri ennen ensimmäistä ohjelmointia. Lisätietoja on saatavilla täältä: http://digistump.com/wiki/digispark/tutorials/connecting
(Digispark-yhteensopiva ATtiny85 USB Mini -kehityslevy)
Circuit Description of the Digispark/Digispark-…Compatible ATtiny85 USB Mini Development Board
(Circuit Diagram of the ATtiny85 USB Mini Development Board)
Kortin pääliitäntä on USB MICRO-liitin. Piirilevyyn voidaan syöttää virtaa tästä USB-liitännästä tai sopivasta ulkoisesta lähteestä 3-napaisen liittimen J2 (5V/GND/VIN) kautta. Piirilevyn 5 voltin jännitteensäädin on rakennettu U1:n (78L05) ympärille. D1 on virta-LED ja D2 on testi-/tilailmaisin. Diodit D3-D5 on lisätty USB-liitännän täydellistä suojausta varten. D3 on yleinen Schottky-diodi, ja loput (D4-D5) ovat 36 V:n zener-diodeja. Lopuksi IC1 (ATtiny85) on minikehitysalustan pääaivo. IC1:n (P0-P5) yhteensä (6) I/O-nastaa on käytettävissä 6-napaisen liittimen J1 kautta. Liittimen J1 nastanjako on esitetty alla:
* Huomaa, että näistä kuudesta liitännästä kaksi (4&5) on varattu USB:lle vain, jos ohjelmasi kommunikoi aktiivisesti USB:n kautta. Muuten voit käyttää kaikkia kuutta, vaikka ohjelmoisitkin USB:n kautta!
ATtiny 85 on vähävirtainen 8-bittinen CMOS-mikrokontrolleri, joka perustuu AVR:n parannettuun RISC-arkkitehtuuriin. Suorittamalla tehokkaita käskyjä yhdessä kellosyklissä ATtiny 85 saavuttaa läpimenotehoja, jotka lähestyvät 1 MIPS:ää MHz:llä, jolloin järjestelmäsuunnittelija voi optimoida virrankulutuksen suhteessa prosessointinopeuteen. Attiny 85:ssä on 8 000 tavua järjestelmään ohjelmoitavaa Flash-muistia, 128/256/512 tavua EEPROM-muistia, 256 tavua SRAM-muistia, 6 yleiskäyttöistä I/O-linjaa, 32 yleiskäyttöistä työrekisteriä, yksi 8-bittinen ajastin/laskuri, jossa on vertailutiloja, yksi 8-bittinen nopea ajastin/laskuri, universaali sarjaliitäntä, sisäiset ja ulkoiset keskeytykset, 4-kanavainen 10-bittinen ADC, ohjelmoitava vahtikoiran ajastin, jossa on sisäänrakennettu oskillaattori, ja kolme ohjelmistolla valittavissa olevaa virransäästötilaa. Portti B on 6-bittinen kaksisuuntainen I/O-portti, jossa on sisäiset pull-up-vastukset (valittavissa kullekin bitille). Portti B:n lähtöpuskureilla on symmetriset ajo-ominaisuudet, joissa on sekä korkea nielu- että lähdekapasiteetti. Portti B:n nastat, jotka on vedetty ulkoisesti matalaksi, lähettävät tuloina virtaa, jos pull-up-vastukset aktivoidaan. Portin B nastat ovat kolmitoimisia, kun nollaustila aktivoituu, vaikka kello ei olisi käynnissä. Lisäksi Port B palvelee myös ATtiny 85:n eri erikoisominaisuuksia. Reset-pinniä (nasta 1) voidaan käyttää myös (heikkona) I/O-pinninä.
ATtiny USB Boot Loaderilla: Tips & Tricks for DIYers
- DIYers jotka rakentavat samanlaisen kehitysalustan ja etsivät sovelluksia, jotka voidaan lisätä USB:n kautta ilman ulkoista ohjelmointilaitetta, V-USB tuntui ilmeiseltä valinnalta USB:n lisäämiseksi ATtiny85:een. ATtiny85:n bootloaderin luomiseen liittyy kuitenkin joitakin haasteita. Tutustu tähän artikkeliin: http://www.embedded-creations.com/projects/attiny85-usb-bootloader-overview
- V-USB on Objective Development Software GmbH:n projekti, jonka tarkoituksena on tuoda perus USB-tuki mihin tahansa mikro-ohjaimeen. Ja mikä parasta: se on opensource. Koodi on täysin saatavilla GPL:n alaisuudessa. Se on erittäin hyvin dokumentoitu projekti ja sillä on hyvä foorumi. Lyhyesti sanottuna V-USB on pelkkä matalanopeuksisen USB-laitteen ohjelmistototeutus Atmelin AVR®-mikrokontrollereille, mikä mahdollistaa USB-laitteiston rakentamisen melkein minkä tahansa AVR®-mikrokontrollerin kanssa, eikä siihen tarvita mitään lisäpiiriä. Lue lisää: https://www.obdev.at/products/vusb/index-de.html
- Täältä löydät hyvin kirjoitetun aloittelijan oppaan ATtinyn laajennettuun ohjelmointiin Digisparkilla: https://digistump.com/wiki/digispark/tutorials/programming