embedded

組み込み

一読しとこう
組み込みの門

通称マイコン
stm32

主にCortex-Mマイコンが対象
CrashCatcher
bloaty
puncover
checkStackUsage
linkermapviz

  • Hardfaultトラップ
  • 用法フォールトトラップ(アンアラインドアクセス、ゼロ割を想定)
  • CPPUTest環境
  • printf環境
  • シェル環境

組み込みシステムにおいて、プログラム本体はFlashメモリに、変数はRAMに格納される事が多い。標準的なマイコンではRAM領域は起動時に0クリアするようなコードが記載されている。stm32の場合はアセンブリファイルに記載されている。
ここでデバッグのためにわざと0クリアしない領域を確保することが便利なこともある。
例えば、致命的なエラーやウォッチドッグなどに再起動をしたとき、何が原因だったかを保存しておいたものを出力するなど。
Pocket article: How to implement and use `.noinit` RAM

参考文献

  • embedded.txt
  • 最終更新: 2024/06/04
  • by yuqlid