Programmi di Esempio

BASIC = BASCOM-8051; BASCOM-AVR; PicBasic Pro; mikroBASIC.

C Compiler = µC/51; ICC-AVR; HTC-PIC.

Compilatore PASCAL = mikroPASCAL.

Di seguito potete trovare una nutrita raccolta di programmi di esempio. I programmi sono stati realizzati per essere adoperati su un hardware noto, come la GMB HR84, o le altre della serie, in modo da evitare qualsiasi dubbio sull'interpretazione dei risultati.

Gli esempi realizzati sono ampiamente documentati in modo da permettere, a chiunque, un veloce e rapido approccio. Per venire inoltre in contro alle esigenze di chi vuole rendersi conto delle reali possibilita' dei compilatori BASCOM-8051, BASCOM-AVR, PicBasic Pro, mikroBASIC, C Compiler µC/51, HTC-PIC, o del C Compiler ICC-AVR, PASCAL Compiler mikroPASCAL, senza la necessita' di acquistarli, sono stati realizzati una serie di programmi che possono essere adaperati anche con la sola versione DEMO dei vari linguaggi. Come potrete vedere i programmi sono completi di moltissimi Commenti i quali vi potranno dare un notevole aiuto nell'apprendimento e nella sperimentazione degli stessi.

I N D I C E

B A S I C

Compilatore C

P A S C A L


Breve Descrizione dei Programmi Dimostratini 

 


HELLO

Il programma HELLO è un programma minimale che, per funzionare, non ha bisogno di nessuna risorsa esterna. E' necessario unicamente alimentare il Mini Modulo perchè questo funzioni. Lo scopo del programma è quello di far lampeggiare il LED di bordo. Nel caso che il Mini Modulo abbia due LED questi verranno fatti lampeggiare alternativamente. E' un modo semplice ed efficace per prendere confidenza con il prodotto. Questo programma, di cui di seguito sono disponibili i sorgente, sono stati realizzati sia con il Compilatore C che con il Compilatore BASIC. Nota: la versione H20_GMx è fatta per girare a 20MHz.


GMB_IOB

Il modulo GMB HR84 e' provvisto di otto ingressi optoisolati NPN/PNP e di quattro uscite a Rele' visualizzate ognuna da un proprio LED.
Ognuna di queste linee e' pilotata da un segnale TTL digitale collegato ad un port del Mini Modulo grifo® installato nello zoccolo ZC1.
Questo Demo permette di utilizzare immediatamente sia le uscite che gli ingressi bufferati disponibili rispettivamente su CN1 e CN6.
Viene inoltre illustrata la possibilita' di utilizzo delle linee di ingresso, Optoisolate, come Contatori e/o Generatori di Interrupt programmabili.


GMB_IOT

Questo Demo permette di utilizzare immediatamente le linee di I/O digitale TTL presenti su CN4. A seconda del Mini Modulo grifo® utilizzato, viene presentata la lista delle linee disponibili. Una volta selezionata quella di interesse la si puo' gestire in input (rappresentando il suo stato sulla console) o in output (settandola alta o bassa). Qualora la linea scelta sia associata all'interrupt del Real Time Clock del Mini Modulo, la gestione avviene tramite questa periferica.


GMB_RTC

I Mini Moduli grifo® CAN GM0, CAN GM1 e CAN GM2 sono dotati di un Orologio in Tempo Reale, RTC, di bordo, che e' tamponato mediante la batteria al Litio di bordo.
Tale componente puo' essere utilizzato per la schedulazione di sequenze di operazioni o per
creare etichette temporali da associare a determinati eventi.
L'interfaccia tra RTC e Mini Moduli e' in I2C BUS. Il programma Demo GMB_RTC permette di utilizzare immediatamente la funzioinalita' dell'orologio, sia in lettura che in scrittura, mediante una serie di funzioni largamente commentate. Dette funzioni si preoccupano sia di comunicare con il componente, sia di visualizzare i dati.


