Texas Instruments EK-LM4F232 User Manual Download Page 8

Example Applications

The boot_demo2 application can be used along with this application to easily demonstrate that the
boot loader is actually updating the on-chip flash.

Note that the LM4F232 and other Blizzard-class devices also support the serial and USB boot
loaders in ROM. To make use of this function, link your application to run at address 0x0000 in flash
and enter the bootloader using the ROM_UpdateSerial and ROM_UpdateUSB functions (defined
in rom.h). This mechanism is used in the utils/swupdate.c module when built specifically targeting
a suitable Blizzard-class device.

2.4

Boot Loader Demo 2 (boot_demo2)

An example to demonstrate the use of a flash-based boot loader. At startup, the application will
configure the UART, USB and Ethernet peripherals, wait for a widget on the screen to be pressed,
and then branch to the boot loader to await the start of an update. If using the serial boot loader
(boot_serial), the UART will always be configured at 115,200 baud and does not require the use of
auto-bauding.

This application is intended for use with any of the three flash-based boot loader flavors (boot_eth,
boot_serial or boot_usb) included in the software release. To accommodate the largest of these
(boot_usb), the link address is set to 0x2800. If you are using serial or Ethernet boot loader, you
may change this address to a 1KB boundary higher than the last address occupied by the boot
loader binary as long as you also rebuild the boot loader itself after modifying its bl_config.h file to
set APP_START_ADDRESS to the same value.

The boot_demo1 application can be used along with this application to easily demonstrate that the
boot loader is actually updating the on-chip flash.

Note that the LM4F232 and other Blizzard-class devices also the support serial and USB boot
loaders in ROM. To make use of this function, link your application to run at address 0x0000 in
flash and enter the bootloader using either the ROM_UpdateUSB or ROM_UpdateSerial functions
(defined in rom.h). This mechanism is used in the utils/swupdate.c module when built specifically
targeting a suitable Blizzard-class device.

2.5

Boot Loader (boot_serial)

The boot loader is a small piece of code that can be programmed at the beginning of flash to act as
an application loader as well as an update mechanism for an application running on a Tiva C Series
microcontroller, utilizing either UART0, I2C0, SSI0, or USB. The capabilities of the boot loader are
configured via the bl_config.h include file. For this example, the boot loader uses UART0 to load an
application.

The configuration is set to boot applications which are linked to run from address 0x2800 in flash.
This is higher than strictly necessary but is intended to allow the example boot loader-aware appli-
cations provided in the release to be used with any of the three boot loader example configurations
supplied (serial or USB) without having to adjust their link addresses.

Note that the LM4F232 and other Blizzard-class devices also support serial boot loaders in ROM.

8

February 22, 2017

Summary of Contents for EK-LM4F232

Page 1: ...Copyright 2011 2017 Texas Instruments Incorporated SW EK LM4F232 UG 2 1 4 178 USER S GUIDE EK LM4F232 Firmware Development Package...

Page 2: ...y be claimed as the property of others Please be aware that an important notice concerning availability standard warranty and use in critical applications of Texas Instruments semicon ductor products...

Page 3: ...uart_echo 12 2 17 uDMA udma_demo 12 2 18 USB Generic Bulk Device usb_dev_bulk 12 2 19 USB HID Keyboard Device usb_dev_keyboard 13 2 20 USB MSC Device usb_dev_msc 13 2 21 USB Serial Device usb_dev_seri...

Page 4: ...Table of Contents 4 February 22 2017...

Page 5: ...llaris LM4F232H5QD microcontroller Four 20V analog inputs 3 axis analog accelerometer On board temperature sensor Bright 96 x 64 16 bit color OLED display 5 user buttons User LED Shunt for microcontro...

Page 6: ...Introduction 6 February 22 2017...

Page 7: ...abilities of the Cortex M3 microprocessor All of SRAM and all of the peripherals reside within bit band regions meaning that bit banding operations can be applied to any of them In this example a vari...

Page 8: ...ong as you also rebuild the boot loader itself after modifying its bl_config h file to set APP_START_ADDRESS to the same value The boot_demo1 application can be used along with this application to eas...

Page 9: ...ations boot loader compatible is simply a matter of relinking them with the new start address and adding a mechanism to transfer control to the boot loader when required The Windows device driver requ...

Page 10: ...MPU to protect a region of memory from access and to generate a memory management fault when there is an access violation 2 11 Data Logger qs logger This example application is a data logger It can b...

Page 11: ...ta can be saved When the EK LM4F232 board running qs logger is connected to a host PC via the USB OTG connection for the first time Windows will prompt for a device driver for the board This can be fo...

Page 12: ...ART connected to the USB debug virtual serial port on the evaluation board will be configured in 115 200 baud 8 n 1 mode All characters received on the UART are transmitted back to the UART 2 17 uDMA...

Page 13: ...e current Caps Lock state and is updated in response to any other keyboard attached to the same USB host system The device implemented by this application also supports USB remote wakeup allowing it t...

Page 14: ...keys on the keyboard will cause them to be printed on the screen and to be sent out the UART at 115200 baud with no parity 8 bits and 1 stop bit Any keyboard that supports the USB HID BIOS protocol s...

Page 15: ...er application already in flash at APP_START_ADDRESS then it will just run the user application It will attempt to load a new application from a USB memory stick under the following conditions no user...

Page 16: ...Example Applications 16 February 22 2017...

Page 17: ...s h containing the API declarations for use by applications 3 2 API Functions Functions void ButtonsInit void uint8_t ButtonsPoll uint8_t pui8Delta uint8_t pui8RawState 3 2 1 Function Documentation 3...

Page 18: ...is not needed that often If button debouncing is not required the the caller can pass a pointer for the pui8RawState parameter in order to get the raw state of the buttons The value returned in pui8R...

Page 19: ...also provides an API for initializing the display This driver is located in examples boards ek lm4f232 drivers with cfal96x64x16 c containing the source code and cfal96x64x16 h containing the API dec...

Page 20: ...for the Crystalfontz CFAL9664 F B1 OLED panel with SSD 1332 controller 4 3 Programming Example The following example shows how to initialize the display and prepare to draw on it using the graphics l...

Page 21: ...February 22 2017 21...

Page 22: ...r compliance with all legal regulatory and safety related requirements concerning its products and any use of TI components in its applications notwithstanding any applications related information or...

Reviews: