miercuri, 31 iulie 2013

... mini board ATtiny 2313

De fiecare datã când am vrut sã  probez montaje cu ATtiny 2313 , trebuia sã  refac pe placa de încercãri toate legãturile – inclusiv cele de almentare.
Mi s-a pãrut incomod şi mi-am propus sã îmi construiesc un mini board pentru  ATtiny2313, similar celor de la ARDUINO.
Nota scrisã cu roşu , este modificarea pe care a trebuit sã o fac la probele de upload. Pentru  upload sketch-uri, trebuie desfãcutã legãtura dintre pin-ul 1 (Reset) şi rezistenţa de 10 K de pe miniboard. 
Conectorii p1; p2  şi p3 i-am fãcut din socluri vechi pentru circuite integrate; am mai adãugat pe  placã  alimenterea stabilizatã  la 5v  cu  circuitul 7805 şi pinii pentru cuplare la o sursã de 7-9v.
Am preluat schema electronicã de acolo, am fãcut montajul exact ca la ei, şi  l-am probat cu “sketch-ul  Blink “ din Arduino 1.0  - >  Examples - > Basics pe care l-am încãrcat cu  ajutorul montajului  din articolul precedent,  cuplat pe ArduinoUno.
Schema electronicã a funcţionat perfect .
Am reuşit sã pun etichete pentru fiecare conector,  ca sã nu mai ... numãr locurile unde trebuie puse firele !    









Dar …. am constatat  cã este tare incomod sã tot scot ATtiny 2313  din mini board, sã-l pun în placa de programare,  sã încarc programul şi apoi din nou ...   pentru eventuale corecţii în program!
 Am refãcut shield-ul de programare sub forma unui cablu cu douã conectoare, cu care sã cuplez mini board-ul Attiny 2313  la ArduinoUno . 



 În varianta fãcutã de mine, am preluat şi Vcc de pe Arduino Uno pentru programare. Led-ul roşu se aprinde la cuplarea la ArduinoUno iar cel verde semnalizeazã la upload .




vineri, 5 iulie 2013

Am programat microprocesorul ATTINY 2313

 De ce ?
  -este un microprocesor ieftin – costa doar 11 Ron la www.robofun.ro
  -pânã acum , am lucrat doar cu Aduino Uno, şi pentru fiecare aplicaţie nouã trebuie sã renunţ la aplicaţia veche!
  -intenţionez sã realizez şi aplicaţii care sã rãmânã fãcute, şi devine important sã gãsesc solutii optime preţ / functionalitate ;
Am ales pentru început , varianta programãrii lui ATTINY 2313 utilizând breadboardul ArduinoUno;
Am plecat de la exemplul ”ATtiny2313-Programming-Shield” de pe site-ul http://www.instructables.com
Am construit montajul pentru programare pe o placa de probã , dupã schema:

Am utilizat
 -12 pini recuperaţi de la placa unui CD-R uzat , pe care i-am montat pe placa de probã
 -  1 soclu cu 20 de pini,
 -  2 LED-uri
 -  1 condensator electrolitic de 10 Mf
 -  sârma de cupru pentru conexiuni
Pinii de pe marginea shield-ului corespund cu conectorii corespunzãtori de pe placa ArduinoUno şi permit conectarea corectã şi rapidã .
  Mai jos sunt pozele faţã/spate pentru shield-ul construit , şi pozitionarea sa pe ArduinoUno:

  
Procesorul 2313 este un cip cu 20 de pini , din care 17 pini I / O.
   -nu are un ADC (analog / digital convertor).
   - poate fi configurat sã ruleze la 1 MHz și 8 MHz fără cristal ( rezonator extern).
Pentru programarea lui  ATtiny2313 am parcurs urmãtoarelre etape :
1.      Instalarea fişierelor pentru ATtiny în programul Arduino
2.      Setarea lui ArduinoUno ca ISP
3.      Conectarea shield-ului
4.      Incãrcarea codului 
 1.Instalarea fişierelor pentru ATtiny în programul Arduino
 Platforma Arduino 1.0 accepta procesoare Atmel Atmega. Pentru ca sã poatã lucra cu procesoare mai mici , este necesar sã fie complectatã cu setul open-source Arduino-Tiny,   respectiv pentru procesoarele ATtiny84;  ATtiny84; ATtiny2313 (4313) Se va face download de la: 
 într-un director - de exemplu   C:\Projects\Arduino\hardware\   a pachetului Arduino-Tiny  şi se dezarhiveazã  în acest director. Instalarea pachetului Arduino-Tiny în softul Arduino  IDE , este detaliatã în fişiereul README  din arhvã.
Dupã ce se parcurg toti paşii, se deschide Arduino IDE şi  meniul Tools -> Board deschide lista cu microprocesoare, de  unde se va putea selecta  ATtiny 2313 
 2. Setarea lui ArduinoUno ca ISP
-se conecteazã ArduinoUno la PC, fãrã  shield-ul  ATTINY 2313;
-se deschide programul Ardunio IDE , se deschide  din Files -> Examples ->ArduinoISP  şi
-se uploadeazã  pe ArduinoUno;
3. Conectarea shield-ului
- se scoate cablul USB, se conecteazã shield-ul ATtiny cu procesorul montat la Arduino Uno;
-se reconecteaza cablul USB    
-dupã upload, în meniul  Tools -> Board se selecteazã ATTINY 2313@1Mhz
- în meniul Tools -> Programmer se selecteazã opţiunea Arduino as ISP
4. Incãrcarea codului 
Pentru verificarea functionãrii , am deschis schiţa “blink” din exemaples-> Basic-> Blink şi am încãrcat –o în microprocesor ; apoi am scos shieldul , am montat  ATtiny2313  pe placa de probe.Am cuplat un brick cu led  LED la pinul 13 (fizic pinul 16) al lui  ATtiny2313 şi GND; am cuplat alimentarea la sursã ( la mine , GND si +5v de la ArduinoUno) şi .... funcţioneazã !