2020年3月

マイコンの基礎固め3

STM32F7マイコンの性能を引き出すために出力セクションをどこに配置するか自分なりに考えた結果をここにまとめておく。 STM32F7のメモリ STM32F7マイコンには5つのメモリがある。FLASH、ITCM、DTCM、SRAM1、SRAM2だ。このうちFLASHがROMに相当し、それ以外はRAMになる。 上の画像においてFLASHメモリの配置場所が0x00200000から始まるものと0x080 […]

マイコンの基礎固め2

今まではSTM32CubeIDEで自動的に生成されるリンカスクリプトにプログラムのメモリへの配置を任せていたが、ここをしっかりやらないとマイコンの性能を引き出せないことが分かった。 そうするとマイコン内に存在するメモリやバスの種類について詳しく知る必要が出てきた。リファレンスマニュアルの2章「System and memory overview」を見ると文書の中の表記と図の表記が微妙に異なっていて […]

マイコンの基礎固め

STM32F7をいじっていて、最適化をかけたりARTを有効にしたりキャッシュを有効にしたりするとプログラムが不安定になることが多々あった。詳しい原因が良く分からないまま全部無効にしたりして場当たり的な対応をしてきたが、結局これでは高額なマイコンの性能を全く生かせないのでじっくり腰を据えて取り組むことにした。 マイコンのメモリにどうプログラムが配置されるのか調べるところから始まって、リンカとは何か、 […]