Pages: [1]   Go Down
Author Topic: Usb Serial converter per programmare Mini  (Read 419 times)
0 Members and 1 Guest are viewing this topic.
Milan, Italy
Offline Offline
Sr. Member
****
Karma: 0
Posts: 332
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao,
ho questo adattatore usb seriale che pare essere compatibile con Arduino.
Tra i pin dell'uscita c'è n'è uno che si chiama rst e dovrebbe essere connesso al reset dell'arduino.
Ho letto la documentazione e per resettare l'Arduino viene usata la linea rts della seriale tramite un condensatore.
Ho collegato il tutto e non funziona niente.
Ho provato a collegare il tester tra il pin rst dell'adattatore e la massa, facendo girare questo programma

Code:
import gnu.io.*;
public class SerialTest {
   public static void main(String[] args) {
       try {
           //String portName = "/dev/cu.SLAB_USBtoUART";
           String portName = "/dev/tty.SLAB_USBtoUART";
           //String portName = "/dev/tty.usbserial";
           //String portName = "COM6";
           System.out.println(portName);
           CommPortIdentifier portid = CommPortIdentifier.getPortIdentifier(portName);
           SerialPort serialPort = (SerialPort)portid.open("Serialport DTR/RTS test", 1000);
           
           serialPort.setSerialPortParams(9600,SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE);
           serialPort.setFlowControlMode(SerialPort.FLOWCONTROL_NONE);
           //serialPort.disableReceiveTimeout();
           for (int i=0 ; i<5 ; i++) {
               System.out.println("ON");
               serialPort.setDTR(true);
               serialPort.setRTS(true);
               Thread.sleep(1000);
               System.out.println("OFF");
               serialPort.setDTR(false);
               serialPort.setRTS(false);
               Thread.sleep(1000);
           }
       } catch (Exception e) {
           e.printStackTrace();
           System.exit(1);
       }
       System.exit(0);
   }
}

in java che alza e abbassa per un secondo i pin rts e cts, ma la tensione sul pin non cambia, rimane sempre 5v, ho provato anche con una resstenza di pull down da 1K ma niente, di adattatori ne ho due e li ho provati entrambi.
Il programma funziona perché usandolo su un adattatore usb rs232 lo stato dei pin rts e dtr cambia da -6 a +6v.
La domanda: è qualcuno ha già usato sti adattatori e magari ha capito cosa c'è che non va (a parte ovviamente che sono cinesi).
La  trasmissione dati seriale sui pin tx e rx funziona bene.
Grazie.

Alberto
Logged


Milan, Italy
Offline Offline
Sr. Member
****
Karma: 0
Posts: 332
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Mi rispondo da solo, dopo la corroborante lettura del datasheet, il pin reset non è collegato al rts per cui non ci si può programmare Arduino!
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 501
Posts: 12307
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Mi rispondo da solo, dopo la corroborante lettura del datasheet, il pin reset non è collegato al rts per cui non ci si può programmare Arduino!
e non riesci a portarti fuori il segnare RTS collegandolo al posto del RESET (che poi è il RESET del CP2102)?
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Milan, Italy
Offline Offline
Sr. Member
****
Karma: 0
Posts: 332
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Eh eh eh, qui ci vuole un microscopio, e purtroppo io non c'è l'ho! smiley-twist
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 501
Posts: 12307
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

ma sei riuscito a misurare il segnale con un tester, ti basterebbe un saldatore a punta finissima ed una lente di ingrandimento smiley
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Milan, Italy
Offline Offline
Sr. Member
****
Karma: 0
Posts: 332
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

E no, purtroppo per verificare il programma ho usato un altro adattatore, che ha il connettore seriale a 9 pin con tutti i segnali collegati.
Il contenitore del chip è un QFN-28.
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 501
Posts: 12307
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

allora l'unico modo di usarlo è collegare solo alimentazione e tx/rx e poi gestire il pulsante di reset di Arduino manualmente
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Pages: [1]   Go Up
Jump to: