MicroCode Studio
mecanique

 | Indice | ICD | Setup | Modelli | Seriale | Sys. Req. |

| Break Points | Toolbar | EDIT | WIN | MPASM |

Panoramica MicroCode Loader
Le serie di microcontrollori PIC 16F87x e 18Fxxx(x) hanno la capacità di scrivere nello loro stessa memoria di programma, senza bisogno di usare un programmatore esterno. Un piccolo programma (detto bootloader) è residente nel microcontrollore, e permette all'utente di trasmettere dati per programmare la memoria codice e la EEPROM attraverso la linea seriale.

MicroCode Loader

L'applicazione MicroCode Loader è il software residente sul computer. Questi due elementi insieme permettono di programmare, mleggere e verificare la memoria programma ed EEPROM del microcontrollore direttamente nel circuito.

Il Bootloader Software

Prima di usare MicroCode Loader, dovete assicurarvi che il bootloader software sia stato programmato nel microcontrollore. Questa operazione va eseguita una volta sola, dopodiche' siete gia' in grado di programmare il dispositivo quante volte volete.

Dovete essere sicuri che il file *.hex del bootloader corrispnda alla frequenza di clock del microcontrollore. Ad esempio, il file 16F877_20.hex va usato per programmare dispositivi con clock di 20MHz. Se non rispettate questa condizione, MicroCode Loader non sara' in grado di comunicare con il microcontrollore target. Se non avete impostato il baud rate nella applicazione proncipale MicroCode Loader, verra' rilevato automaticamente. MicroCode Loader viene fornito con un certo unumero di *.hex files precompilati, pronti per essere programmati nel microcontrollore.

Quando il microcontrollore viene alimentato (o resettato) per la prima volta, il bootloader come prima cosa verifica se l'pplicazione MicroCode Loader ha un compito in sospeso da fargli eseguare (ad esempio, programmare il vostro codice nel microcontrollore target). Se e' cosi', il bootloader cede il controllo al MicroCode Loader finche' questo non termina. In ogni caso, se il bootloader non riceve alcuna istruzione entro le prime centinaia di millisecondi dall'avvio, il bootloader termina e fa partire il programma utente precedentemente scritto nella memoria del programma.

Il bootloader software risiede nlle prime 256 words della memoria di programma (336 words per dispositivi 18Fxxx(x)), il resto della memoria e' disponibile per il programma utente. Tutta la memoria dati della EEPROM e i registri del microcontrollore sono disponibili per il vostro programma. Notate che solo la memoria codice e la memoria EEPROM possono essere programmati, verificati e letti da MicroCode Loader. I fusibili di configurazione e l'ID del microcontrollore non sono raggiungibili dal bootloader. Pertantoi fusibili di configurazione devono essere impostati nel momento in cui viene programmato il bootloader software nel microcontrollore.

Requisiti hardware

MicroCode Loader comunica con il microprocessore target attraverso la sua hardware Universal Synchronous Asynchronous Receiver Transmitter (USART). La famiglia di microcontrollori PIC 16F87x implementano il segnale RX in PORTC.7 ed il segnale TX in PORTC.6. Pertanto avrete bisogno di una scheda di sviluppo che suppoti la comunicazione seriale RS232 per poter usare il loader. Si possono trovare molte schede con supporto RS232. Se la scheda ha un connettore seriale a 9 pin, probabilmente avrà un MAX232 o equivalente installato a bordo. Questo e' l'ideale per connettere MicroCode Loader al vostro computer tramite una prolunga seriale. Mecanique vende varie schede di sviluppo concomunicazione seriale copatibili con MicroCode Loader, tra le quali:

In alternativa, potete autocostruire il circuito mostrato qui sotto.

Click on image to enlarge...

Connessione di un microcontrollore a MicroCode Loader
con
software reset opzionale. Per gentile concessione della Reynolds Electronics

Requisiti per la programmazione

l bootloader software risiede nlle prime 256 words della memoria di programma (336 words per dispositivi 18Fxxx(x)), il resto della memoria e' disponibile per il programma utente. Poiche' il loader risiede nella parte alta della memoria di programma, c'e' bisogno di un sistema per 'saltare' alla prima istruzione del bootloader all'accensione o al reset. Per fare questo, vengono usate le prime quattro word della memoria programma (chiamate vettore di reset) per effettuare un salto al codice del bootloader. Quando si programma il microcontrollore target usando MicroCode Loader, le prime quattro word del programma utente vengono automaticamente rilocate dal bootloader. Se il bootloader non lo facesse, quella importante istruzione di salto verrebbe sovrascritta dal programma utente ed il bootloader software non partirebbe alla successiva accensione o reset. Quindi il vostro programma deve essere modificato in modo da supportare questa operazione. La modifica e' motlo semplice, un esempio viene mostrato qui sotto.

PICBasic Pro, precedente alla versione 2.33

DEFINE ONINT_USED 1

PICBasic Pro, 2.33 e successive

DEFINE LOADER_USED 1

Un programma Assembler può fare così:

ÝÝ ORG 0
ÝÝ GOTO StartOfProgram

ÝÝ ORG 5
StartOfProgram
ÝÝ
; il vostro programma inizia qui

Dispositivi supportati

MicroCode Loader può programmare i seguenti microcontrollori: 16F870, 16F871, 16F873(A), 16F874(A), 16F876(A) and 16F877(A), 18F242, 18F248, 18F252, 18F258, 18F442, 18F448, 18F452, 18F458, 18F1220, 18F1320, 18F2220, 18F2320, 18F4220, 18F4320, 18F6620, 18F6720, 18F8620 e 18F8720. MicroCode Loader viene fornito con *.hex files precompilati, pronti per essere scritti nel microcontrollore target. Se volete un bootloader file gratuito per una configurazione diversa, siete pregati di contattare Mecanique.

MicroCode Loader e' gratis se comprat MicroCode Studio Plus.


Pagina aggiornata al 16 Dicembre 2003


GRIFO®
Via dell'Artigiano, 8/6
40016 San Giorgio di Piano
Bologna ITALY

Tel: +39 051 892.052 (4 lines)
FAX: +39 051 893.661


homeHome Indice Software Tabelle Indice Cat.