AN60317 describes an I2C-based bootloader for PSoC® 3 and PSoC 5LP. In this application note you will learn how to use PSoC Creator™ to quickly and easily build an I2C-based bootloader project, and bootloadable projects. It also shows how to build an I2C-based embedded bootloader host program.
Bootloading is a process that allows you to upgrade your system firmware over a standard communication interface such as USB, I2C, UART or SPI. A bootloader communicates with a host to get new application code or data, and writes it into the device's flash memory.
This application note describes an I2C based bootloader for PSoC 3 and PSoC 5LP. To get introduced to basics of PSoC 3 and PSoC 5LP Bootloader please refer AN73854 - PSoC® 3 and PSoC 5LP - Introduction to Bootloaders. If you intend to learn how to develop USB Bootloader for PSoC 3 and PSoC 5LP, AN73503 - USB HID Bootloader for PSoC® 3 and PSoC 5LP should get you going.
The following table indicates the PSoC devices, PSoC Creator versions, compilers, and development kits that will work with this application note project:
Project |
Device
|
PSoC Creator
Version |
Development Kit
CY8CKIT-xxx |
Compiler
|
|||||||
Architecture
|
Silicon
Revision |
V3.0 SP1 or higher |
V2.2
|
001
DVK |
Keil
|
GCC
|
RVDS
|
MDK
|
|||
AN60317.zip |
Prod
|
YES
|
NO
|
YES*
|
YES
|
NO
|
YES
|
N/A
|
N/A
|
N/A
|
|
Prod
|
YES
|
NO
|
YES*
|
YES
|
NO
|
N/A
|
YES
|
YES
|
YES
|
||
AN60317_Archive.zip |
Prod
|
NO
|
YES
|
YES*
|
YES
|
NO
|
YES
|
N/A
|
N/A
|
N/A
|
|
Prod
|
NO
|
YES
|
YES*
|
YES
|
NO
|
N/A
|
YES
|
YES
|
YES
|
*Refer to Migrating CY8CKIT-001 DVK project to CY8CKIT 030/ 050.
- For PSoC 5 project and related document, please download file AN60317_Archive.zip.
Projects associated with this application note can be downloaded from the ‘Related Files’ section below. For your convenience, we have provided projects that are compatible with the two most recent versions of PSoC Creator:
- AN60317.zip is used with PSoC Creator 3.0 SP1
- AN60317_Archive.zip is used with PSoC Creator 2.2
The project’s default settings may not be compatible with your device or kit, and you may need to change your project settings. For more information, see: