miercuri, 20 noiembrie 2013

Arduino de casa cu interfata USB CP2102

   Fata de articolul similar din iunie, numit Arduino de casa cu interfata USB PL2303HX, in care am prezentat un modul care nu are pinul DTR/RESET si la incarcarea unui sketch in Arduino trebuia sa tin apasat butonul RESET de pe placa, acum am sa prezint un modul care se bazeaza pe integratul CP2102 fabricat de Silicon Labs si are disponibil si pinul DTR/RST.
   Modulul se numeste STE13-007 si e fabricat de o firma BAITE... din pacate nu am gasit poza exacta a acestuia, asa ca am facut unele cu telefonul (decat deloc mai bine ceva...)
   Ulterior, am facut si cu un aparat foto serios:
   Dupa instalarea driver-ului disponibil pe pagina fabricantului, cand se conecteaza interfata la calculator vor gasi pe portul 15 (in cazul meu) Silicon Labs CP210x USB to UART Bridge:
  Modul de conectare la o placa Arduino de casa (sau una fara interfata USB) foarte simplu:
   Ca sa nu se interpreteze gresit, eu am avut interfata USB cu integratul PL2303HX fara pinul de reset (RST/DTR), dar pe piata exista si cu... iar corespondenta din tabelul de mai sus este valabila pentru toate interfetele USB...
  Am facut si un scurt filmulet numit Arduino de casa cu interfata USB pe baza integratului CP2102
   Sketch-ul modificat folosit in filmulet este:
/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.
  This example code is in the public domain. 

   sketch modified by niq_ro for testing a home-made Arduino
 for more details see http://nicuflorica.blogspot.com/
   Craiova, 11.2013
*/
 
 
// Pin 13 has an LED connected on most Arduino boards.
// give it a name:
int led = 13;

// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);     
}

// the loop routine runs over and over again forever:
void loop() {
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(100);               // wait for 100ms
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(100);               // wait for 100ms
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(100);               // wait for 100ms
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(100);               // wait for 100ms
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(100);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);
}
  

3 comentarii:

  1. Buna!
    Imi explicati va rog, cum ati programat microcontrolerul folosind doar cp2102?
    e-mail: borosferencz@yahoo.com

    RăspundețiȘtergere
    Răspunsuri
    1. microcontrolerul are bootloader de Arduino pe el si se incarca ca orice Arduino...
      sa scrieti un bootloader trebuei s afolositi ori in programator de AVR-uri ori un Arduino, cum am prezentat eu pe blog

      Ștergere
    2. partea de scriere bootloader intr-un ATmega gol este prezentata la https://nicuflorica.blogspot.ro/2013/02/placuta-pentru-programare-bootloader.html
      daca vreti sa scrieti cu programator: https://learn.sparkfun.com/tutorials/installing-an-arduino-bootloader
      http://openelectronicsproject.blogspot.ro/2015/08/burning-bootloader-on-atmega328-using.html
      http://tutorial.cytron.com.my/2011/12/19/burning-arduino-bootloader-with-avr-usbasp/

      Ștergere