/*********************************************************************************************************************** * DISCLAIMER * This software is supplied by Renesas Electronics Corporation and is only intended for use with Renesas products. * No other uses are authorized. This software is owned by Renesas Electronics Corporation and is protected under all * applicable laws, including copyright laws. * THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING THIS SOFTWARE, WHETHER EXPRESS, IMPLIED * OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND * NON-INFRINGEMENT. ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY * LAW, NEITHER RENESAS ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE FOR ANY DIRECT, * INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR * ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. * Renesas reserves the right, without notice, to make changes to this software and to discontinue the availability * of this software. By using this software, you agree to the additional terms and conditions found by accessing the * following link: * http://www.renesas.com/disclaimer * * Copyright (C) 2011, 2021 Renesas Electronics Corporation. All rights reserved. ***********************************************************************************************************************/ /*********************************************************************************************************************** * File Name : r_cg_cgc.h * Version : CodeGenerator for RL78/G12 V2.04.06.02 [08 Nov 2021] * Device(s) : R5F103AA * Tool-Chain : CCRL * Description : This file implements device driver for CGC module. * Creation Date: 2024/7/22 ***********************************************************************************************************************/ #ifndef CGC_H #define CGC_H /*********************************************************************************************************************** Macro definitions (Register bit) ***********************************************************************************************************************/ /* Clock operation mode control register (CMC) */ /* High-speed system clock pin operation mode (EXCLK, OSCSEL) */ #define _C0_CGC_HISYS_PIN (0xC0U) #define _00_CGC_HISYS_PORT (0x00U) /* X1, X2 as I/O port */ #define _40_CGC_HISYS_OSC (0x40U) /* X1, X2 as crystal/ceramic resonator connection */ #define _80_CGC_HISYS_PORT1 (0x80U) /* X1, X2 as I/O port */ #define _C0_CGC_HISYS_EXT (0xC0U) /* X1 as I/O port, X2 as external clock input */ /* Control of X1 high-speed system clock oscillation frequency (AMPH) */ #define _00_CGC_SYSOSC_DEFAULT (0x00U) #define _00_CGC_SYSOSC_UNDER10M (0x00U) /* fX <= 10MHz */ #define _01_CGC_SYSOSC_OVER10M (0x01U) /* fX > 10MHz */ /* Clock operation status control register (CSC) */ /* Control of high-speed system clock operation (MSTOP) */ #define _00_CGC_HISYS_OPER (0x00U) /* X1 oscillator/external clock operating */ #define _80_CGC_HISYS_STOP (0x80U) /* X1 oscillator/external clock stopped */ /* High-speed OCO operation (HIOSTOP) */ #define _00_CGC_HIO_OPER (0x00U) /* high-speed OCO operating */ #define _01_CGC_HIO_STOP (0x01U) /* high-speed OCO stopped */ /* Oscillation stabilization time counter status register (OSTC) */ /* Oscillation stabilization time status (MOST18 - MOST8) */ #define _00_CGC_OSCSTAB_STA0 (0x00U) /* < 2^8/fX */ #define _80_CGC_OSCSTAB_STA8 (0x80U) /* 2^8/fX */ #define _C0_CGC_OSCSTAB_STA9 (0xC0U) /* 2^9/fX */ #define _E0_CGC_OSCSTAB_STA10 (0xE0U) /* 2^10/fX */ #define _F0_CGC_OSCSTAB_STA11 (0xF0U) /* 2^11/fX */ #define _F8_CGC_OSCSTAB_STA13 (0xF8U) /* 2^13/fX */ #define _FC_CGC_OSCSTAB_STA15 (0xFCU) /* 2^15/fX */ #define _FE_CGC_OSCSTAB_STA17 (0xFEU) /* 2^17/fX */ #define _FF_CGC_OSCSTAB_STA18 (0xFFU) /* 2^18/fX */ /* Oscillation stabilization time select register (OSTS) */ /* Oscillation stabilization time selection (OSTS2 - OSTS0) */ #define _00_CGC_OSCSTAB_SEL8 (0x00U) /* 2^8/fX */ #define _01_CGC_OSCSTAB_SEL9 (0x01U) /* 2^9/fX */ #define _02_CGC_OSCSTAB_SEL10 (0x02U) /* 2^10/fX */ #define _03_CGC_OSCSTAB_SEL11 (0x03U) /* 2^11/fX */ #define _04_CGC_OSCSTAB_SEL13 (0x04U) /* 2^13/fX */ #define _05_CGC_OSCSTAB_SEL15 (0x05U) /* 2^15/fX */ #define _06_CGC_OSCSTAB_SEL17 (0x06U) /* 2^17/fX */ #define _07_CGC_OSCSTAB_SEL18 (0x07U) /* 2^18/fX */ /* System clock control register (CKC) */ /* Status of Main system clock fMAIN (MCS) */ #define _00_CGC_MAINCLK_HIO (0x00U) /* high-speed OCO clock (fIH) */ #define _20_CGC_MAINCLK_HISYS (0x20U) /* high-speed system clock (fMX) */ /* Selection of Main system clock fMAIN (MCM0) */ #define _00_CGC_MAINCLK_SELHIO (0x00U) /* high-speed OCO clock (fIH) */ #define _10_CGC_MAINCLK_SELHISYS (0x10U) /* high-speed system clock (fMX) */ /* Operation speed mode control register (OSMC) */ /* Interval timer unit input clock supply (WUTMMCK0) */ #define _00_CGC_IT_CLK_NO (0x00U) /* stop */ #define _10_CGC_IT_CLK_FIL (0x10U) /* use fIL clcok */ /* Illegal memory access detection control register (IAWCTL) */ /* Illegal memory access detection control (IAWEN) */ #define _00_CGC_ILLEGAL_ACCESS_OFF (0x00U) /* disables illegal memory access detection */ #define _80_CGC_ILLEGAL_ACCESS_ON (0x80U) /* enables illegal memory access detection */ /*********************************************************************************************************************** Macro definitions ***********************************************************************************************************************/ /*********************************************************************************************************************** Typedef definitions ***********************************************************************************************************************/ typedef enum { HIOCLK, SYSX1CLK, SYSEXTCLK } clock_mode_t; /*********************************************************************************************************************** Global functions ***********************************************************************************************************************/ void R_CGC_Create(void); void R_CGC_Get_ResetSource(void); /* Start user code for function. Do not edit comment generated here */ /* End user code. Do not edit comment generated here */ #endif