一、Clocking模块
1.1、模块介绍
描述了系统集时钟架构,包括以下信息:系统时钟的细节、时钟结构、时钟源、时钟监控、可编程时钟分频器、时钟控制寄存器、逐步时钟切换。
系统时钟(CLKOUT )为计算外壳(包括主 CPU 的主核心 0 和校验核心 0 **)提供服务,同时还服务于在高速域运行的模块、存储器和调试逻辑。**它独立于外设时钟,允许CLKOUT成为一个频率调制(FM)时钟,以减少电磁辐射,同时为外设定时器和通信功能提供精确的时钟。在计算活动较低的时期,它可以降低频率以降低功耗,同时为通信接口和定时器提供固定频率。
内部16MHz RC 振荡器( IRCOSC )用于设备启动,并且可以通过模式入口模块( Mode Entry Module )启用,作为 PLL 或外部振荡器故障时的备用时钟。
可选的时钟源包括:外部振荡器 / 晶体( XOSC );内部 16MHz RC 振荡器( IRCOSC ); PLL0 ( PLL0_PHI ); PLL1 ( PLL1_PHI )。
在时钟生成模块(MC_CGM)中,辅助时钟选择器允许开发人员为每个系统外设选择一个独立的时钟源。此外,还有一个专门用于系统时钟的系统时钟选择器。
模块时钟选择器的输出具有单独的分频器,可以将时钟选择器的输出针对特定外设最多分频512。
时钟监控单元(CMUs)连接到时钟分频器的输出,以验证时钟频率是否保持在操作限制范围内,并且可以配置为在发现时钟问题时发出中断信号或启动系统复位。
二、EB配置
2.1、添加MCU和Port模块

2.2、McuGeneralConfiguration
McuDevErrorDetect:开发错误检测并向DET报告,开启
McuGetRamStateApi:MCU获取RAM状态,开启
McuInitClock:初始化时钟,开启
McuNoPll:如果H/W 没有锁相环或者锁相环电路在没有S/W 干预的情况下接通电源后开启,需要打开,并且必须禁用MCU_DistributePllClock。我们选择关闭。
McuPerformResetApi:MCU执行复位,开启
McuVersionInfoApi:MCU读取模块版本信息,开启
Mcu Loops TimeOut:阻塞功能的最大循环次数,在保持PLL 运行的情况下,MC_ME 从drrun 转换到drrun 所需的最大时间是3 毫秒。请在选择此参数的值时考虑这一点。我们选择200000

2.3、McuModuleConfiguration
Mcu Boot Core:设置从哪个核心启动从核,默认Z7_0
Mcu Init Core:MCU从哪个核心执行初始化,默认Z7_0
McuFailOfChangeModeNotification:MCU的模式改变故障通知,默认NULL_PTR
McuClockSrcFailureNotification **:**时钟源故障通知,开启
Mcu Xosc Interrupt Enable **:**外部振荡器中断使能,开启。
McuClockFailureNotification:时钟故障通知,填入Mcu_ClockFailureCallback故障回调函数
McuXoscStartupNotification **:**XOSC开启通知,填入Mcu_XoscCallback回调函数
McuNumberOfMcuModes **:**MCU模式的个数,由MC_ME的模式细节可知,共有11种模式,填入11
McuRamSectors **:**RAM段,填入1。
External Crystal Frequency **:**设置外部晶振频率,填入20MHz。
Mcu Fccu Enable **:**开启/禁用故障收集和控制单元,开启

McuLowPowerConfig **:**低功耗配置。添加8个配置项即可,否则该模块会报错

McuRunConfig **:**运行配置。添加8个配置项即可,否则该模块会报错

McuPeripheralConfig **:**外设配置。配置该模块前,需将McuRunConfig和McuLowPowerConfig配置好
点击"+",添加一个外设配置,双击进入配置。

添加67个外设配置,否则会报错,run config和low power config均选择对应的config0

McuClockSettingConfig **:**时钟设置。
点击"+",添加一个时钟配置,双击进入配置。配置该模块前需将McuPeripheralConfig配置好

McuClockSettingId:时钟设置ID,默认为0
IRC Enabled:使能/禁用内部RC振荡器,默认开启
XOSC、PLL0、PLL1均设置为使能
System Clock Select:系统时钟选择XOSC
System Clock Frequency:系统时钟频率,通过点击方框右侧,自动计算为80MHz
Run Modes Configuration:运行模式配置。自动选择即可

McuClockReferencePoint:添加参考时钟

McuIRC:内部RC振荡器

McuXOSC:外部晶体振荡器

McuPll0_Parameter:PLL0参数设置

计算公式如下:



McuPll1_Parameter:PLL1参数设置


计算公式如下:


McuSystemClockDivider:系统时钟分频器






McuAuxClock[X] X=3/4:辅助时钟

由1.2节的时钟树可知,McuAuxClock3的时钟源为IRC/XOSC,McuAuxClock4的时钟源为PLL0_PHI1/XOSC

McuAuxClock[X] X=0-2/5-10
每个辅助时钟的时钟源在数据手册 29.4.2 章节有说明
每个分频器代表的时钟如下


需要勾选分频器使能,才可以输出时钟波形

McuModeSettingConf **:**模式设置配置。需配置此项,否则模块报错
添加一项RUN0的配置项,双击进入配置

Mode ID:模式号,选择0
Operating Mode:操作模式。选择RUN0

System Clock Switch:这个参数为系统时钟选择。配置ME_mode_MC[SYSCLK]寄存器字段。我们选择PLL1_PHI。

Run Modes Configuration:运行模式配置。默认选择
IRC 16MHz Control:内部RC振荡器控制,配置ME_<MODE>_MC[IRCOSCON]寄存器字段,开启
XOSC Control:晶体振荡器控制,配置ME_<MODE>MC[XOSCON]寄存器字段,开启PLL0 Control:PLL0控制,配置ME<MODE>_MC[PLL0ON]寄存器字段,开启
PLL1 Control:PLL1控制,配置ME_<MODE>_MC[PLL1ON]寄存器字段,开启

2.4、PortGeneral

2.5、PortConfigSet
一、PortContainer
添加GPIO功能,端口数量设置为1

PortPin中加入相应引脚,双击进入配置


PortPin Direction:引脚方向。设置为PORT_PIN_OUT
PortPin Id:Pin端口引脚编号。此值将分配给从端口引脚容器短名称派生的符号名称。设置为1
PortPinPcr:Pin端口引脚编号。为PAD号。
PortPinInputLevelSelection:引脚电平等级。设置为AUTOMOTIVE汽车级。
PortPin Level Value:引脚电平值。设置为PORT_PIN_LEVEL_HIGH。
PortPinMode:管脚模式。设置为MC_CGL_SYSCLK1
PortPinOutputDriveControl:输出模式。设置为PORT_PUSH_PULL
PortPinOutputEdgeRateControl:输出速度。设置为VERY_STRONG_DRIVE

至此,EB部分的配置就结束了。点击小锤子生成相应的配置文件即可

三、工程测试
3.1、代码添加


点击小锤子生成elf、hex文件

进入调试的步骤


进入以下界面则成功进入调试界面

3.2、AC7的时钟源为IRC


3.3、AC7的时钟源为XOSC


3.4、AC7的时钟源为PLL0_PHI


