クロック・ソースを設定します。
[指定形式]
#include "r_cg_macrodriver.h"
#include "r_cg_cgc.h"
MD_STATUS R_CGC_Set_ClockMode ( clock_mode_t mode );
[引数]
I/O |
引数 |
説明 |
I |
clock_mode_t mode; |
クロック・ソースの種類 MAINCLK :メイン・クロック発振器 SUBCLK :サブクロック発振器 PLLCLK :PLL回路 HOCO :高速オンチップ・オシレータ LOCO :低速オンチップ・オシレータ |
[戻り値]
マクロ |
説明 |
MD_OK |
正常終了 |
MD_ERROR1 |
異常終了 |
MD_ARGERROR |
引数 mode の指定が不正 |
使用例
メイン・クロック発振器の停止を検出すると高速オンチップ・オシレータクロックに切り替える
[GUI設定例]
クロック発生回路 |
||||
CGC |
使用する | |||
メインクロック発振器強制発振 |
使用しない | |||
メインクロック発振源 |
発振子 | |||
メインクロック発振源 周波数 |
24(MHz) | |||
|
|
|
発振安定時間 |
11000(μs) (実際の値:11090.909 μs) |
|
|
|
発振停止検出 |
有効 (発振停止検出割り込みを許可) |
|
|
|
OSTDI 優先順位 |
レベル15 |
|
|
|
PLL 動作 |
使用しない |
|
|
|
SubCLK 動作 |
使用しない |
|
|
|
HOCO 動作 |
使用する |
|
|
|
HOCO 周波数 |
16 (MHz) |
|
|
|
LOCO 動作 |
使用する |
|
|
|
LOCO 周波数 |
240 (kHz) |
IWDT 動作 |
使用しない | |||
|
|
|
クロックソース |
メインクロック発振器 |
システムクロック(ICLK) |
x 1/4 6 (MHz) | |||
周辺モジュールクロック(PCLKA) |
x 1/4 6 (MHz) | |||
|
|
|
周辺モジュールクロック(PCLKB) |
x 1/4 6 (MHz) |
|
|
|
周辺モジュールクロック(PCLKC) |
x 1/4 6 (MHz) |
|
|
|
周辺モジュールクロック(PCLKD) |
x 1/4 6 (MHz) |
|
|
|
外部バスクロック選択(BCLK) |
x 1/4 6 (MHz) |
|
|
|
FlashIFクロック(FCLK) |
x 1/4 6 (MHz) |
|
|
|
USBクロック(UCLK) |
x 1/3 8 (MHz) |
|
|
|
RTCクロック設定 |
使用しない |
|
|
|
BCLK 動作 |
使用しない |
|
|
|
SDCLK 動作 |
使用しない |
|
|
|
デバッグインタフェース設定 |
使用しない |
[API設定例]
r_cg_main.c
void main(void)
{
R_MAIN_UserInit();
/* Start user code. Do not edit comment generated here */
while (1U)
{
;
}
/* End user code. Do not edit comment generated here */
}
r_cg_cgc_user.c
static void r_cgc_oscillation_stop_interrupt(void)
{
/* Start user code. Do not edit comment generated here */
/* Change clock generator operation mode */
R_CGC_Set_ClockMode(HOCO);
/* End user code. Do not edit comment generated here */
}