Difference between revisions of "TI CC2340"

From SEGGER Wiki
Jump to: navigation, search
(Flash Banks)
(Example Application)
Line 44: Line 44:
   
 
==Example Application==
 
==Example Application==
*TI LP-EM-CC2340R5 evaluation board: http://wiki.segger.com/TI_LP-EM-CC2340R5#Example_Project
+
*TI LP-EM-CC2340R5 evaluation board: http://wiki.segger.com/TI_LP-EM-CC2340R5#Example_Application

Revision as of 09:48, 17 May 2023

The TI CC2340 devices are Cortex-M0 based wireless MCUs.

Flash Banks

The TI CC2340 series does not provide a sector erase command but a chip erase command which affects the program flash as well as the CCFG block. Unfortunately, the debug interface is not open in case of an invalid CCFG block is detected which is the case after erasing it. For that reasons, it's mandatory to always program the application + a valid CCFG block when updating the target application.

Internal Flash

Flash Bank Base address Size J-Link Support
Program Flash 0x00000000 512 KB YES.png
CCFG Flash 0x4E020000 2 KB YES.png

CCFG Flash

The CCFG (Customer Configuration) sector contains configuration data. The boot sequence uses a lot of these configurations. For example whether or not to enable debugging. Where the vector table of the application is located (such that the boot sequence knows where to jump to) The CCFG also contains CRC fields which is used by the boot sequence to check if the CCFG data is valid In general, TI example applications will contain the CCFG data.

As explained above, users have to ensure that the CCFG block is valid in order to guarantee a proper functionality. This means that all application images must include a (valid) CCFG sector.

Device Specific Handling

Connect

A device specific connect sequence is executed which supports:

  • Connecting to a device with invalid CCFG block. In this case, a default CCFG will be programmed as part of the connect.
  • Connecting to a device with valid CCFG block

As part of the connect sequence, the J-Link determines the silicon revision: PG1.0 / PG2.0

Reset

The device uses custom reset which performs a reset via the SACI interface:

  • In case of a valid application is programmed, the MCU will be halted on the reset vector (application entry point).
  • In case of no valid application is programmed, the MCU will be halted in a so called debug loop

Limitations

Flasher Stand-Alone Mode

Not supported yet. Support will be implemented soon.

Attach

Attach is not supported because a device specific initialization sequence is required.

Security

Connecting to a protected device is not supported yet.

Evaluation Boards

Example Application