Announcements

Equip yourself to optimize PSoc4 MCUs for Evs at the EV Webinar. Click here to register.

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

PSoC™ 4 Forum Discussions

kiyo
Level 2
Level 2
10 replies posted First like given 5 questions asked

WDTについてしえて下さい。

Low Frequency ClocksでILO,WCOを有効にしてLFCLKはILOを選択しています。

LFCLKはBLEとWDTで使用しています。

 

本来は、LFCLKをWCOとしたいのですがそうすると500msのWAITが入ってしまいイニシャル時の他との通信が間に合わないのでそのようにしています。

他との通信終了後にLFCLKをILO→WCOに変更しています。

 

CySysWdtDisable(CY_SYS_WDT_COUNTER0_MASK); → 他との通信の際にはWDTはいらないので無効にする。

他との通信処理

CySysClkSetLfclkSource(CY_SYS_CLK_LFCLK_SRC_WCO); → ILO→WCOに切替え

CySysClkIloStop(); → ILOを停止

CySysWdtEnable(CY_SYS_WDT_COUNTER0_MASK); → WDTを有効にする。

while(1);

 

上記だとWDTがかかりません。

CySysClkSetLfclkSourceとCySysClkIloStopをコメントにするとWDTがかかります。

おそらくWDTのソースをILO→WCOに変更するような処理が必要なのだと思いますがどのように変更すれば宜しいでしょうか?

0 Likes
1 Solution
AikoO_51
Moderator
Moderator
Moderator
100 sign-ins First question asked 50 solutions authored

CYBLE-222014-01であれば、WCOをWDTに使用していただいて問題ありません。

加えて、WCOが起動していない可能性がございます。

WCO使用時に、CySysClkWcoStart()は呼び出されておりますでしょうか。

必要となるAPIについては、以下のKBAをご参照ください。

https://community.infineon.com/t5/Knowledge-Base-Articles/PSoC-4-PRoC-BLE-WCO-%E7%94%A8%E5%A4%96%E9%...

Aiko Ohtaka
Infineon Technologies

View solution in original post

0 Likes
5 Replies
AikoO_51
Moderator
Moderator
Moderator
100 sign-ins First question asked 50 solutions authored

WDTを使用する際にはまず、IgnoreBitやMatch値を設定やInterruptのクリアをする必要があります。WDTの実装に必要となるAPIと一連の流れについては一度Code Exampleにてご確認ください。
https://github.com/Infineon/mtb-example-psoc4-wdt/blob/master/README.md

Aiko Ohtaka
Infineon Technologies
0 Likes
kiyo
Level 2
Level 2
10 replies posted First like given 5 questions asked

このExampleのmain.cで使用されている関数はどこを見れば詳細がわかるのでしょうか?

例えば、Cy_WDT_ClearInterrupt,Cy_WDT_UnmaskInterrupt,Cy_WDT_SetMatchなどです。

0 Likes
AikoO_51
Moderator
Moderator
Moderator
100 sign-ins First question asked 50 solutions authored

まず初めにどちらのデバイスを使用されているかご確認させていただいてもよろしいでしょうか。

デバイスによってはWDTにWCOを使用できない場合がございます。

Aiko Ohtaka
Infineon Technologies
0 Likes
kiyo
Level 2
Level 2
10 replies posted First like given 5 questions asked

CYBLE-222014-01になります。

0 Likes
AikoO_51
Moderator
Moderator
Moderator
100 sign-ins First question asked 50 solutions authored

CYBLE-222014-01であれば、WCOをWDTに使用していただいて問題ありません。

加えて、WCOが起動していない可能性がございます。

WCO使用時に、CySysClkWcoStart()は呼び出されておりますでしょうか。

必要となるAPIについては、以下のKBAをご参照ください。

https://community.infineon.com/t5/Knowledge-Base-Articles/PSoC-4-PRoC-BLE-WCO-%E7%94%A8%E5%A4%96%E9%...

Aiko Ohtaka
Infineon Technologies
0 Likes