圏9研究所 工作室

圏9研究所の開発情報資料など

AT32F403A BlackPill:その1 Core Board とチップ

BlackPill は BluePill Core Board の上位ボードとしてSTMマイクロの STM32F411 を搭載したボードがあります
ここでは少々変わったチップが搭載されているBlackPill Core Board があるので調べてみます

1.概要
 WeAct社製 Webact at32f403acgu7 at32f4 at32 blackピルコアボード学習ボードdemoボード

2.ボード詳細
 ボードピンは 5VとSWDリセットを除いてBluePillコンパチと推定
 ・AT32F403ACGU7 Cortex-M4F 240MHz 、96/128KB RAM、256 + 768KB ROM
 ・8MHz 水晶発振器、32.768KHz 水晶振動子
 ・USB-C
 ・SWDデバッグピン 5P(リセットピン追加)
 ・リセットキー、Boot0キー、ユーザーキー
 ・LEDインジケータ 電源、ポート出力

3. AT32F403ACGU7
1)概要
 2016年に重慶で設立された ARTERY Technology (雅特力科技)社のアームCortex-M4搭載チップ

www.arterytek.com

2)構成概略
 Migrating from SXX32F103 to AT32F403A MG0007 Migration Guide
 がわかりやすいので要約すると
 ・SXX32F103と互換性があるが一部は若干異なる
 ・Cortex-M4F搭載
 ・ピン配置置き換え可
 ・内蔵周辺機能上位互換

4.IDE開発手順
  ARTERY Technology 社の開発ツールもあるようですが macOS版がないこともあり下記で進める

1)コーディング: STM32CubeIDE(MX)
 ・STM32F103RGT6 64Pin と比較して 48Pinで不足するピン割り当て関連機能を除いてバイナリーレベルで上位互換と推定される
  コンパイルしてそのまま書き込めば動くみたい
 ・STM32CubeIDE(MX)を使ってSTM32F103RGT6でプロジェクトを作成しコードを書く
 ・STM32CubeMXで設定できない拡張機能の設定はレジスタに直接書き込む

2)書込み: MINI ST-LINK V2 + openOCD + IDCODEコンバーター
 ・コアが異なることもありopenOCDを使ってSTM32F1xの設定では書き込めない
 ・前に作ったIDCODEコンバーターを使ってチップから返ってくるCortex-M4のIDCODEをM3に変換して書き込めるようにする

3)STM32F103との比較詳細
 STM32F103RGT6 64Pin と比較して 48Pinで不足するピン割り当て関連機能を除いてバイナリーレベルで上位互換と推定

比較するチップ

パッケージ

Core

周辺

コード

バイナリー

STM32F103RGT6

64Pin48Pin

M3M4F

上位互換(PC0〜12除く)

STM32F103CBT

48Pin

M3M4F

上位互換

非互換

5.補足等
1)チップについて
 互換チップのお手本のような構成
 ・STM32F103シリーズに対して回路基板を変えずに置き換えられる
 ・コアも含め可能な限り上位互換でシステムクロックは最大3.33倍
 ・コアがバイナリー上位互換のこともありチップとしてもバイナリー上位互換

2)ボードについて
 チップと同じくBluePill上位互換
 ・コードレベルで上位互換
 ・ボードピン配置はBlackPill互換のためBluePillとは異なる
  5Vピンに注意

3)開発ツール
 コアが異なるので何がしか対応が必要

4)参考資料
・Migrating from SXX32F103 to AT32F403A MG0007 Migration Guide

・AT32F403A/407 Series Reference Manual

・RM0008 Reference manual
 STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and STM32F107xx advanced Arm®-based 32-bit MCUs