基于stm32的智能小车设计
void TIM2_Int_Init(u16 arr,u16 psc)
{
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; NVIC_InitTypeDef NVIC_InitStructure;
TIM_Cmd(TIM2, ENABLE); //使能TIMx外设
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE); //时钟使能
TIM_TimeBaseStructure.TIM_Period = arr; //设置在下一个更新事件装入活动的自动重装载寄存器周期的值 计数到5000为500ms TIM_TimeBaseStructure.TIM_Prescaler =psc; //设置用来作为TIMx时钟频率除数的预分频值 10Khz的计数频率
TIM_TimeBaseStructure.TIM_ClockDivision = 0; //设置时钟分割:TDTS = Tck_tim
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //TIM向上计数模式
TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure); //根据TIM_TimeBaseInitStruct中指定的参数初始化TIMx的时间基数单位
TIM_ITConfig( //使能或者失能指定的TIM中断 TIM2, //TIM2
TIM_IT_Update | //TIM 中断源 TIM_IT_Trigger, //TIM 触发中断源
ENABLE //使能 );
NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn; //TIM2中断
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; //先占优先级0级 NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3; //从优先级3级 NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //IRQ通道被使能
NVIC_Init(&NVIC_InitStructure); //根据NVIC_InitStruct中指定的参数初始化外设NVIC寄存器
}
第一章 绪论,描述你为什么要做这个课题,以及本课题的国内外研究现状;
第二章 题目任拟,描述基本的理论及技术基础,比如对STM32的性能及原理描述,这部分
可以参考各种资料,但是要注意查重的问题; 第三章:硬件系统设计(如果有),描述你的作品硬件系统的各个部分;
第四章 软件设计,用流程图+语言+少量代码对你的软件各个部分进行描述,不允许将大段
代码黏贴在这里或者用一张流程图占一页的方式凑页数; 第五章 测试,用语言和图片描述你的测试方法、测试过程以及测试结果,重点是要让答辩
老师能从这里看到你的设计确实成功了。 第六章 总结,综合测试的结果,对你的设计做出结论,是否满足任务书要求,并对其存在
的问题或者需要进行的改进做出展望。 致谢
- 45 -
基于stm32的智能小车设计
参考文献 所有列出的文献必须在正文中标注引用 附录 代码及重要图片
- 46 -