Geehy APM32F0xx

From SEGGER Wiki
Jump to: navigation, search

The Geehy APM32F0xx are Cortex-M0+ based MCUs.

Internal Flash

Supported Regions

The internal flash is divided into 2 to 3 different regions:

  • Main storage area with up to 512KB
  • Option byte area with up to 2KB
  • Reserved bootloader area (all but APM32F003)

For now, the J-Link supports the main storage and option byte area.

Option Byte Programming

The APM32F0 series devices provide some option bytes which allow some "permanent" configuration as well as readout protection for the device. The option bytes become effective after a reset, or, if the read protection is set while a debugger is still connected through JTAG/SWD, become effective after a power-on-reset. The sequence, to program the option bytes consists of multiple read / write accesses to special function registers of the APM32F0 MCU.

The option byte area consists of the actual option bytes and their corresponding complementary bytes. All complementary bytes are automatically set when writing the option bytes.

The following tables describes the structure of the option byte sector:

APM32F00x
Address [31:24] [23:16] [15:08] [07:00]
0x00020400 nUOB UOB nREADPROT READPROT
0x00020404 nData1 Data1 nData0 Data0
0x00020408 nWRP1 WRP1 nWRP0 WRP0
0x0002040C nWRP3 WRP3 nWRP2 WRP2
0x00020410 --- --- nAFR AFR
APM32F0xx
Address [31:24] [23:16] [15:08] [07:00]
0x1FFFF800 nUOB UOB nREADPROT READPROT
0x1FFFF804 nData1 Data1 nData0 Data0
0x1FFFF808 nWRP1 WRP1 nWRP0 WRP0
0x1FFFF80C nWRP3 WRP3 nWRP2 WRP2
Note:

Writing a value of 0xFF inside READPROT will read-protect the APM32F0. In order to keep the device unprotected you have to write the correct key value to READPROT.

  • APM32F00x = 0xA5
  • APM32F0xx = 0xAA

Reset

No device specific reset is necessary. The normal Cortex-M reset is performed.

See here for more information: https://wiki.segger.com/J-Link_Reset_Strategies#Type_0:_Normal

Evaluation Boards

Example Application