Difference between revisions of "ArteryTek AT32F43x"

From SEGGER Wiki
Jump to: navigation, search
(Internal Flash)
 
(15 intermediate revisions by the same user not shown)
Line 1: Line 1:
  +
ArteryTek AT32F43x are Cortex-M4 based MCUs
__TOC__
 
The Artery AT32F43x are Cortex-M4 based MCUs.
 
 
==Internal Flash==
 
===Supported Regions===
 
 
The internal flash is divided into 3 different regions:
 
*Main storage area starting at 0x08000000 with up to 4032KB
 
*Reserved bootloader area starting at 0x1FFF0000 with 16KB
 
*User system data starting at 0x1FFFC000 with 4KB
 
For now, the J-Link supports the main storage from V7.88l.
 
 
==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
 
https://wiki.segger.com/Artery_AT-START_F435
 
 
 
Artery AT32F43x are Cortex-M4 based MCUs
 
 
__TOC__
 
__TOC__
   
Line 29: Line 10:
 
| Internal flash || 0x08000000 || Up to 4096 KB || style="text-align:center;"| {{YES}}
 
| Internal flash || 0x08000000 || Up to 4096 KB || style="text-align:center;"| {{YES}}
 
|-
 
|-
| QSPI1 flash || 0x90000000 || Up to 64 MB || style="text-align:center;"| {{YES}}
+
| User data || 0x1FFFC000 || 4 KB || style="text-align:center;"| {{YES}}
|-
 
| QSPI2 flash || 0xB0000000 || Up to 64 MB || style="text-align:center;"| {{NO}}
 
 
 
|}
 
|}
 
====ECC Flash [OPTIONAL]====
 
*Describe ECC Flash restriction here.
 
   
 
===QSPI Flash===
 
===QSPI Flash===
 
QSPI flash programming requires special handling compared to internal flash. For more information about this, please see the [[QSPI Flash Programming Support | QSPI Flash Programming Support article]].<br>
 
QSPI flash programming requires special handling compared to internal flash. For more information about this, please see the [[QSPI Flash Programming Support | QSPI Flash Programming Support article]].<br>
J-Link supports multiple pin configurations for [DEVICE]. The default loader is marked in '''bold'''.
+
J-Link supports multiple pin configurations for AT32F43x. The default loader is marked in '''bold'''.
 
{| class="seggertable"
 
{| class="seggertable"
 
|-
 
|-
 
! Device !! Base address !! Maximum size !! Supported pin configuration
 
! Device !! Base address !! Maximum size !! Supported pin configuration
 
|-
 
|-
  +
| '''QSPI1'''<br>
| [DEVICE]|| [BANK_BASE_ADDRESS] || [MAX_SPI_FLASH_SIZE] MB ||
 
  +
AT32F435<br>
*'''[LOADER_NAME]'''
 
  +
AT32F437
*[LOADER_NAME]
 
  +
|| 0x90000000 || Up to 64 MB ||
*[LOADER_NAME]
 
  +
*'''CLK@PF10 CS@PG6 IO0@PF9 IO1@PF8 IO2@PF7 IO3_@PF6'''
 
|}
 
|}
 
==ECC RAM [OPTIONAL]==
 
*Describe ECC RAM restriction here.
 
 
==Vector Table Remap [OPTIONAL]==
 
*Describe Vector Table Remap here..
 
   
 
==Watchdog Handling==
 
==Watchdog Handling==
*The device does not have a watchdog.
 
*The device has a watchdog [WATCHDOGNAME].
 
 
*The watchdog is fed during flash programming.
 
*The watchdog is fed during flash programming.
*If the watchdog is enabled, it is turned off during flash programming and turned back on afterwards.
 
 
==Multi-Core Support [OPTIONAL]==
 
Before proceeding with this article, please check out the generic article regarding Multi-Core debugging [[Multi-Core_Debugging | here]].<br>
 
The [DeviceFamily]family comes with a variety of multi-core options.<br>
 
Some devices from this family feature a secondary core which is disabled after reset / by default.<br>
 
Some of the are available with enabled ''lockstep'' mode, only. <br>
 
In below, the debug related multi-core behavior of the J-Link is described for each core:
 
===Main core===
 
====Init/Setup====
 
*Initializes the ECC RAM, see [[XXX | XXX]]
 
