ちょいちょい書いていますが、murasakiという名前のクラス・ライブラリを開発しています。目標としては、SDRで使うためにある程度のリアルタイム性を持たせ、RTOSと使用することを前提としています。
STM32
STM32 HALのHAL_I2C_Mem_Read
STM32シリーズマイコンのHALには、I2Cペリフェラル用APIとしてHAL_I2C_Mem_*()というものがあります。例えば以下のようなものです。 HAL_I2C_Mem_Write() HAL_I2C_Mem_R … 続きを読む
Cortex-M7コアのステップ実行問題
STMicroelectronicsのcommunity news letterを読んでいたら、自分が悩まされているデバッガのステップ実行についてのスレッドがありました。
ST-LinkのファームウェアをJ-Linkのファームで書き換えれば解決するとのこと。
CubeMXでメモリ設定するときの困惑
作成中のクラスライブラリですが、メモリ量が少ないNucleo F303K8に載せてみてえらく苦労することになりました。
結論から書くとメモリ管理がシビアになるため、決め打ちでサイズを決めると痛い目に遭いそうです。
STM32のUARTをDMAで使う時の注意
CMSIS-RTOSとFREERTOS
CubeMXが生成するコードには、FREERTOSを含めることができます。ブロッキングIO処理等RTOSを使わないと実現が難しい機能を作り込む上で大変重宝します。
ただ、CubeMXが生成するコードを見ると、どうやらFREERTOSを生で使わせずにCMSIS-RTOSのラッパー越しに使わせたいようです。となると、CMSIS-RTOSの詳細を調べておかなければなりません。ここひと月ほどFREERTOSの実装や詳細をちょこちょこ調べていましたが、それなりに技術情報はあるのでなんとかなりました。しかしCMSIS-RTOSはどうでしょうか。
CubeMXでLチカ
CubeMXに慣れるために、LEDチカチカを作ってみました。ホストOSはLinux、ターゲットはNucleo F722です。ビルドはSW4STM32を使います。
なお、CubeMXのオンラインマニュアルは非常に良く書かれています。一度通して読んだ方がいいでしょう。300ページも有りますが、1300ページ有るリファレンス・マニュアルを精読するよりも楽です。
CubeMXはじめました
STMicroelectronixは同社のARM CORTEX-M マイコンSTM32シリーズ用に、STM32CubeMX、SW4STM32というソフトウェアをリリースしています。最近この2つのソフトウェアを触り始めました。
以下、メモ代わりにあれこれ書いておきます。