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