*Enables debugging
 
====Reset====
 
*Device specific reset is performed, see [[XXX | XXX]]
 
====Attach====
 
*Attach is not supported because the J-Link initializes certain RAM regions by default
 
===Secondary core(s)===
 
====Init/Setup====
 
*If the main core session has not been started / debugging is not enabled yet, the secondary core executes the enable debug sequence.
 
*If the secondary core is not enabled yet, it will be enabled / release from reset
 
====Reset====
 
No reset is performed.
 
====Attach====
 
*Attach is supported / desired
 
   
 
==Device Specific Handling==
 
==Device Specific Handling==
 
===Connect===
 
===Connect===
  +
*On Connect, protection level is checked. For further information regarding this, please click [[ArteryTek_AT32| here]].
  +
 
===Reset===
 
===Reset===
 
*The device uses normal Cortex-M reset, no special handling necessary, like described [[J-Link_Reset_Strategies#Type_0:_Normal | here]].
 
*The device uses normal Cortex-M reset, no special handling necessary, like described [[J-Link_Reset_Strategies#Type_0:_Normal | here]].
*The device uses Cortex-M Core reset, no special handling necessary, like described [[J-Link_Reset_Strategies#Type_1:_Core | here]].
 
*The device uses Cortex-M Rest Pin, no special handling necessary, like described [[J-Link_Reset_Strategies#Type_2:_ResetPin | here]].
 
*The device uses Cortex-A reset, no special handling necessary, like described [[J-Link_Reset_Strategies#Strategies for Cortex-A devices | here]].
 
*The device uses Cortex-R reset, no special handling necessary, like described [[J-Link_Reset_Strategies#Strategies for Cortex-R devices | here]].
 
*The device uses ARMv8-A reset, no special handling necessary, like described [[J-Link_Reset_Strategies#Strategies for ARMv8-A devices | here]].
 
*The device uses ARMv8-R reset, no special handling necessary, like described [[J-Link_Reset_Strategies#Strategies for ARMv8-R devices | here]].
 
*The device uses custom reset:.....
 
 
==Limitations==
 
===Dual Core Support===
 
Some XXX devices feature a second core. Right now, the J-Link software does support the main core, only. Support for the second core is planned for future versions.
 
===Attach===
 
Attach is not supported by default because the J-Link initializes certain RAM regions by default.
 
===Security===
 
   
 
==Evaluation Boards==
 
==Evaluation Boards==
*[[Artery_AT-START-F435|Artery AT-START-F435]]
+
*[[ArteryTek_AT-START-F435|ArteryTek AT-START-F435]]
*[[Artery_AT-START-F437|Artery AT-START-F437]]
+
*[[ArteryTek_AT-START-F437|ArteryTek AT-START-F437]]
   
 
==Example Application==
 
==Example Application==
*[[Artery_AT-START-F435#Example_Project | Artery AT-START-F435]]
+
*[[ArteryTek_AT-START-F435#Example_Project | ArteryTek AT-START-F435]]
*[[Artery_AT-START-F437#Example_Project | Artery AT-START-F437]]
+
*[[ArteryTek_AT-START-F437#Example_Project | ArteryTek AT-START-F437]]

Latest revision as of 13:00, 18 March 2024

ArteryTek AT32F43x are Cortex-M4 based MCUs

Flash Banks

Internal Flash

Flash Bank Base address Size J-Link Support
Internal flash 0x08000000 Up to 4096 KB YES.png
User data 0x1FFFC000 4 KB YES.png

QSPI Flash

QSPI flash programming requires special handling compared to internal flash. For more information about this, please see the QSPI Flash Programming Support article.
J-Link supports multiple pin configurations for AT32F43x. The default loader is marked in bold.

Device Base address Maximum size Supported pin configuration
QSPI1

AT32F435
AT32F437

0x90000000 Up to 64 MB
  • CLK@PF10 CS@PG6 IO0@PF9 IO1@PF8 IO2@PF7 IO3_@PF6

Watchdog Handling

  • The watchdog is fed during flash programming.

Device Specific Handling

Connect

  • On Connect, protection level is checked. For further information regarding this, please click here.

Reset

  • The device uses normal Cortex-M reset, no special handling necessary, like described here.

Evaluation Boards

Example Application