TWR-K21D50M 低電力パッチ<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
改訂0.2 - 2012/8/28
注: MQX v4.0.2 用のこのパッチの更新については、TWR-K21D50M v4.0.2 用の低電力 MQX パッチを参照してください。
このパッチは、twrk21d50m BSP 上の MQX で低電力の例を使用する際のいくつかの問題に対処します。この低電力例は、MQX Low-Power Manager (LPM) ドライバのデモと、K21 ボードの低電力モードの変更を示すために提供されています。MQX v4.0 で提供される BSP には、これらの低電力モードと低電力の例に干渉するいくつかの問題があります。
このパッチを使用するには、パッチ・ディレクトリーを MQX v4.0 ルート・ディレクトリーにコピーします。このパッチは、MQXインストール内の一部の既存のファイルを上書きします。この更新プログラムによって解決される変更は次のとおりです。
- User_config.h
- MQX_ENABLE_LOW_POWER マクロが有効になりました。LPM ドライバーと低電力の例に必要です。
- VLPR クロック構成分周器
- SIM_CLKDIV1 レジスタのクロック分周器をアップデートして、コア/システム/バスのクロック周波数を 1MHz ではなく 2MHz に設定しました。bsp_cm.cのCpu_SetClockConfiguration()を変更しました。VLPR モードで端末に印刷される文字のボー レートが正しくない低電力の例の問題を修正します。
- LPM動作モードのUART設定
- BSP の LPM 動作モードの UART2 (TTYC) の設定が正しくありません。MQX_ENABLE_LOW_POWER がイネーブルの場合、Run モードで UART2 が無効になり、バス エラー例外が発生し、main() が入力される前に BSP の起動が停止します。変更init_sci.c
- 内部発振器のトリム値の上書き
- BSP は、内部発振器の工場でトリミングされた設定を使用していませんでした。BSP は、ユーザー トリム値が 1 0x3FE と 0x3FF に格納されるように構成されています。BSP はこれらのフラッシュ ロケーションをチェックし、0xFFで消去されない場合は、これらのロケーションを MCG トリム レジスタに書き込みます。問題は、ベクトル テーブルが 0x3FC でベクトル位置を埋め、BSP をだましてユーザー トリム値が存在すると思い込ませることです。vector.c を変更して最終ベクトルを 0xFFFFFFFF に置き換え、BSP に工場出荷時のトリム設定を保持するように強制しました。VLPR モードで端末に印刷される文字のボー レートが正しくない低電力の例の問題を修正します。
- ストップモードに入るときにクロックモニターを無効にしました
- BSP ではクロック モニタが BSP で有効になっており、停止モードに入る前に無効にされませんでした。これにより、低電力の例が LLS モードから適切に回復できなくなります。lpm_smc.cの_lpm_set_cpu_operation_mode()を変更して、停止モードに入る前にCMEビットをクリアし、ウェイクアップ後にCME設定を元に戻すようにしました。
- SPI0 ペリフェラルを無効にしてから、ストップ モードに入る
- 低電力の例は、停止モードの開始を中止し、停止モードに入らなかったことです。この問題は、SPI0 ペリフェラルが LLS モードへの入力を妨げていることが原因で発生していました。lpm_smc.c の _lpm_set_cpu_operation_mode() を変更して、停止モードに入る前に SPI0 クロック ゲートを無効化し、ウェイクアップ後に再度有効化するようにしました。SPI0ペリフェラルがストップモードで必要な場合は、SPIドライバーをLPMドライバーに登録して、LPMが動作モードを停止モードに変更したときに適切に構成します。詳細については、LPM のドキュメントを参照してください。
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
改訂0.2 - 2012/8/28
注: MQX v4.0.2 用のこのパッチの更新については、TWR-K21D50M v4.0.2 用の低電力 MQX パッチを参照してください。
このパッチは、twrk21d50m BSP 上の MQX で低電力の例を使用する際のいくつかの問題に対処します。この低電力例は、MQX Low-Power Manager (LPM) ドライバのデモと、K21 ボードの低電力モードの変更を示すために提供されています。MQX v4.0 で提供される BSP には、これらの低電力モードと低電力の例に干渉するいくつかの問題があります。
このパッチを使用するには、パッチ・ディレクトリーを MQX v4.0 ルート・ディレクトリーにコピーします。このパッチは、MQXインストール内の一部の既存のファイルを上書きします。この更新プログラムによって解決される変更は次のとおりです。
- User_config.h
- MQX_ENABLE_LOW_POWER マクロが有効になりました。LPM ドライバーと低電力の例に必要です。
- VLPR クロック構成分周器
- SIM_CLKDIV1 レジスタのクロック分周器をアップデートして、コア/システム/バスのクロック周波数を 1MHz ではなく 2MHz に設定しました。bsp_cm.cのCpu_SetClockConfiguration()を変更しました。VLPR モードで端末に印刷される文字のボー レートが正しくない低電力の例の問題を修正します。
- LPM動作モードのUART設定
- BSP の LPM 動作モードの UART2 (TTYC) の設定が正しくありません。MQX_ENABLE_LOW_POWER がイネーブルの場合、Run モードで UART2 が無効になり、バス エラー例外が発生し、main() が入力される前に BSP の起動が停止します。変更init_sci.c
- 内部発振器のトリム値の上書き
- BSP は、内部発振器の工場でトリミングされた設定を使用していませんでした。BSP は、ユーザー トリム値が 1 0x3FE と 0x3FF に格納されるように構成されています。BSP はこれらのフラッシュ ロケーションをチェックし、0xFFで消去されない場合は、これらのロケーションを MCG トリム レジスタに書き込みます。問題は、ベクトル テーブルが 0x3FC でベクトル位置を埋め、BSP をだましてユーザー トリム値が存在すると思い込ませることです。vector.c を変更して最終ベクトルを 0xFFFFFFFF に置き換え、BSP に工場出荷時のトリム設定を保持するように強制しました。VLPR モードで端末に印刷される文字のボー レートが正しくない低電力の例の問題を修正します。
- ストップモードに入るときにクロックモニターを無効にしました
- BSP ではクロック モニタが BSP で有効になっており、停止モードに入る前に無効にされませんでした。これにより、低電力の例が LLS モードから適切に回復できなくなります。lpm_smc.cの_lpm_set_cpu_operation_mode()を変更して、停止モードに入る前にCMEビットをクリアし、ウェイクアップ後にCME設定を元に戻すようにしました。
- SPI0 ペリフェラルを無効にしてから、ストップ モードに入る
- 低電力の例は、停止モードの開始を中止し、停止モードに入らなかったことです。この問題は、SPI0 ペリフェラルが LLS モードへの入力を妨げていることが原因で発生していました。lpm_smc.c の _lpm_set_cpu_operation_mode() を変更して、停止モードに入る前に SPI0 クロック ゲートを無効化し、ウェイクアップ後に再度有効化するようにしました。SPI0ペリフェラルがストップモードで必要な場合は、SPIドライバーをLPMドライバーに登録して、LPMが動作モードを停止モードに変更したときに適切に構成します。詳細については、LPM のドキュメントを参照してください。
日時:TWR-K21D50M低電力パッチ<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
この修正により UART2 が修正されますが、SCI0 (UART0) では修正が機能しないと思います。