PSoC 4 カスタム ブートローダーについて- KBA229075 - Community Translated (JA)
- RSS フィードを購読する
- 新着としてマーク
- 既読としてマーク
- ブックマーク
- 購読
- 印刷用ページ
- 不適切なコンテンツを報告
Community Translated by YoOb_1790021 Version: **
Translation - English: PSoC 4 Custom Bootloader - KBA229075
PSoC® 4 ブートローダー コンポーネント は、独自の ブートローダー インターフェースを開発するための カスタム インタフェースを提供します。図1が、その設定です。
図1.ブートローダー カスタム インターフェイス
I2C 或いは UART インターフェースを ブートローダー プロジェクト の開発に使用する場合、図2にリストされている関数が PSoC Creator によって自動生成されます。
しかしながら、ブートローダー コンポーネント のブートローディング プロトコルに従ってブートローダー コンポーネント のカスタム インタフェースを使用する場合には、図2に記載されている関数の定義とコードを追加する必要がありあます。ブートローダーのフローと関数の詳細については、Bootloader and Bootloadable コンポーネントのデータシートを参照してください。
図2.デフォルトブートローダーに必要な機能
ブートローダー コンポーネントによって生成された関数の使用に加えて、独自ののブートローディング プロトコルを定義できます。この場合、簡単な方法は次の様になります:
- ブートローダー コンポーネント(カスタム インターフェースとして構成)をリンクファイルにブートローダー とアプリケーション のROM セクションとスタートポインタを確定するために使用します。
- 図2のダミー関数を定義します
基本ブートローディング フローは、図3になります。 図3.ブートローディング フローの概要 ハンドシェイク、データの読み込み、フラッシュへのデータ書き込み、およびチップリセットを行う独自の API を定義しなくてはならないことに注意してください。 ホストとPSoCデバイスのハンドシェイク用のAPIは、CyDelay() またはタイマー コンポーネントを使用してタイムアウトを設定できます。 ホストからデータを読み取るAPIは、通信インターフェースによって異なります。ほとんどの PSoC 4シリーズでは、内部フラッシュは128バイトを最小ブロックとして構成されています。つまり、コードフラッシュのアトミックなプログラム単位(不可分プログラム単位)と消去単位は、128バイトです。 フラッシュにデータを保存する APIは、PSoC Creator によって生成された CySysWriteFlashRow() 関数を使用できます。 デバイスをリセットする APIは、PSoC Creator によって生成された CySoftwareReset() 関数を使用できます。 詳細については、サイプレスコミュニティにアクセスするか、サイプレスセールスにお問い合わせください。 参照文書: