Applicazioni di Belinonda 7




ATTENZIONE ! Tutto quanto messo a disposizione viene rilasciato come e' ("AS IS" in inglese) per scopi sperimentali o educativi privati, SENZA NESSUNA GARANZIA IMPLICITA O ESPLICITA. In particolare E' DA EVITARNE L' USO IN APPLICAZIONI CHE COINVOLGONO LA SALUTE O LA SICUREZZA DELLE PERSONE. Dette applicazioni richiedono particolari qualificazioni affidabilistiche che NON SONO STATE EFFETTUATE.


Malgrado la piccolezza e la modestia di risorse, con la scheda Belinonda 7 e' possibile fare certe cose che molti fanno con Arduino, senza dover poi sacrificare una scheda Arduino completa per il circuito definitivo. I sorgenti proposti sono minimali, visto che non si possono prevedere le esigenze di tutti. Tuttavia il codice essenziale al funzionamento dell' applicazione proposta c' e' tutto, e decentemente commentato. Un indiscutibile vantaggio del PIC rispetto ad Arduino, e' che la velocita' del clock e' regolabile, anche durante l' esecuzione del programma, invece di essere bloccata a 16 MHz. Il PIC12F1840 puo' funzionare fino a 32 MHz, ma tutti gli esempi proposti funzionano con il clock di default a 500kHz, e conseguente minor consumo di corrente. Il rovescio della medaglia e' che le temporizzazioni basate sul clock vanno riviste in caso di cambiamento della sua velocita'. Tutti gli esempi sono per l' IDE di Microchip, MPLabX, e per il compilatore XC8, in versione free. Creando un nuovo progetto MPLAB genera una serie di files, .c e .h che sono la base dell' applicazione, ma sono vuoti. I files base sono:

configuration_bits.c
interrupts.c
system.c
system.h
user.c
user.h
main.c

ma ce ne possono essere anche degli altri creati dall' utente. Dopo aver creato la cartella con i files suddetti basta decomprimere in essa il file .zip scaricato e i files vuoti vengono sovrascritti da quelli del programma. Dei bit di configurazione (configuration_bits.c) tre sono sempre diversi da quelli di default. Il primo e' la disabilitazione del watchdog timer, che resetta periodicamente il micro nel caso che il programma si blocchi. Il WDT va accudito, e in questi programmi di prova e' un peso non necessario. Il secondo e' l' uso dell' oscillatore interno. L' oscillatore puo' essere quarzato, ma cosi' si perdono due piedini su otto. Per le applicazioni proposte, anche per UART e I2C, l' oscillatore interno non quarzato e' piu' che preciso. Il terzo e' l' abilitazione del "Low voltage programming". MPLabX lancia il messsaggio di allarme che si vede in figura


collegando la scheda. Non e' chiaro se l' allarme e' collegato al tipo di PIC o al voltaggio cui sta effettivamente funzionando, ma con LVP abilitato il PIC si lascia programmare e tutto funziona bene. Attenzione ! Non basta impostare il configuration bit, bisogna anche impostare le proprieta' del progetto come spiegato nella suddetta figura.
Dal punto di vista hardware oltre al PICKit 3 serve un collegamento tra un' alimentazione a 5 volt e Belinonda 7. Suggerisco una batteria o un power bank, in modo da non avere disaccordo tra la massa del PC su cui gira MPLab e quella di un alimentatore USB a rete. Serve inoltre un convertitore USB-seriale, che in fase di esecuzione del programma alimenta Belinonda 7 e al tempo stesso la fa parlare con un PC su cui gira un emulatore di terminale seriale (ad esempio minicom, disponibile per Linux, oppure VTERM32, free e disponibile per Windows). Puo' anche servire un convertitore seriale-Bluetooth della serie HC- disponibile su molti siti cinesi a pochi euro. Per maggiori dettagli vedere la pagina specifica.

Qui vengono proposti questi programmi:

  • 1) Led blink, il classico test !
  • 2) Prova base dell' UART
  • 3) Controllo remoto, via cavo o Bluetooth
  • 4) Test base su I2C
  • 5) Test base del Timer 1
  • 6) Lampeggio di led RGB con generatore di numeri pseudo-casuali
  • 7) Potenziometri con canali analogici
  • 8) Sensore di pressione Bosch I2C e parametri di calibrazione
  • 9) Invio di SMS tramite modulo GSM



  • Torna alla pagina applicazioni
  • Torna alla homepage