Salve a tutti. Il mio obiettivo è far funzionare il seguente tutorial http://arduino.cc/en/Tutorial/ArduinoSoftwareRS232 che collega l'arduino uno alla seriale di un pc con l'utilizzo di un max232.
Ho allegato lo schema elettrico su cui mi sono basato per fare i collegamenti e due foto del circuito sulla breadboard.
Specifico che ho usato il max232A e che quindi ho usato dei condensatori da 0,1uF come scritto nel relativo datasheet. Inoltre alimento tutto il circuito con un alimentatore esterno settato sui 5V.
Ho caricato lo sketch e provato a vedere se funzionava usando HyperTerminal e settandolo come specificato nel tutorial a 9600baud, 8 bit di dati, nessun bit di parità, 1 bit di stop e nessun controllo di flusso. Tuttavia non funziona, non stampa a video 'hi' e quindi neanche converte i caratteri da minuscoli a maiuscoli.
Ho provato a consultare altre pagine sull'argomento ma non sono riuscito a risolvere, vorrei sapere se avete qualche indizio sul motivo per cui non mi funziona.
kopa:
Specifico che ho usato il max232A e che quindi ho usato dei condensatori da 0,1uF come scritto nel relativo datasheet.
Scusa ... in che punto esattamente di QUESTO datasheet lo hai letto ???
Guglielmo
io prima di tutto proverei a invertire Rx e Tx ( in pratica i pin 7 e 8 del Max )
vedo che al DB9 c'e' collegato un cavetto e siccome puo' essere che detto cavo inverta..... proverei |
Poi ci sarebbe il discorso handshake sul PC, ma questo si vede in seguito
@guglielmo, nel datasheet della Maxim sono specificati quei valori
http://datasheets.maximintegrated.com/en/ds/MAX220-MAX249.pdf
Brunello:
@guglielmo, nel datasheet della Maxim sono specificati quei valori
http://datasheets.maximintegrated.com/en/ds/MAX220-MAX249.pdf
Ah .. ok .. avevo preso il datasheet di Texas Instruments che riporta valori diversi (1.0 uF) ...
Guglielmo
Edit: In realtà anche il maxim MAX232 usa i condensatori da 1 uF ... il fatto che il suo NON è un MAX232, ma è invece un MAX232A (mi sono andato a spulciare la foto) che è diverso e usa i condensatori da 0.1 uF ]
Innanzitutto grazie per le risposte
Seconda cosa ho risolto il problema ora spiego.
Pensavo erroneamente ci fosse un problema di hardware visto che lo sketch mi limitavo a copiarlo uguale. Invece il problema è proprio nello sketch. Credo che quel tutorial si basi sul funzionamento della vecchia libreria softwareSerial che leggevo in giro dava qualche problema. Ho quindi riscritto il programma usando la libreria newSoftwareSerial e funziona perfettamente.
Ora però mi domando cosa ci sia di sbagliato in quello sketch. Analizzandolo nel dettaglio l'unica cosa che mi viene in mente che potrebbe risultare sballata sono i delay. Cosa ne pensate?