Microchip PIC 16F / 18F
Mercato di destinazione
Microprocessori a 8 bit economici. Il 16F è una delle prime linee di processori di Microchip e non è particolarmente adatto alla programmazione in C / C ++ a causa di:
- le sue istruzioni impostano l'architettura di base e di memoria
- la necessità di cambiare banca
- mancanza di supporto per le operazioni di puntatore comuni
- scarse prestazioni in C / C ++ a causa dell'architettura
- richiede dimensioni del programma maggiori per implementare algoritmi
La serie 18F è più recente e dovrebbe essere presa in considerazione se puoi permetterla per il tuo progetto. È simile nel mercato target, nei set di periferiche, nei pacchetti IC, negli strumenti di sviluppo e nel prezzo della serie 16F. Il core 18F è stato progettato per essere più suscettibile a C e C ++, grazie a:
- supporto per l'indirizzamento indiretto
- banchi RAM particolari che sono sempre accessibili (non è necessario il cambio di banco)
Software
Abbastanza facile da programmare, è possibile scrivere utilizzando il set di 30 istruzioni di montaggio, o utilizzare un compilatore C . Si tratta di MCU a 8 bit, quindi se si desidera lavorare con valori> 255, è necessario trovare / scrivere codice di addizione / sottrazione / moltiplicazione / divisione a 2 byte. La sua RAM ha 4 "banchi", quindi se si scrive in assembly, è necessario continuare ad andare avanti e indietro per accedere alle variabili memorizzate in banchi diversi dalla corrente.
Hardware
Questi MCU funzionano abbastanza lentamente, con una velocità tipica di 4 MIPS e una velocità massima di 20 MIPS. Hanno alcune funzionalità hardware integrate che funzionano bene se configurate correttamente, come ADC, porta seriale, porta parallela, bus CAN, bus I2C, bus SPI, confronto di tensione, EEPROM e, naturalmente, porte I / O per tutti gli usi .
Documentazione
- I fogli dati hanno tutte le informazioni richieste (piedinature, registri per la configurazione, ecc.) Ordinatamente classificati e ben documentati. Un manuale spiega inoltre in modo approfondito le funzionalità.
Strumenti di sviluppo
Microchip ha un nuovo strumento, il VDI che semplifica la configurazione delle varie funzionalità hardware della MCU, che genera assembly o codice C. Meglio che riversarsi sui fogli dati.
Microchip offre il suo IDE MPLAB da molti anni e, sebbene il programma stia lentamente migliorando, rispetto agli strumenti di sviluppo per PC (Visual C ++, Eclipse / NetBeans per Java / ecc.) L'interfaccia utente è molto scarsa e il software è ancora particolarmente difettoso. Inoltre non supporta C ++, nonostante il fatto che la differenza tra C e la maggior parte delle funzionalità C ++ (esclusa l'allocazione di memoria dinamica, funzioni virtuali e alcune altre funzionalità) sia molto leggera e C ++ incoraggia la modularità della programmazione. Esistono fornitori IDE di terze parti, in particolare IAR, ma sono costosi. (Hi-Tech è stata recentemente acquistata da Microchip.)
Il debug in-circuit è offerto in alcune parti dall'interfaccia ICD di Microchip, un'interfaccia seriale a 2 pin a cui è possibile accedere tramite gli adattatori di debug ICD2, ICD3 , REAL ICE , PICkit2 / 3, ecc. Assicurarsi di verificare se la parte scelta ha le funzionalità ICD! Le funzionalità di debug sono alquanto limitanti e hanno "skid" in cui si imposta un breakpoint su un'istruzione e il programma interrompe alcune istruzioni in seguito. Tuttavia, ICD è meglio di niente.
Supporto
- Le note applicative descrivono codice e circuiti per varie applicazioni comuni
- Comunità attiva di utenti nei forum di microchip
- Sito Web gratuito di supporto tecnico 24 ore su 24, 7 giorni su 7, in cui invii i tuoi problemi (biglietti) e il personale tecnico risponderà gratuitamente e ti consentirà anche di chiamare se hai bisogno di ulteriore aiuto
- Presentazioni (seminari Web) che spiegano i vari moduli e applicazioni