-
LKS32MC08x系列时钟主频、机器周期、总线周期、指令周期计算
1.在pll开启且不分频的条件下,用一个io口翻转电平的方式,在主循环内测试了一下输出频率,主循环内就一句代码:“GPIO0->PDO=~GPIO0->PDO;”。得到的输出频率大概是2mhz,和预期值相差较大,所以询问一下如题。2。以pwm方式触发ADC中断,在ADC中断中加入翻转gpio的测试。但是降低/提高pwm的频率对ADC中断中的电平翻转频率似乎没有影响?部分代码如下:voidADC0_init(void){ADC_InitTypeDefADC_InitStructure;ADC_StructInit(&ADC_InitStructure);//初始化结构体ADC_InitStructure.IE=ADC_EOS0_IRQ_EN|ADC_DAT0_OV_IRQ_EN;//第一段扫描结束中断使能和ADC_DAT0超阈值中断ADC_InitStructure.Align=ADC_LEFT_ALIGN;//ADC数据输出左对齐ADC_InitStructure.UTIMER_Trigger_En=DISABLE;//UTIMER_T0硬件触发ADC采样ADC_InitStructure.MCPWM_Trigger_En=ADC_MCPWM_T0_TRG;ADC_InitStructure.FirSeg_Ch=ADC_2_TIMES_SAMPLE;//第一段采样的总通道数:1~20ADC_InitStructure.Trigger_Cnt=0;/*单段触发模式下触发一次采样所需要的事件数:0~150表示需要一次触发,15表示需要16次*///修改此处似乎进入中断的频率并没有更改?ADC_InitStructure.Trigger_Mode=ADC_1SEG_TRG;/*ADC采样1段模式*/ADC_InitStructure.DAT0_TH_Type=ENABLE;//设置ADC比较上阈值中断使能ADC0_DAT0_TH=5000;//设置ADC0_DARA0大于ADC0_DAT0_TH值时,触发ADC数值比较中断ADC_Init(ADC0,&ADC_InitStructure);ADC0_IF=0xff;//清中断标志位ADC0_GAIN0=0x0;//开启2/3增益ADC0_CHN0=ADC_CHANNEL_7|(ADC_CHANNEL_16PDO=~GPIO0->PDO;}
2023-05-13 0