
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
PDL v2.x vbat.hが間違ったVBOOST値を定義する - KBA225144 - Community Translated (JA)
Community Translated by NoTa_4591161 Version: **
Translation - English: PDL v2.x vbat.h Defines Wrong VBOOST Values - KBA225144
質問:
VBOOST値に特定の定義を使用すると、予期しない結果が発生します。この問題の回避策はありますでしょうか?
回答:
VBOOST値は、FMパーツのバッテリードメインのクロックブースト時間を設定するために使用されます。これらの定数はvbat.hで定義されています。
typedef enum en_clk_boost_time
{
ClkBoost50ms = 0u, ///< ブースト時間50 ms(初期値)
ClkBoost63ms = 1u, ///< ブースト時間62.5 ms
ClkBoost125ms = 2u, ///< ブースト時間125 ms
ClkBoost250ms = 3u ///< ブースト時間250 ms
} en_clk_boost_time_t;
これらの定数はvbat.cといくつかのコード例で使用されています。このコードには2つの問題があります。
まず、50 msのブーストはありませんが、500 msのブーストがあります。他のブーストオプションを使用できます。
ただし、2番目の問題は、定義された値が正しくないことです。各値は1ずつずれています。ドキュメントにもこのエラーが反映されています。たとえば、en_clk_boost_time_tの説明は、上記のコードに基づいています。
回避策
正しいブースト時間を設定するには、Vbat_Init()の呼び出しのコンフィグレーション構造でこれらの定数を使用します。
取得するため | この定数を使用 |
62.5ミリ秒 | ClkBoost50ms |
125ミリ秒 | ClkBoost63ms |
250ミリ秒 | ClkBoost125ms |
500ミリ秒 | ClkBoost250ms |