Firmware - Aprile 2014 / N°99 - (Page 52)
diversi comandi previsti dalle specifiche
del costruttore.
Pare opportuno precisare che il programma di Boot, ovvero l'applicazione
che si trova nella sezione dedicata nella memoria a sola lettura, è posto in
esecuzione solo alla presenza dell'abilitazione sul pin MODE: si entra in questa modalità solo quando il pin è tenuto basso per almeno 30ms e dopo che il
segnale di reset è stato de-asserito.
Il primo compito, e anche il più importante, del programma di Boot è quello di
impostare il formato della comunicazione e di definire il bit rate; in effetti, è
possibile scegliere il formato da utilizzare nella sessione di aggiornamento
del software residente, upgrade, tra
due possibili proposte: da una parte lo
standard seriale mode 2 e dall'altra si
rende applicabile il mode 3.
Per questa ragione, Renesas ha deciso
di definire una semplice procedura di
controllo: il livello del pin MODE è controllato due volte, valore tipico 200ms e
230ms dopo che il segnale di reset non
è più asserito.
Solo in seguito il microcontrollore può
entrare in uno dei due modi previsti;
dalla figura 2 possiamo notare il timing
che si deve rispettare per seguire la
procedura.
In seguito occorre definire il bit rate di
comunicazione, tenendo presente il parametro di bps utilizzato; infatti, il bit ra-
[1] R01AN1469EJ0120.pdf
[2] http://www.renesas.com
te è regolato a 9600 bps ricevendo quello che è chiamato standard time data,
ovvero il valore numerico zero, per 16
volte e il relativo command data, pari a
B0 in esadecimale, dal programmatore
seriale: in seguito occorre aspettare la
successiva ricezione del comando associato, sempre con valore B0 in esadecimale.
Solo rispettando questo protocollo la
procedura si può ritenere conclusa. A
questo riguardo, in figura 3 si pone in
evidenza questa specifica sessione.
Non solo, è anche possibile, in particolare per la famiglia R8C/38C, modificare il bit rate di comunicazione ricorrendo all'accoppiata B5 o B7, il
cosiddetto bit rate setting command,
e il valore 0 o 8, o anche meglio noto
con il nome di setting data.
Se, infatti, vorremo modificare il bit rate con il valore di 460800 bps in modalità I/O mode 2, sarà necessario inviare
il comando B5 e 0, che rappresentano il
bit rate setting data. In seguito all'invio
del rata setting data, il target MCU dovrà rispondere inviando un altro setting dato e solo in seguito ci si potrà
predisporre per definire un nuovo rate
inviando, però, un valore adatto. A questo riguardo può essere opportuno consultare la relativa tabella dei comandi
implementata da Renesas, illustrata in
figura 4..
È possibile utilizzare i valori predefiniti
previsti dal costruttore - 9600, 19200,
38400, 57600 e 115200 - inviando i necessari comandi; infatti, per impostare
un valore pari a 9600 è indispensabile
inviare, come primo e secondo byte, il
valore B0; al contrario, possiamo ottenere un data rate di 19200 con due successivi comandi, byte, pari a B1. Così
per ottenere 38400 occorre inviare due
B2, un data rate di 57600 i byte diventano B4, mentre con B4 si ottiene un data rate di 115200.
Per riprogrammare la memoria flash,
l'area ROM utente del processore, occorre rispettare un'apposita procedura;
infatti, una volta selezionato il formato
della comunicazione e regolato il bit
rate, sarà possibile, attraverso alcuni
comandi seriali, accedere alle risorse
del processore e inserire il programma
nella memoria non volatile.
Schematizzando, possiamo riassumere
quest'operazione attraverso alcuni semplici passi:
- Selezionare un formato idoneo per la
comunicazione
- Regolare lo stato della comunicazione
- Impostare il bit rate
- Eseguire il controllo dei dati
- Eseguire il controllo sullo stato della
memoria
- Eseguire l'eventuale cancellazione del
suo contenuto (è applicabile solo quando la memoria non risulti già cancellata)
- Eseguire la programmazione della memoria utente
- Eseguire la verifica dell'operazione
precedente
- Terminare il processo di scrittura
Dopo aver impostato il formato della
comunicazione e la regolazione del bit
rate, si deve eseguire il controllo dei
dati utilizzando la procedura ID data
check. In questa operazione, il Serial
Programmer dovrà inviare il clear status
register command (valore 50h) e il read
status register con il valore 70, sempre in notazione esadecimale. Al termine della negoziazione iniziale il dispositivo di destinazione dovrà
restituire, entro un termine di venti secondi, il valore dei due bit SR11 e SR10
contenuti nel registro SRD1: questi devono essere entrambi pari a 1 pena la
nullità dell'intera operazione di verifica
iniziale. In seguito, qualora i due bit
fossero settati a 1, il Serial programmer dovrà trasmettere il valore F5, ID
data check function, insieme all'indirizzo al quale il parametro ID1 è contenuto. Non solo, il Serial Programmer
ha anche il compito di trasmettere il
parametro ID Size, ID1 (07h), ID1 a ID7
FOCUS ON
INSIDE
TOOLS
ANALOG
TIPS'N TRICKS
52
SKILLS
MARKET NEWS
SPOTLIGHT
EVENTS ZAPPING
MEMBERSHIP
Tabella dei contenuti per la edizione digitale del Firmware - Aprile 2014 / N°99
TIPS'n tricks
FOCUS on Gecko, i Micro Ultra Low Power
SKILLs
Usare l’oversampling con gli AD7960/61
Bootloader secondario via I2C
INside
Low-Power Design Guide
STM8S: utilizzo del convertitore A/D
Applicazioni USB con MSP430
ANALOG Sensore PWM di prossimità e luce ambiente
TOOLS Il Serial Programmer di Renesas
SPOTlight
LTM®8028: Basso Rumore, Alta Precisione
M2M Forum a Milano: il futuro che è già qui
EVENTS zapping
News
Guida
Firmware - Aprile 2014 / N°99
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2015-02_109
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2015-01_108
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-12_107
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-11_106
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-10_105
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-09_104
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-07_102
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-06_101
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-05_100
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-04_99
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-03_98
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-02_97
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-01_96
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-12_95
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-11_94
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-10_93
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-09_92
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-07_90_91
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-06_89
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-05_88
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-04_87
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-03_86
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-02_85
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-01_84
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-12_83
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-11_82
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-10_81
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-09_80
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-07_78-79
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-06_77
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-05_76
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-04_75
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-03_74
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-02_73
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-01_72
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-12_71
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-11_70
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-10_69
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-09_68
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-07_66_67
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-06_65
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-05_64
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-04_63
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-02_62
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2011-02_61
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2011-01_60
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-12_59
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-11_58
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-10_57
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-09_56
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2010-07_54-55
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2010-06_53
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Maggio-2010-52
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Aprile-2010-51
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Marzo-2010-50
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Febbraio-2010-49
https://www.nxtbookmedia.com