Go Down

Topic: Usb Serial converter per programmare Mini (Read 485 times) previous topic - next topic

bigjohnson

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: [Select]
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

bigjohnson

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!

Michele Menniti


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)?
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

bigjohnson

Eh eh eh, qui ci vuole un microscopio, e purtroppo io non c'è l'ho! ]:D

Michele Menniti

ma sei riuscito a misurare il segnale con un tester, ti basterebbe un saldatore a punta finissima ed una lente di ingrandimento :)
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

bigjohnson

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.

Michele Menniti

allora l'unico modo di usarlo è collegare solo alimentazione e tx/rx e poi gestire il pulsante di reset di Arduino manualmente
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

Go Up