Tip / ログイン to post questions, reply, level up, and achieve exciting badges. Know more

cross mob

PSoC 4 カスタム ブートローダーについて- KBA229075 - Community Translated (JA)

PSoC 4 カスタム ブートローダーについて- KBA229075 - Community Translated (JA)

ChaitanyaV_61
Employee
Employee
50 questions asked 25 likes received 25 sign-ins

Community Translated by YoOb_1790021           Version: **

Translation - English: PSoC 4 Custom Bootloader - KBA229075

PSoC® 4 ブートローダー コンポーネント は、独自の ブートローダー インターフェースを開発するための カスタム インタフェースを提供します。図1が、その設定です。

図1.ブートローダー カスタム インターフェイス

pastedImage_5.png

I2C 或いは UART インターフェースを ブートローダー プロジェクト の開発に使用する場合、図2にリストされている関数が PSoC Creator によって自動生成されます。

しかしながら、ブートローダー コンポーネント のブートローディング プロトコルに従ってブートローダー コンポーネント のカスタム インタフェースを使用する場合には、図2に記載されている関数の定義とコードを追加する必要がありあます。ブートローダーのフローと関数の詳細については、Bootloader and Bootloadable コンポーネントのデータシートを参照してください。

図2.デフォルトブートローダーに必要な機能

pastedImage_15.png

ブートローダー コンポーネントによって生成された関数の使用に加えて、独自ののブートローディング プロトコルを定義できます。この場合、簡単な方法は次の様になります:

  • ブートローダー コンポーネント(カスタム インターフェースとして構成)をリンクファイルにブートローダー とアプリケーション のROM セクションとスタートポインタを確定するために使用します。
  • 図2のダミー関数を定義します

基本ブートローディング フローは、図3になります。 図3.ブートローディング フローの概要pastedImage_25.png ハンドシェイク、データの読み込み、フラッシュへのデータ書き込み、およびチップリセットを行う独自の API を定義しなくてはならないことに注意してください。 ホストとPSoCデバイスのハンドシェイク用のAPIは、CyDelay() またはタイマー コンポーネントを使用してタイムアウトを設定できます。 ホストからデータを読み取るAPIは、通信インターフェースによって異なります。ほとんどの PSoC 4シリーズでは、内部フラッシュは128バイトを最小ブロックとして構成されています。つまり、コードフラッシュのアトミックなプログラム単位(不可分プログラム単位)と消去単位は、128バイトです。 フラッシュにデータを保存する APIは、PSoC Creator によって生成された CySysWriteFlashRow() 関数を使用できます。 デバイスをリセットする APIは、PSoC Creator によって生成された CySoftwareReset() 関数を使用できます。 詳細については、サイプレスコミュニティにアクセスするか、サイプレスセールスにお問い合わせください。 参照文書:

0 件の賞賛
187 件の閲覧回数
寄稿者