Pic Micro, Arduino, Atmel, Microchip, Freescale, Texas Instrument, ecc. Strumenti di sviluppo, firmware e progetti.
da mars
#1453
Nella ricerca sul WEB di esempi e tutorial sui microcontroller di Microchip, molti si imbatto in Talking Electronics, un sito molto ricco di spunti, progetti, tutorial, documenti e commenti utili, non solo sui microcontroller, ma su applicazioni dell' elettronica in generale.

Nella notevole mole del materiale che il sito mette a disposizione, ci sono numerosi esempi e applicazioni per microntroller PIC. Si tratta di progetti datati, ma abbastanza semplici da realizzare e che coprono alcune delle richieste comuni. La presenza di sorgenti Assembly commentati e schemi di realizzazione chiari invita non solo il principiante a cercare di riprodurli.

Sfortunatamente, il principiante, che mediamente utilizza i tools gratuiti messi a disposizione da Microchip (MPASM, MPLAB) incontra immediatamente delle difficoltà, sotto forma di errori di compilazione da cui ha difficoltà a liberarsi.
Siccome questo capita a molti, indico alcuni punti essenziali a cui prestare attenzione:


config : vengono indicate le label di configurazione in lettere minuscole, mentre il file nomeprocessore.inc, che viene incluso all'inizio e che contiene le definizioni delle risorse del processore, riporta queste voci in caratteri maiuscoli. Quindi, il compilatore, non trovando concordanze, genera un primo blocco di errori.
Ad esempio:

__config _cp_off & _lvp_off & _pwrte_on & _wdt_off & _intRC_osc_noclkout
va modificato in:

__config _CP_OFF & _LVP_OFF & _PWRTE_ON & _WDT_OFF & _INTRC_OSC_NOCLOCKOUT

Una ulteriore possibilità sarebbe quella di disabilitare la differenziazione tra maiuscole e minuscole nell' Assemblatore, ma questa modifica del default è vivamente sconsigliata in quanto la differenziazione tra maiuscole e minuscole non solo permette una molto maggiore disponibilità di simboli, ma consente una migliore leggibilità del sorgente.


Variabili : per qualche esoterico motivo vengono definite le "variables - names and files" riguardanti le risorse interne del processore.
Ma queste label sono già definite completamente nel file nomeprocessore.inc e non esiste alcun bisogno di ri definirle.
Di conseguenza, la sezione va abolita.

Names : Purtroppo, però, vengono usate label di fantasia, come portA (che, invece, Microchip e l'Assembler definiscono PORTA). Questo genera confusione in chi legge il sorgente.
Di conseguenza, tutte le label delle risorse vanno modificate nel sorgente usando i termini corretti. Ad esempio:
status deve diventare STATUS, portA deve diventare PORTA, ecc.

Con queste modifiche, in generale gli errori di compilazione sono eliminati.
Dimmer su aspirazione

Ciao a tutti ho una ventola di aspirazione in came[…]

Visita il nostro canale telegram