ultimo aggiornamento 2 dicembre 2012


 

Il software e il firmware

Per far comunicare i due radiomodem abbiamo bisogno dei programmi di gestione, uno da installare nel PC e l’altro nel processore.
Per fare questo si è reso necessario realizzare un’apposita interfaccia grafica che è stata scritta in Basic in particolare in Just Basic, mentre per i processori si sono utilizzati i compilatori forniti dai rispettivi costruttori e cioè il Basic Stamp Editor per il BS2 SX o il Cubloc Studio per il CB220.
Tutti questi programmi potranno essere scaricati gratuitamente dai vari siti.

IL COMPILATORE Just Basic

Il compilatore scelto per la realizzazione del programma di gestione lato PC è "Just Basic", un ambiente di sviluppo semplice, pratico e soprattutto gratuito, I’ideale per principianti ed esperti, dalle caratteristiche notevoli.

Ecco, alcune particolarità:

homotix

 

Schermata del compilatore Just BASIC.

IL JUST BASIC E LA COMUNICAZIONE SERIALE

II Just Basic, mette a disposizione un metodo semplice e sicuro per gestire la comunicazione seriale.
II cuore del procedimento sta nell'istruzione OPEN "COMn.", la quale instaura ed apre una comunicazione seriale per la lettura e la scrittura, quindi stabilisce un flusso in entrata ed uscita. La gestione completa della seriale utilizza le API di Windows per la comunicazione.  La sintassi base del comando è la seguente:

 OPEN “COMn:baud,parity,data,stop" for random as #handle

 Dove:

• "n" rappresenta il numero logico della porta seriale (1, 2, 3, ecc);
• "baud" rappresenta la velocità di comunicazione (bps)
• "parity" prevede invece i seguenti possibili valori:

N         No parity
E         Even parity
0          Odd parity
S         Space parity
M         Mark parity

Inoltre I'utente può aggiungere alcuni parametri opzionali, molto utili, che consentono di controllare al meglio le transizioni dei dati, anche in presenza di eventuali timeout. Essi sono i seguenti:

Una volta che la comunicazione è stabilita, per scrivere sulla porta seriale è sufficiente inoltrare il comando:

print #seriale, "STRINGA"

 Per chiudere infine la comunicazione è opportuno utilizzare I'apposito comando, come segue:

close #seriale

 

La comunicazione seriale del Basic Stamp II SX

Nel Basic della Parallax esistono principalmente due comandi per la comunicazione seriale che utilizzeremo per la comunicazione con il radiomodem, queste sono:

 SERIN

Permette l’ingresso dei dati seriali , sono possibili Baud rate da 300 a 50,000 (con controllo di flusso da 0 a 19,200). I dati ricevuti devono essere N81 (nessuna parità, 8 bit di dati, 1 bit di stop) oppure E71 (parità pari, 7 bit di dati, 1 bit di stop).  La sua sintassi è:

 SERIN rpin{\fpin}, baudmode, {plabel,} {timeout, tlabel,}[inputdata]

 Dove:

SEROUT

Invia dati serialmente con bit opzionali di cadenza e controllo di flusso, la sua sintassi è:

 SEROUT tpin{\fpin}, baudmode, {pace,} {timeout, tlabel,} [outputdata]

 Dove:

Qualsiasi porta delle 16 porte del Basic Stamp 2 SX può essere utilizzata come porta seriale a livello TTL con livelli di tensione pari a 0-5V.

La comunicazione seriale del CB220

Anche il Basic del Cubloc dispone di un'ottima implementazione della gestione della comunicazione seriale.  Tra le varie istruzioni che si occupano della gestione della seriale quelle necessarie sono:

- Opencom;

- Getstr;

- Putstr;

Opencom

Il comando permette di stabilire la comunicazione con la porta seriale. Occorre usarlo prima di invocare qualsiasi altro comando per la gestione della porta. La sintassi e la seguente:

 Opencom channel, baudrate, protocol, recvsize, sendsize

 Dove:

Il CB220 possiede due porte dedicate alla comunicazione RS232. Per il canale 0 (download) esse fanno capo ai pin 1 e 2. Per il canale 1 la seriale è a livello TTL con livelli di tensione pari a 0-5V, e fa capo ai pin 10 e 11

 

Piedinatura del CB220.

Getstr

La funzione riceve dati attraverso la porta seriale specificata e memorizza il contenuto in una variabile stringa.    La sintassi di utilizzo è la seguente:

 Variable=Getstr (channel, length)

 Dove:

Putstr

Il comando Putstr, invia una stringa di lunghezza arbitraria sul canale RS-232. Possono essere specificate liberamente stringhe, variabili, costanti o altro. La sua sintassi è la seguente:

 Putstr channel, data

 Dove:

Elenco revisioni
02/12/2013 Aggiornato pagina
04/05/2010 Emissione preliminare
Private Policy Cookie Policy