miercuri, 14 ianuarie 2015

Programarea unui microcontroler ATtiny85 cu sketch Arduino

   Pentru proiecte simple se pot folosi microcontrolere mai slabute, cum este ATtiny85 sau ATtiny84.
   Regasind articolul Using an ATtiny as an Arduino de pe site-ul tronixstuff, am zis ca trebuie sa incerc si eu sa programez un ATTiny85 (este un "piciuman" in capsula DIL8), dar folosind o clona Arduino Nano, care era libera, celelate tip Uno fiind in diverse montaje in teste.
   Avand Arduino Nano am folosit schema urmatoare (nu am utilizat comutator in teste, dar asa ar fi comod):
   Trebuie descarcata fisierul de la https://github.com/damellis/attiny/archive/master.zip
pentru a aparea si lista cu ATtiny-urile in programul Arduino IDE  (Am o copie la https://github.com/tehniq3/ATTiny4x_8x-as-Arduino).
   In mod obisnuit, in lista placilor gasim ceva de genul:
   Dupa ce am descarcat acel fisier, il dezarhivam si copiem subdirectorul numit attiny in locul unde este instalata versiunea de Arduino IDE in subdirectorul hardware:
   Daca intram in subdirectorul attiny vom gasi:
si daca intram si in variants:
... revenim la partea utila.
   Dupa ce copiem acel folder attiny, inchidem si redeschidem programul Arduino IDE, vom gasi urmatoarele placi Arduino:
   Incarcam sketch-ul ArduinoISP din exemple:
   Trecem la placa Arduino pe care o avem:
   Verificam ca programatorul sa fie cel obisnuit:
   Realizam schema prezentata mai sus:
   Incarcam sketch-ul ArduinoISP in memoria placii Arduino Nano, apoi deconectam cablul USB si conectam condensatorul de 10uF intre RESET-ul si GND-ul placii Arduino Nano:
   Incarcam in programul Arduino IDE sketch-ul care se va incarca in ATTiny (eu am folosit sketch-ul al doilea din articolul menttionat la inceput):
   Schimbam placa de dezvoltare:
   Schimbam si programatorul:
   Dam comanda de incarcare si asteptam sa apara pe ecran un mesaj de genul:
care ne indica faptul ca acum avem un microcontroler ATtiny85 incarcat cu programul nostru...
   Deconectam cablul USB de la calculator si desfacem legaturile dintre placa Arduino Micro si ATiny85, pastrand, cel putin pentru moment, doar legaturile de la +5V si masa GND), apoi facem legaturile ca in schema:
   Alimentam si obtinem un joc de lumini, conform programului idn sketch:
   Pentru a fi mai usor de inteles acesti pasi, inclusiv rezultatul, am facut filmuletul numit incarcare sketch intr-un ATtiny85 folosind un Arduino Nano
   PS: In articolul ATtiny85 vs ATmega328 gasiti comparatia intre ATtiny85 si ATmega328 (cel folosit in Arduino Uno, de exemplu).
   PS2: In articolul Programmare un Attiny85 con Arduino se gaseste modul de scriere al unui sketch in limba italiana, aratand mai explicit si corespondenta pinilor:

15.01.2015
   Cand am vrut sa scriu un sketch mai complex, am constatat ca tot in articolul Using an ATtiny as an Arduino sunt mai bine definiti pinii, asa ca am facut si eu un rezumat, care ma ajuta mult la scrierea sketch-urilor:
   Am realizat un temporizator reglabil cu reset (comanda din acelasi buton) folosind un ATTiny85 programat cu un sketch Arduino si am facut filmuletul temporizator cu reset (3)

16.01.2014
   Un articol similar, SHRINKING ARDUINO PROJECTS USING AN ATTINY85, descrie pinii, mai detaliat:
iar in articolul ATtiny Adventure -- I2C on ATtiny 84/85 apar si colorat si clar descrierile pinilor:

   Nu trebuie uitat articolul Programming an ATtiny w/ Arduino 1.0
21.01.2015
   Am mai cautat diverse informatii si proiecte si am gasit o prezentare frumoasa a pinilor la pighixxx.com, din care rezulta ca pinul fizic 1 al capsulei lui ATtiny85 se poate folosi in sketch-uri ca pin digital D5, respectiv intrare analogica A0:
26.01.2015
   In articolul de la http://www.kobakant.at/DIY/?p=3742 este o reprezentare frumoasa a schemei de prograre si se prezinta intuitiv modul de setare a microcontrolerului la 8MHz:
09.05.2017
   Pentru versiuni mai noi de Arduino IDE (1.6.x) trebuie introdiusa adresa la placi suplimentare: https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json !

4 comentarii:

  1. se poate descarca un program din ATtiny

    RăspundețiȘtergere
    Răspunsuri
    1. nu, nu se poate din chip inapoi in pc.
      programul nu ajunge in acel chip asa cum il scrii tu.
      codul scris de tine este compilat si optimizat si nu se pastreaza nicaieri in forma initiala pentru a putea fi recuperat

      Ștergere
    2. eu ma gandisem la hex, nu la sketch (prograsm)...

      Ștergere