firmware0:
DS1305 è un Real Time Clock con porta I2C. Ecco come utilizzarlo con un PIC16F628 e come monitorarlo attraverso una connessione seriale RS232. REAL TIME CLOCK SPI CON PIC16F628 Lo schema di figura 1 mostra la connessione tra il modulo RTC …
CONFIGURAZIONE DEL MODULO PWM DEL PIC16F877 I registri usati per la configurazione del modulo PWM sono: TRISC, PR2, CCP1CON, CCP2CON, CCPR1L, CCPR2L e T2CON. Tipicamente il modulo PWM viene utilizzato per il controllo dei motori. È dunque molto importante determinare la frequenza …
PILOTARE UN MODULO AD ULTRASUONI CON UN PIC16F877 Il modulo SRF04 è un dispositivo ad ultrasuoni che consente di rilevare la vicinanza di oggetti fino a 3 metri. Il sensore invia un segnale ad ultrasuoni e capta l’eco generato dagli …
La codifica Manchester permette la trasmissione dei dati e del clock in un unico pattern seriale, per questo viene utilizzata frequentemente nelle trasmissioni digitali in Radio Frequenza a basso costo. E' una particolare tecnica di modulazione bifase (BPSK, Binary Phase Shift …
Una analisi dettagliata dell’architettura interna del DSC (Digital Signal Controller) dsPIC33F di Microchip: un single chip con funzioni DSP ad elevate prestazioni per controllo industriale e sistemi audio. I DSC integrano al loro interno un potente microcontrollore 16bit e un DSP. La …
IL TIMER DEL PIC16F877 E I COMPILATORI CCS La periferica timer è una delle periferiche base messe a disposizione da un microcontrollore. Per i PIC, i compilatori CCS forniscono funzioni per la gestione di ritardi, per monitorare un tempo trascorso ed …
USARE UN SENSORE DI PROSSIMITÀ AD INFRAROSSI Il GP2D12 è un sensore di prossimità ad infrarossi di tipo analogico utilizzato tipicamente per il rilevamento di ostacoli. Il sensore è costituito da un LED ad infrarossi la cui luce (invisibile all’occhio …
L’INSTALLAZIONE DEL COMPILATORE GNU GCC PER AVR Cosa serve: Per installare la piattaforma di sviluppo completa GCC-AVR sono necessari i seguenti componenti: GCC: la Gnu Compile Collection, configurata e compilata per utilizzare gli AVR come target. La suite è ottenibile …
GENERAZIONE PRECISA DI RITARDI CON AVR Ecco una utilissima libreria per AVR studio contenente una funzione di ritardo estremamente precisa. La funzione deve essere chiamata con _waste_us n dove n è un valore intero compreso tra i valori 1000000/F_CPU (F_CPU è una …
I chip della Analog Devices serie ADuC7000 rappresentano un’ottima scelta per lo sviluppo di sistemi embedded mixed-signal. Dotati di un core ARM7®TDMI 32-bit RISC sono in grado di raggiungere velocità di campionamento fino a 1MSPS. La famiglia dei Microconverter della Analog Devices …
PIC: OTTIMIZZARE LA VELOCITÀ CON IL COMPILATORE HI-TECH C Ecco alcuni consigli su come ottimizzare la velocità di esecuzione del codice nella programmazione dei microcontrollori PIC: La fase di inizializzazione del PIC è piuttosto lunga in termini di tempo di …
La gestione del sensore di temperatura 1-wire DS1820 con AT90S2343-1: le routines di lettura, setup, invio comandi e conversione in linguaggio assembler. Ecco come leggere il sensore di temperatura DS1820 utilizzando il protocollo 1-wire implementato su un AT90S2343-1 con oscillatore RC …
Una panoramica sul microcontrollore ADuC, della Analog Devices e l’analisi del protocollo utilizzato per la sua programmazione. La famiglia degli ADuC, basata sul core 8052, comprende diverse varianti a seconda del progetto a cui essi sono destinati. Perciò sono identificati da …
PORTING DEL CODICE Per chi usa microcontrollori AVR, può essere utile sapere che con piccoli accorgimenti è possibile compilare con GCC/WinAVR il codice scritto per IAR-C. Ecco alcuni utilissimi consigli. Registri e locazioni di memoria possono avere diversi alias definiti …
Nelle applicazioni embedded è spesso necessario spostare interi blocchi di memoria dalla FLASH alla SRAM o all’interno della SRAM stessa. Ecco una serie di routine assembler (o assembly) per microcontrollori AVR di Atmel ottimizzate per lo spostamento di blocchi di dimensioni fino …
Un economico kit di sviluppo di Freescale (ora NXP) permette di esplorare in maniera semplice e veloce le possibilità dei micro HCS08. La DEMO9S08QG8 è una scheda di sviluppo a basso costo dedicata al microcontrollore MC9S08QG8 che mette a disposizione tutto …
ACCESSO ALLA EEPROM NEI MICRO AVR Scrittura ad un indirizzo specifico Il listato 1 presenta una routine per la scrittura in EEPROM ad uno specifico indirizzo. La routine EEWrite assume che in EEdwr vi sia il dato da scrivere, in …
Il controllo di ridondanza ciclica (altrettanto noto come CRC) è ampiamente utilizzato per la verifica dell’integrità dei dati nei sistemi di comunicazione: ecco come implementarlo su un PIC18F452. Controllo CRC32 con PIC Il listato 1 riporta l’implementazione dell’algoritmo CRC32 basato sul …
Un orologio/datario con visualizzazione su display LCD realizzato con un AT89C4051. In figura 1 è riportato lo schema elettrico. Lo switch SW3 permette di selezionare il parametro da modificare mentre con SW1 ed SW2 rispettivamente si decrementa o si incrementa …
Il linguaggio C è di gran lunga usato nella programmazione dei sistemi embedded ed esistono numerosi volumi che ne illustrano la semantica e la sintassi. Molto più raro è invece trovare una trattazione che illustri le regole principali sull’ottimizzazione degli algoritmi in …