Firmware - Aprile 2014 / N°99 - (Page 21)

Per il dettaglio del protocollo I2C tra giornare solo la sezione dedicata al- MCU master e MCU slave si rimanda l'user application. Se l'ID firmware e all'application note di NXP. Analizziamo valido, ci spostiamo sul lato di destra il ciclo operativo della MCU slave. Il del diagramma di flusso di figura 4. diagramma di flusso della MCU slave è L'applicativo è in esecuzione ma la ri- mostrata in figura 4. All'avvio, la parte di cezione di un comando come riportato bootloader secondario verifica l'ID del in tabella 1 genera la conseguente azio- firmware e, se non e valido, si mette in ne, con la differenza che in questo caso attesa di comandi provenienti dalla anche il comando 0x33 di aggiorna- MCU master, con la possibilità di ag- mento del bootloader secondario (SBL) sulla MCU slave risulta fattibile. Al termine dell'aggiornamento, un reset permette di portare in esecuzione il nuovo bootloader secondario appena caricato. Nel caso di aggiornamento del firmware applicativo dall'interno del bootloader secondario, la sequenza delle operazioni è quella mostrata nel diagramma d flusso di figura 5. Nel caso la procedura di aggiornamento avvenga dall'interno del applicativo utente il diagramma di flusso è mostrato in figura 6. Per invocare una funzione del bootloader secondario dall'interno dell'applicativo utente, si usa la zona di entry point con le chiamate alle API che abbiamo generato all'indirizzo 0xFFF (figura 2). Il codice potrebbe essere il seguente: #define SBL_LOCATION 0xFF1 typedef void (*sbl_api)(uint32_t API_Code, uint8_t* pParam); Servirà poi creare il puntatore, farlo puntare all'indirizzo giusto ed eseguire la chiamata, come di seguito: sbl_api entry; entry = (sbl_api) (SBL_LOCATION); (entry)(API_Code, Params); Per l'esempio proposto attraverso la nota applicativa di NXP [1], i parametri con cui invocare le API sono mostrati in tabella2. Ovviamente per supportare la programmazione dall'interno dell'applicazione è necessario fornire al linker lo "scatter loading description file" che Load Region Execution Region Input Sections 0x00000000 - 0x00000000 - Interrupt Vector Table, 0x00000FEF 0x00000FEF Code and RO data. 0x10000000 - RW data, ZI data. 0x10001BFF 0x00000FF0 - 0x00000FF0 - 0x00000FFF SBL API. 0x00000FFF Tabella 3: Scatter loading description file per bootloader secondario(LPC11xx). Figura 4: Diagramma di flusso per la MCU slave. FOCUS ON SKILLS INSIDE TOOLS ANALOG TIPS'N TRICKS 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