- Komponentit, jotka tarvitaan ATtiny85: n ohjelmointiin USB: n kautta
- ATtiny85-mikrokontrolleri-IC - esittely
- Boot-loader vilkkuu ATtiny85: ssä Arduino Unon avulla
- Piirikaavio ATtiny-ohjelmoijalle
- Digispark-ohjainten asentaminen
- Arduino IDE: n asettaminen ATttiny85-ohjelman ohjelmointiin
ATtiny-perhe on sarja pienimpiä mikrokontrollereita AVR-markkinoilla. Nämä mikrokontrollerit pystyvät hyödyntämään monia Arduino-alustalla saatavissa olevista kirjastoista. ATtiny85-mikrokontrollerisiru on 8-nastainen, 8-bittinen, AVR-mikrokontrolleri. Sen pieni koko ja pieni virrankulutus tekevät siitä erinomaisen kannettavan projektin, jolla on pieni jalanjälki ja pieni virrankulutus. Mutta koodisi saaminen sirulle voi olla pieni haaste, koska sillä ei ole USB-liitäntää, kuten mikro-ohjainkortteja.
Edellisessä opetusohjelmassa ohjelmoimme ATtiny85: n käyttämällä Arduino Unoa. Mutta Attiny85: n yhdistäminen Arduinoon ja Arduinon käyttäminen Internet-palveluntarjoajana voi olla vaikeaa ja aikaa vievää. Joten tässä opetusohjelmassa aiomme rakentaa ATtiny85-ohjelmointikortin, jotta voimme suoraan liittää ja ohjelmoida sen kuten muutkin mikrokontrollerilevyt.
Komponentit, jotka tarvitaan ATtiny85: n ohjelmointiin USB: n kautta
- Arduino UNO (vain ensimmäistä kertaa käynnistyslatainta ladattaessa)
- ATtiny85 IC
- USB A-tyypin pistoke uros
- 3 vastusta (2 × 47Ω & 1 × 1kΩ)
- 3 diodia (2 × Zener-diodi ja 1 × IN5819-diodi)
- 8-nastainen IC-pohja
- Leipälauta
- Neulalangat
ATtiny85-mikrokontrolleri-IC - esittely
Atmelin ATtiny85 on korkean suorituskyvyn, pienitehoinen 8-bittinen mikrokontrolleri, joka perustuu edistyneeseen RISC-arkkitehtuuriin. Tässä mikrokontrollerisirussa on 8KB ISP-flash-muisti, 512B EEPROM, 512-tavuinen SRAM, 6 yleiskäyttöistä I / O-linjaa, 32 yleiskäyttöistä työrekisteriä, yksi 8-bittinen ajastin / laskuri vertailumoodeilla, yksi 8-bittinen nopea ajastin / laskuri, USI, sisäiset ja ulkoiset keskeytykset, 4-kanavainen 10-bittinen A / D-muunnin, ohjelmoitava vartija-ajastin sisäisellä oskillaattorilla, kolme ohjelmistolla valittavaa virransäästötilaa ja debugWIRE sirujen virheenkorjaukseen. ATtiny85 Pinout on annettu alla:
Suurimmalla osalla sirun I / O-nastoista on useampi kuin yksi toiminto. Jokaisen tapin ATtiny85-nastakuvaus on annettu alla olevassa taulukossa:
PIN-numero |
PIN-nimi |
Nastan kuvaus |
1 |
PB5 (PCINT5 / ADC0 / dW) |
PCINT5: Pin- vaihdon keskeytys 0, lähde5 NOLLAA: Nollaa tappi ADC0: ADC- tulokanava 0 dW: WIRE I / O : n virheenkorjaus |
2 |
PB3 (PCINT3 / XTAL1 / CLKI / ADC3) |
PCINT3: Nastanvaihdon keskeytys 0, lähde3 XTAL1: Kristalloskillaattorin tappi 1 CLKI: Ulkoinen kellotulo ADC3: ADC- tulokanava 3 |
3 |
PB4 (PCINT4 / XTAL2 / CLKO / OC1B / ADC2) |
PCINT4: Pin- vaihdon keskeytys 0, lähde 4 XTAL2: Kristalloskillaattorin tappi 2 CLKO: Järjestelmäkellon lähtö OC1B: Ajastin / laskuri1 Vertaa ottelun B lähtöä ADC2: ADC- tulokanava 2 |
4 |
GND |
Maadoitettu tappi |
5 |
PB0 (MOSI / DI / SDA / AIN0 / OC0A / AREF / PCINT0) |
MOSI: SPI-perustietojen lähtö / orjatietojen syöttö DI: USI-tietojen syöttö (kolmen johtimen tila) SDA: USI-tietojen syöttö (kahden johtimen tila) AIN0: Analoginen vertailija, positiivinen tulo OC0A: Ajastin / laskuri0 Vertaa Match A -lähtöä AREF: ulkoinen analoginen viite PCINT0: Pin- vaihdon keskeytys 0, lähde 0 |
6 |
PB1 (MISO / D0 / AIN1 / OC0B / OC1A / PCINT1) |
MISO: SPI-perustietojen syöttö / orjatietojen lähtö TEE: USI-datan ulostulo (kolmen johtimen tila) AIN1: Analoginen vertailija, negatiivinen tulo OC0B: Ajastin / laskuri0 Vertaa ottelun B lähtöä OC1A: Ajastin / laskuri1 Vertaa ottelun A lähtöä PCINT1: Pin- vaihdon keskeytys 0, lähde 1 |
7 |
PB2 (SCK / USCK / SCL / ADC1 / T0 / INT0 / PCINT2) |
SCK: Sarjakellotulo USCK: USI-kello (kolmen johtimen tila) SCL: USI-kello (kaksilankainen tila) ADC1: ADC- tulokanava 1 T0: Ajastin / laskuri0 Kellolähde INT0: Ulkoinen keskeytys 0 -tulo PCINT2: Pin- vaihdon keskeytys 0, lähde 2 |
8 |
VCC |
Syöttöjännitetappi |
Boot-loader vilkkuu ATtiny85: ssä Arduino Unon avulla
Sillä ohjelmoimalla ATtiny85 ilman Arduino, meidän pitäisi ensin ladata bootloader siihen käyttäen Arduino UNO aluksella, tämä on vain kerran, ja sen jälkeen tämä on tehty, emme tarvitse UNO hallituksen uudelleen. Boot-loader on erityinen ohjelma, joka toimii mikrokontrollerissa ja joka on ohjelmoitava. Yksi mukavimmista tavoista ladata ohjelmatiedot mikrokontrolleriin on käynnistyslatain. Boot-loader istuu MCU: lla ja suorittaa saapuvat ohjeet ja kirjoittaa sitten uudet ohjelmatiedot mikro-ohjaimen muistiin. Käynnistyslataimen vilkkuminen mikro-ohjaimella poistaa tarpeen käyttää erityistä ulkoista laitetta (ohjelmointikortit) mikro-ohjaimen ohjelmoimiseksi, ja voit ohjelmoida sen suoraan USB-liitännän kautta. Digispark ATtiny85aluksella toimii “micronucleus tiny85” -laturi, jonka alun perin on kirjoittanut Bluebie. Käynnistyslatain on koodi, joka on esiohjelmoitu Digisparkiin ja jonka avulla se voi toimia USB-laitteena, jotta Arduino IDE voi ohjelmoida sen. Aiomme myös salata saman digispark attiny85 -käynnistyslataimen ATtiny85: ssä.
Vaiheittainen opas flash-käynnistyslataimen lataamiseen ATtiny85: lle käyttämällä Arduino Unoa ja Arduino IDE: tä on annettu alla:
Vaihe 1: Arduino Unon määrittäminen Internet-palveluntarjoajaksi:
Koska ATtiny85 on vain mikrokontrolleri, se vaatii ISP: n (In-System Programming) ohjelmoinnin. Joten ATtiny85: n ohjelmoimiseksi meidän on ensin määritettävä Arduino Uno ISP: ksi toimimaan ATtiny85: n ohjelmoijana. Liitä Arduino Uno sitä varten kannettavaan tietokoneeseen ja avaa Arduino IDE. Sen jälkeen siirry kohtaan Tiedosto> Esimerkki> ArduinoISP ja lataa Arduino ISP -koodi.
Vaihe 2: Piirikaavio vilkkuvasta käynnistyslataajasta ATtiny85: ssä:
Täydellinen kaavio ATtiny85: n Flashing Boot-loader -laitteesta on annettu alla:
Arduinon Reset- ja GND-nastojen väliin on kytketty 10 µf: n kondensaattori. Täydelliset liitännät on esitetty alla olevassa taulukossa:
ATtiny85-nasta |
Arduino Uno Pin |
Vcc |
5 V |
GND |
GND |
Tappi 2 |
13 |
Tappi 1 |
12 |
Tappi 0 |
11 |
Nollaa |
10 |
Liitä nyt Arduino Uno kannettavaan tietokoneeseen ja avaa Arduino IDE. Etsi, mihin COM-porttiin Uno on kytketty. Minun tapauksessani se on COM5.
Tämän jälkeen lataa ATtiny85 Boot-loader -tiedostot annetusta linkistä. Avaa " Burn_AT85_bootloader.bat " ja muuta COM-portin numero "PCOM5" millä tahansa COM-portin numerolla, johon Uno on kytketty. Tallenna muutokset ennen poistumista.
Siirrä nyt muokatut " Burn_AT85_bootloader.bat " ja " ATtiny85.hex " -tiedostot Arduino IDE-juurikansioon (C: \ Program Files (x86) Arduino).
Sen jälkeen napsauta hiiren kakkospainikkeella " Burn_AT85_bootloader.bat " ja valitse "Suorita järjestelmänvalvojana". Käynnistyslataimen vilkkuminen kestää noin 5–6 sekuntia. Jos kaikki meni hyvin, sinun pitäisi saada tämä viesti "AVRdude valmis. Kiitos. Paina mitä tahansa näppäintä jatkaaksesi…".
Tämän avulla Boot-loader asennetaan onnistuneesti ATtiny85-sirulle. Nyt on aika liittää USB ATtiny85: n kanssa, jotta voimme ohjelmoida sen suoraan. Piirikaavio ATtiny85: n ohjelmoimiseksi USB: n kautta on annettu alla:
Piirikaavio ATtiny-ohjelmoijalle
Kaavio on otettu Digispark ATtiny85 -taulukosta, mutta kun pyrimme rakentamaan ATtiny85-ohjelmoijan, yhdistämme vain Male USB -liitännän ATtiny85: n kanssa.
R3 on vetovastus, joka on kytketty IC: n Vcc- ja PB3-nastojen väliin, kun taas Zener-diodit (D1-D2) lisätään täydelliseen USB-liitännän suojaukseen. Juotettuaan kaikki komponentit perf-levylle, se näyttää alla olevalta:
Digispark-ohjainten asentaminen
ATtiny85: n ohjelmoimiseksi USB: n avulla tietokoneellesi on oltava asennettuna Digispark-ajurit. Jos sinulla ei ole niitä, voit ladata sen käyttämällä yllä olevaa linkkiä. Pura sitten zip-tiedosto ja kaksoisnapsauta “ DPinst64.exe ” -sovellusta asentaaksesi ohjaimet.
Kun ohjaimet on asennettu onnistuneesti, kytke ATtiny85-kortti kannettavaan tietokoneeseen. Siirry nyt Windowsin Laitehallintaan ja ATtiny85-laite on luettelossa ”libusb-win32-laitteet” nimellä “Digispark Bootloader”. Jos et löydä libusb-win32-laitteita laitehallinnasta, siirry Näytä-kohtaan ja napsauta Näytä piilotetut laitteet.
Arduino IDE: n asettaminen ATttiny85-ohjelman ohjelmointiin
ATtiny85-kortin ohjelmoimiseksi Arduino IDE: llä meidän on ensin lisättävä Digispark-korttituki Arduino IDE: hen. Siitä varten siirry kohtaan Tiedosto> Asetukset ja lisää alla oleva linkki Muiden levyjen hallinnan URL-osoitteisiin ja napsauta OK.
Sen jälkeen siirry kohtaan Työkalut> Hallitus> Hallintojen hallinta ja etsi 'Digistump AVR' ja asenna uusin versio.
Asennuksen jälkeen nyt voit nähdä Board-valikossa uuden merkinnän nimeltä Digispark.
Siirry nyt tiedostoon> Esimerkit> Perustiedot ja avaa Blink-esimerkki.
Muuta tappi-numero LED_BUILTIN-arvosta 0: ksi.
Palaa nyt kohtaan Työkalut -> Lauta ja valitse ” Digispark (Oletus - 16 MHz) -taulu. Napsauta sitten latauspainiketta Arduino IDE: ssä.
Huomaa: Liitä ATtiny85-kortti tietokoneeseen vain, kun Arduino IDE näyttää viestin "Plugin device now".
Kun koodi on ladattu, ATtiny85: ään liitetyn LEDin pitäisi alkaa vilkkua.
Näin voit rakentaa oman ATtiny85 Arduino -ohjelmointikorttisi. Toimiva video samasta on annettu alla. Jos sinulla on kysyttävää, jätä ne kommenttiosioon. Jos sinulla on muita teknisiä kysymyksiä, voit myös aloittaa keskustelun foorumeillamme.