GMB_TMP

Se sul Mini Modulo grifo® e' disponibile il Real Time Clock, questo Demo permette di gestire tre temporizzatori che agiscono sulle uscite bufferate di CN1. In dettaglio da console per tutti i temporizzatori si puo` stabilire l'attivazione e l'intervallo di tempo in secondi, mentre solo per i primi due e` inseribile la combinazione d'uscita; il terzo invece disattiva tutte le uscite.


GMB_AD

Una volta scelto il Mini Modulo grifo®, se la linea di ingresso analogico su CN4 e' disponibile, questo Demo offre due operativita': Calibrazione o Acquisizione.
La prima calcola un coefficiente di calibrazione grazie ad un segnale di riferimento esterno fornito dall'utente, e lo salva nella EEPROM interna del Mini Modulo.
La seconda preleva il coefficiente di calibrazione dalla EEPROM, acquisice e rappresenta di continuo sulla console la combinazione dell'ingresso analogico, sia calibrato che non calibrato. Il Demo puo' essere usato indifferentemente con range 0..2,5 V e 0..10 V.


GMB_DA

Il Demo utilizza la sezione 0 del PCA del Mini Modulo grifo® per generare, su CN4, un segnale PWM di frequenza prestabilita, con duty cycle programmabile in percentuale da console. Tale segnale, collegato ad una opportuna circuiteria integratrice (rete RC, amplificatore operazionale con capacita' su ramo di retroazione, ecc.) permette di ottenere un segnale analogico analogo a quello di un D/A. L'esecuzione del demo e' subordinata al Mini Modulo utilizzato e alla configurazione della linea seriale.


GMB_SER

Il Demo e' un semplice esempio di comunicazione in grado di operare con tutti i protocolli elettrici disponibili sul CN2 dei Mini Moduli grifo® della GMB HR84 (RS 232, RS 422, RS 485, Current Loop o TTL). In dettaglio, tramite funzioni a basso livello, e' possibile programmare il Baud Rate da console, poi ogni carattere ricevuto dalla seriale viene ritrasmesso sulla stessa; la ricezione del carattere " r " determina la gestione della direzione (segnale DIR) per RS 422 e RS 485.


GMB_I2C

Questi Demo permettono di comunicare con disposivi I2C BUS collegati a CN3. In accordo con il Mini Modulo grifo® utilizzato (per CAN GM0, CAN GM1 e CAN GM2 usare il demo il cui nome finisce con C, per GMM 5115 quello il cui nome finisce con G), e' possibile leggere e scrivere byte ad un qualsiasi slave address ed address inseriti da console. In particolare, in lettura il byte ricevuto viene visualizzato, mentre in caso di scrittura il dato inserito viene spedito.


GMB_CAN

Se il grifo® Mini Module dispone della linea CAN su CN4, con questo demo e' possibile programmare da console i tipici parametri di comunicazione CAN, quindi ricevere e trasmettere messaggi. Grazie a questa flessibilita' e' possibile comunicare con qualsiasi altro dispositivo dotato di linea CAN.


 Esempi per schede K51 AVR + GMB HR84

 


K51_AD4

Questo Demo permette di pilotare una periferica I2C BUS a bordo della K51-AVR, il PCF8591, attraverso il modulo Mini-BLOCK GMB HR84 ed un Mini Modulo grifo®.
Il PCF8591 e' dotato di quattro ingressi analogici per conversione A/D con risoluzione ad 8 bit, tutte le operazioni di conversione e la lettura della combinazione acquisita avvengono tramite l'interfaccia seriale sincrona I2C BUS.
Il Demo permette di impostare quale canale convertire tramite la tastiera del PC, e di leggere la combinazione sui display a 7 segmenti della K51-AVR.


K51_DA

Questo Demo permette di pilotare una periferica I2C BUS a bordo della K51-AVR, il PCF8591, attraverso il modulo Mini-BLOCK GMB HR84 ed un Mini Modulo grifo®.
Il PCF891 e' dotato di una uscita analogica D/A con risoluzione ad 8 bit, tutte le operazioni di attivazione avvengono tramite l'interfaccia seriale sincrona I2C BUS.
Il Demo permette di impostare quale livello di tensione avere in uscita tramite, la tastiera del PC, e scrive " da " sui display a 7 segmenti della K51-AVR per indicare il funzionamento del Demo.


K51_PPI

Questo Demo permette di pilotare una periferica I2C BUS a bordo della K51-AVR, il PCF8574, attraverso il modulo Mini-BLOCK GMB HR84 ed un Mini Modulo grifo®.
Il PCF874 e' un I/O expander che permette di pilotare 8 linee digitali TTL sia in ingresso che in uscita, tutte le operazioni di lettura e scrittura avvengono tramite l'interfaccia seriale sincrona I2C BUS.
Il Demo permette di acquisire lo stato delle otto linee digitali TTL e lo visualizza sui display a 7 segmenti della K51-AVR, accanto alla scritta " in ".


K51_PPO

Questo Demo permette di pilotare una periferica I2C BUS a bordo della K51-AVR, il PCF8574, attraverso il modulo Mini-BLOCK GMB HR84 ed un Mini Modulo grifo®.
Il PCF874 e' un I/O expander che permette di pilotare 8 linee digitali TTL sia in ingresso che in uscita, tutte le operazioni di lettura e scrittura avvengono tramite l'interfaccia seriale sincrona I2C BUS.
Il Demo attiva alternativamente una linea alla volta, creando il classico scorrimento di un bit a destra e a sinistra, e scrive " out " sui display a 7 segmenti della K51-AVR per indicare il funzionamento del Demo.


K51_TER

Questo Demo permette di pilotare una periferica I2C BUS a bordo della K51-AVR, il DS1621, attraverso il modulo Mini-BLOCK GMB HR84 ed un Mini Modulo grifo®.
Il DS1621 e' un termometro digitale programmabile, con risoluzione di mezzo Grado Celsius, tutte le operazioni di programmazione e acquisizione della temperatura avvengono tramite l'interfaccia seriale sincrona I2C BUS.
Il Demo riporta sui display a 7 segmenti della K51-AVR la Temperatura misurata.


Esempi per Compilatore BASIC


  E S E M P I

BASCOM - 8051

Per Modulo GMB HR84

 CAN GM Zero, CAN GM1, CAN GM2, GMM 5115

HELLO_GM0, H20_GM0, HELLO_GM1, H20_GM1, HELLO_GM2, H20_GM2, HELLO_5115,

 GMB HR84 + (CAN GM Zero, CAN GM1, CAN GM2, GMM 5115)

GMB_IOB, GMB_IOT, GMB_RTC, GMB_TMP, GMB_AD, GMB_DA, GMB_SER, GMB_I2CC, GMB_I2CG,

 GMB HR84 + GMM 936

HELLO, GMB_IOB, GMB_IOT, GMB_SER, GMB_I2C,

 GMB HR84 + GMM 935

HELLO, GMB_IOB, GMB_IOT, GMB_SER, GMB_I2C,

 GMB HR84 + GMM 932

HELLO, GMB_IOB, GMB_IOT, GMB_SER, GMB_I2C,

  GMB HR84 + (CAN GM Zero, CAN GM1, CAN GM2) + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,

  GMB HR84 + GMM 5115 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,

  GMB HR84 + GMM 936 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,

  GMB HR84 + GMM 935 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,

  GMB HR84 + GMM 932 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER


  E S E M P I

BASCOM - AVR

Per Modulo GMB HR84

 GMB HR84 + CAN AVR

HELLO, GMB_IOB, GMB_IOT, GMB_TMP, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,, GMB_CAN,

 GMB HR84 + GMM AM08

HELLO, GMB_IOB, GMB_IOT, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,

  GMB HR84 + CAN AVR + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER

  GMB HR84 + GMM AM08 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,


E S E M P I

PicBasic

Per Modulo GMB HR84

 GMB HR84 + GMM 876

HELLO, GMB_IOB, GMB_IOT, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,

  GMB HR84 + GMM 876 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,


E S E M P I

PicBasic Pro

Per Modulo GMB HR84

 GMB HR84 + CAN PIC

HELLO, GMB_IOB, GMB_IOT, GMB_TMP, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,, GMB_CAN,

  GMB HR84 + CAN PIC + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,


  E S E M P I

mikroBASIC

Per Modulo GMB HR84

 GMB HR84 + GMM 876

GMB_IOB, GMB_IOT, GMB_TMP, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,

 GMB HR84 + CAN PIC

GMB_IOB, GMB_IOT, GMB_TMP, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,, GMB_CAN,

  GMB HR84 + GMM 876 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,

  GMB HR84 + CAN PIC + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,


Esempi per Compilatore C


 E S E M P I

µC/51

 Per Modulo GMB HR84

 CAN GM Zero, CAN GM1, CAN GM2, GMM 5115

HELLO_GM0, H20_GM0, HELLO_GM1, H20_GM1, HELLO_GM2, H20_GM2, HELLO_5115,

  GMB HR84 + (CAN GM Zero, CAN GM1, CAN GM2, GMM 5115)

GMB_IOB, GMB_IOT, GMB_TMP, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,, GMB_CAN,

 GMB HR84 + GMM 936

HELLO, GMB_IOB, GMB_IOT, GMB_SER, GMB_I2C,

 GMB HR84 + GMM 935

HELLO, GMB_IOB, GMB_IOT, GMB_SER, GMB_I2C,

 GMB HR84 + GMM 932

HELLO, GMB_IOB, GMB_IOT, GMB_SER, GMB_I2C,

  GMB HR84 + (CAN GM Zero, CAN GM1, CAN GM2) + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,

  GMB HR84 + GMM 5115 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,

  GMB HR84 + GMM 936 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,

  GMB HR84 + GMM 935 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,

  GMB HR84 + GMM 932 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,


 E S E M P I

ICC - AVR

 Per Modulo GMB HR84

  GMB HR84 + CAN AVR

HELLO, GMB_IOB, GMB_IOT, GMB_TMP, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,, GMB_CAN,

  GMB HR84 + GMM AM08

HELLO, GMB_IOB, GMB_IOT, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,

  GMB HR84 + CAN AVR + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,

  GMB HR84 + GMM AM08 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,


 E S E M P I

HTC - PIC 16

 Per Modulo GMB HR84

  GMB HR84 + GMM 876

HELLO, GMB_IOB, GMB_IOT, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,

  GMB HR84 + GMM 876 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,


 E S E M P I

HTC - PIC 18

 Per Modulo GMB HR84

  GMB HR84 + CAN PIC

HELLO, GMB_IOB, GMB_IOT, GMB_TMP, GMB_AD, GMB_DA, GMB_SER, GMB_I2C, GMB_CAN,

  GMB HR84 + CAN PIC + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,


Esempi per Compilatore PASCAL


  E S E M P I

mikroPASCAL

Per Modulo GMB HR84

 GMB HR84 + GMM 876

GMB_IOB, GMB_IOT, GMB_TMP, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,

 GMB HR84 + CAN PIC

GMB_IOB, GMB_IOT, GMB_TMP, GMB_AD, GMB_DA, GMB_SER, GMB_I2C,, GMB_CAN,

  GMB HR84 + GMM 876 + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,

  GMB HR84 + CAN PIC + K51 AVR

K51_AD4, K51_DA, K51_PPI, K51_PPO, K51_TER,


Pagina Aggiornata al 11 Ottobre 2006


homeHome Indice Categorico Scheda Tabelle CPU Data. S Prog. Esempio          Articoli