GitHub

Hardware / Special jobs: radar and motors / Step 3 of 4

LAUNCHXL-F2800137 (TMS320F2800137)

The TMS320F2800137 is a microcontroller in TI's C2000 family: 120 MHz C28x, 256 kB of flash, 36 kB of RAM.

TMS320F2800137120 MHzLAUNCHXL-F2800137

Quick facts

BoardLAUNCHXL-F2800137
ChipTMS320F2800137
CoreC28x with FPU and TMU (trig and divide hardware)
Clock120 MHz
Flash256 kB
RAM36 kB
RadioNone
Notable peripherals14 PWM channels; 2 x 12-bit ADC; 4 comparators; 1 encoder input, 2 capture inputs; 3 UART, 1 SPI, 2 I2C, 1 CAN; 38 GPIO pins
On-board debug probeBuilt into the board
Where to buyTI.com
Toolchains that ranTI compilers

Get it running

  1. Build the LED example.

    cp -R /Applications/ti/c2000ware_core_26_02_00_00/driverlib/f280013x/examples/led /tmp/led_ex1_blinky c2000-launchpad/tools/c2kbuild.sh /tmp/led_ex1_blinky RAM
  2. Load it and read the LED pin.

    /Applications/ti/ccs2101/ccs/scripting/run.sh c2000-launchpad/tools/c2krun.js /tmp/led_ex1_blinky/build-RAM-Ooff/led_ex1_blinky.out blink

Replace the parts in angle brackets. Run it from the terminal in VS Code, CCStudio or any IDE.

You should see: the runner samples GPIO20 eight times and prints the readings.

What works

  • CoreMark: 155.31 (1.294 per MHz) (TI C2000 compiler, from RAM; 120 MHz)
  • Interrupt latency, pend to first handler line: 30 cycles (bare metal; 120 MHz)
  • GPIO toggle: 1.56 cycles (120 MHz)
  • Blink image size: 8.4 kB of flash, 1.5 kB of RAM (bare metal)
  • Room-occupancy AI model, one inference: 1.114 ms (from RAM; 120 MHz; 5 runs)
  • Control loop, trigger to new PWM value: 2.15 µs (from flash; 120 MHz; 1000 runs)
  • 256-point complex FFT: 0.106 ms (from flash; 120 MHz; 5 runs)
  • AES-128: 395.35 cycles/B in software (TI Arm Clang, from RAM; 120 MHz)
  • Fastest ADC with DMA: 3.98 Msps (same with a 9-cycle sample window; 120 MHz)
  • Vendor examples that build from a terminal: 100%

Download every result for this board (CSV), or compare it on this board on the Benchmarks page.

Projects and ports that ran here

Want wireless? Try the LP-EM-CC2340R5 for Bluetooth, Zigbee or Thread or the LP-EM-CC35X1 for Wi-Fi.

Fixes

  • If you see error #20: identifier "uint8_t" is undefined, put typedef unsigned char uint8_t; before the library's headers.
  • If you see error #145: a value of type "char [772]" cannot be used to initialize an entity of type "const uint8_t [772]" (u8g2), use the unsigned char typedef, not the uint16_t one.
  • If you see warning #64-D: shift count is too large, write 1UL << n (1L << shift in BitNetMCU).
  • If you see ERROR: ee_u16 is not a 16b datatype!, use this repo's three-change patch; the score is then unofficial.
  • If you see unresolved symbols remain naming code_start (F2800137), add f280013x_codestartbranch.asm, --abi=eabi and every .c SysConfig writes.
  • If you see unresolved symbols remain naming TransferRingBuffer_init, add utilities/transfer/source/transfer_ringbuffer.c.
  • If you see Operation was aborted on 'C28xx_CPU1' on lpm_ex3_standbywake_gpio or lpm_ex5_haltwake_gpio, press the wake-up button or reset.
  • If you see (Error -261 @ 0x0) Invalid response was received from the XDS110, retry the load.

Every fix for this board, with the exact error text

How long an AI assistant took here

1 jobs timed with an AI coding assistant on this board, given the board's notes. Time is the median of the runs; passed means a person or a script checked the result. No spend or token counts here.

JobAssistantNotes givenTimePassed
port gamepadSonnet 5.5with the board's notes9.9 minnot checked

For AI assistants

Point your assistant at this board's AGENTS.md (build, flash and fix notes), this board's llms-full.txt (every page for the board in one file) and the repository's llms.txt (the index).

Sources: c2000-launchpad/README.md, c2000-launchpad/AGENTS.md, c2000-launchpad/FAQ.md, data/results/f2800137.csv, site/data/portfolio.json, site/data/projects.json, site/data/ports.json.