Using Software Building Blocks for Faster Time to Market Brandon Hussey, Applications Engineer Class ID: 3L09B Renesas Electronics America Inc.
Brandon Hussey Applications Engineer RX support Flash API Virtual EEPROM Flash Loader Firmware Integration Technology (FIT) PREVIOUS EXPERIENCE: Interned at Renesas for 3 years Joined on full-time after graduation I hold an MSCPE from North Carolina State University 2
Renesas Technology & Solution Portfolio 3
8/16-bit 32-bit Microcontroller and Microprocessor Line-up 2010 2012 1200 DMIPS, Superscalar Automotive & Industrial, 65nm 600µA/MHz, 1.5µA standby 500 DMIPS, Low Power Automotive & Industrial, 90nm 600µA/MHz, 1.5µA standby 32-Bit High Performance DSP, FPU with High Integration 1200 DMIPS, Performance Automotive, 40nm 500µA/MHz, 35µA deep standby 165 DMIPS, FPU, DSC Industrial, 90nm 500µA/MHz, 1.6µA deep standby 165 DMIPS, FPU, DSC Industrial, 40nm 200µA/MHz, 0.3µA deep standby 25 DMIPS, Low Power Industrial & Automotive, 150nm 190µA/MHz, 0.3µA standby 10 DMIPS, Capacitive Touch Wide Industrial Format & Automotive, LCDs 130nm 350µA/MHz, 1µA standby 44 DMIPS, True Low Power Industrial & Automotive, 130nm 144µA/MHz, 0.2µA standby 4
Enabling The Smart Society Renesas MCUs already offer you the hardware you need to make a device that will thrive in the Smart Society. Smart and efficient software is also needed though. This class will show you how Renesas is developing software that will make your application development easier and faster. 5
Agenda Firmware Integration Technology (FIT) Introduction FIT Modules FIT Foundation (Renesas BSP - r_bsp) FIT Plug-In (E2Studio) Lab 6
FIT Intro 7
The Problem MCUs continue to become more complex Software becomes more complex as well Project schedules do not always scale accordingly CAN 8
How is Renesas helping? FIT = Firmware Integration Technology FIT is a global set of Renesas standards enabling creation of quality, easy-to-use, interoperable firmware that addresses your needs 9
What is FIT? FIT is a set of rules and guidelines to help you get to market faster and easier Examples of what we have improved: Insertion into customer s project Integrating multiple modules Simple configuration Common documentation practices Common file and directory structure Resource sharing for projects with multiple tasks Strong foundation to build code on top of Mixture of compile-time and run-time configuration options 10
FIT Philosophy Provide strong foundation to build on Ease of integration and use is paramount Efficiently manage available resources MCU Resources Functionality 11
Coding Standards & FIT Coding standards give rules for individual files FIT gives rules for middleware as a whole FIT CS 12
FIT Modules 13
FIT Module Structure 14
Interface File Example r_rspi_rx_if.h /**************************************************************************** Typedef definitions ****************************************************************************/ /* Enumeration for common chip selects. */ typedef enum { NO_DEVICE_SELECTED=0, SDMICRO_SELECTED, FLASH_SELECTED, WIFI_SELECTED, LCD_SELECTED } device_selected_t; /*************************************************************************** Public Functions ****************************************************************************/ bool R_RSPI_Init(uint8_t channel); bool R_RSPI_Select(uint8_t channel, device_selected_t chip_select); bool R_RSPI_Deselect(uint8_t channel, device_selected_t chip_select); bool R_RSPI_BaudRateSet(uint8_t channel, uint8_t divisor); 15
Configuration File Example r_flash_api_rx600_config.h Enable ROM Programming Ignore Lock Bits Data Flash Background Operations /*************************************************************************** ENABLE BGO & NON-BLOCKING DATA FLASH OPERATIONS ****************************************************************************/ /* If this is defined then the flash ready interrupt will be used and FlashAPI routines that deal with the data flash will exit after the operation has been started instead of polling for it to finish. */ #define DATA_FLASH_BGO 16
readme.txt Quick reference with relevant information RX62N, RX62T, RX630, RX63N UART CMT r_module_1 Instructions: * Add xxx.c to your project * Add xxx2.c to your project * Add an include path to x * Configure through xx.h 17
Example FIT Packages Look Similar? Flash API File Structure: --------------- r_flash_api_rx600 --->doc (contains app note) --->src (Flash API source) --->r_flash_api_rx600_config.h --->r_flash_api_rx600_if.h --->readme.txt Virtual EEPROM File Structure -------------- r_vee --->doc (contains app note) --->src (VEE source) --->r_vee_config.h --->r_vee_if.h --->readme.txt I2C Master File Structure: --------------- r_riic_rx600 --->doc (contains app note) --->src (I2C source) --->r_riic_rx600_config.h --->r_riic_rx600_if.h --->readme.txt 18
Example FIT Packages Look Similar? Flash API Virtual EEPROM I2C Master 19
FIT Foundation 20
r_bsp Framework Provides Board Support Packages for different boards Benefits: Foundation to build code on Has all files to get MCU up and running Makes it easy to write code for multiple MCU groups Can write code that automatically configures itself for chosen MCU 21
r_bsp Structure 22
Custom BSP 23
Configuring the BSP Configurations done through r_bsp_config.h Reference configuration provided in board folder Many options Stack Heap 24
Different Levels 25
FIT Plug-In 26
E2Studio Plug-In Easily add modules 27
Summary Firmware Integration Technology (FIT) Introduction FIT Modules FIT Foundation (Renesas BSP - r_bsp) FIT Plug-In (E2Studio) 28
Questions? 29
Enabling The Smart Society Renesas MCUs already offer you the hardware you need to make a device that will thrive in the Smart Society. Smart and efficient software is also needed though. This class showed you how Renesas is developing software that will make your application development easier and faster. 30
Please Provide Your Feedback Please utilize the Guidebook application to leave feedback or Ask me for the paper feedback form for you to use 31
Renesas Electronics America Inc.