省RAM型BootLoaderの設計と実装

省RAM型BootLoaderとは 省RAM型BootLoaderは、外部メモリを使わずにファームウェア更新を完結させる方式である。 更新イメージはアプリケーションフラッシュ領域に直接書き込むため、RAM や外部ストレージを追加する必要がない。 一方で、更新失敗時にアプリケーションが消失するリスクがあり、失敗検知とリカバリ機構が必須となる。 省RAM型と二領域型の比較 観点 ...

7月19日 17:08 投稿

FreeRTOSにおけるタスク作成とクリティカルセクションの基礎

タスクとは何か FreeRTOSにおけるタスクは、戻り値を持たず、無限ループで実行されるC言語関数として定義される。この関数は一度開始されると終了せず、システムのシャットダウンまたは明示的な削除まで継続的に動作する。 タスクの構成要素 1. タスクスタック ベアメタル環境では全関数が共通のスタックを使用するが、RTOS環境では各タスクが独自のスタック領域を持つ。 ...

7月12日 18:57 投稿

8051マイクロコントローラでのUART通信プロトコル実装

概要 本稿では、8051マイクロコントローラ(MCU)のシリアルインターフェース(UART)を使用し、ホストコンピュータとの間でデータ通信を行うシステムの構築方法について解説します。通信仕様は、モード1(8ビットUART)、ボーレート9600bpsとします。データ送信はポーリング方式、受信は割り込み方式を採用し、LEDの制御およびシステム状態の返信を行うプロトコルを実装し ...

6月21日 01:24 投稿