新手上路
- 积分
- 27
- 金钱
- 27
- 注册时间
- 2016-4-26
- 在线时间
- 12 小时
|
本帖最后由 阿继呀 于 2016-8-22 19:20 编辑
最近我们老是出了一个简易示波器的题目,测频时发现新内部时钟有点不对劲因此自己写了一个程序,用于测量APB1和APB2的工作钟。PA3和PA5分别用TIM4和TIM1作计时器进行方波输出。两个计时器的的配置都一样如下:
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE);
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
TIM_TimeBaseStructure.TIM_Period =1000-1;
TIM_TimeBaseStructure.TIM_Prescaler = 360-1;
TIM_TimeBaseStructure.TIM_ClockDivision = 0 ;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM4, &TIM_TimeBaseStructure);
TIM_ITConfig(TIM4, TIM_IT_Update, ENABLE);
TIM_Cmd(TIM4, ENABLE);
最后,用示波器测量发现,PA5输出方波频率为3.8HZ,PA3输出为100HZ。经过反推我发现TIM4的工作频率为72MHZ,TIM1工作时钟为2MHZ。那么问题来了,APB1时钟不是36MHZ吗?APB2不是72MHZ吗?
|
|