Novinky: Narodil sa nám druhý syn, takže už nemám čas vôbec :)
Sitepoint logo

Programujeme ATTINY pomocou Arduina

Na tento postup sa budem odkazovať častejšie, takže ho hodím na blog v rodnej reči, ako preklad a doplnenie pôvodného článku. Na úvod – stiahneme si definície nových mikroprocesorov. Rozbalíme do adresára \arduino\hardware\, aby to vyzeralo nasledovne.

1boards

Ak potom spustíme Arduino IDE, pribudnú nám položky v Boards.

1brds2A môžme pokračovať – otvoríme si program ArduinoISP a nahráme do Arduina (či už UNO alebo MiniPro). Teraz sa z neho stal ISP programátor (in-system programmer), ktorý slúži na nahratie programu do iného mikroprocesora cez SPI piny (MOSI, MISO, SCK), čo sa využíva napríklad na prvotné nahratie softvéru alebo jeho aktualizáciu v existujúcom zariadení, ktoré neobsahuje klasické „veľké“ Arduino, ale iba samotný mikroprocesor. Teraz zapojenie ATTINY85 (alebo iného):Tiny85_ISPAby nám to bolo jasnejšie, prečo práve takto – info z datasheetu a zvýraznené SPI piny…tiny85-pinout-spi

Na breadboarde:IMG_20141123_205432Vyberieme si teda Board (Internal 8 MHz) a v menu Tools spustíme Burn bootloader – reálne to zmení len „fuses“ na čipe (nastaví prevádzkové parametre) – viac info o „fuses“ a tu. No a konečne môžme otvoriť/napísať program, ktorý má byť nahraný do tohto drobca. Na úvod nám stačí Blink – blikanie LEDkou. Necháme nastavený COM port kde máme ArduinoISP a zvolíme správny Board, osobne používam len interný oscilátor a nie externý kryštál – a dáme Upload.


K dispozícii máme 8 vývodov, 2 sú napájanie a jeden je štandartne RESET, ale aj ten sa dá v prípade potreby využiť. Z toho jednoduchou matematikou vychádza 5 pinov (2, 3, 5, 6 a 7 vývod), ich využitie viď na obrázku vyššie, alebo tu:

  1. RESET, digitálny vstup/výstup D5
  2. digitálny vstup/výstup D3, analógový vstup A3
  3. digitálny vstup/výstup D4, analógový vstup A2
  4. GND, zem
  5. D0, SPI-MOSI, I2C-SDA
  6. D1, SPI-MISO
  7. D2, SPI-SCK, I2C-SCL
  8. VCC, napájanie (max. 5.5V)

No a čo za príkazy by chceli fungovať?

Knižnice treba hľadať také, ktoré sú prispôsobené pre ATTINY, treba brať do úvahy aj veľkosť pamäte SRAM (iba 512 bajtov oproti 2 kB čo má MEGA 328) a skúšať, skúšať. Rozbehal som I2C zbernicu (OLED displej, PCF8574 port expander, externá EEPROM…), IR príjmač, sériový port… Viac nabudúce. Veľa štastia pri programovaní 🙂

BONUS:ATtiny45-85ATtiny44-84

Komentáre (3)

  1. tomXX (Autor článku)

    Doplnil som info o „fuses“ a poznámku, že treba použiť Burn bootloader aby sa zmenili nastavenia mikroprocesoru.

  2. Pingback: OLED teplomer s DS18B20 ovládaný ATTINY85 | blog.sitepoint.sk

  3. Pingback: TinySafeBoot – ako efektívne programovať ATTINY

Napísať komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *