STM32F1库函数初始化系列:定时器中断
2024-10-21 10:02:32
1 static void TIM3_Configuration(void) //10ms
2 {
3 TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
4 NVIC_InitTypeDef NVIC_InitStructure;
5
6 RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); // RCC_APB1为72M频率
7
8 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); //选择中断分组1
9
10 NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQn; //选择串口3中断
11 NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2; //抢占式中断优先级设置为1
12 NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; //响应式中断优先级设置为1
13 NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //使能中断
14 NVIC_Init(&NVIC_InitStructure);
15
16 TIM_TimeBaseStructure.TIM_Period = 100;
17 TIM_TimeBaseStructure.TIM_Prescaler =7199;
18 TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
19 TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
20 TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);
21 TIM_ITConfig(TIM3,TIM_IT_Update,ENABLE );
22 TIM_Cmd(TIM3, ENABLE);
23
24 }
25
26 void TIM3_IRQHandler(void) //TIM3 中断 10ms
27 {
28 if (TIM_GetITStatus(TIM3, TIM_IT_Update) != RESET) //检查 TIM3 更新中断发生与否
29 {
30 TIM_ClearITPendingBit(TIM3, TIM_IT_Update ); //清除 TIM3 更新中断标志
31 }
32 }
最新文章
- Wrong list
- Asp.net上传文件后台通过二进制流发送到其他Url保存
- mysql:表注释和字段注释
- 【Spring】关于Boot应用中集成Spring Security你必须了解的那些事
- Ubuntu12.04安装java以及Eclipse和Tomcat
- SQLServer 取小时
- jquery ajax 跨域处理
- 【转】Java多线程操作局部变量与全局变量
- 单片微机原理P4:80C51串口与串行总线拓展
- HTML知识点摘记
- VMware Workstation9安装Mac OS X10.9系统
- stm32
- 2238";回文字串";报告
- java必学的5种排序算法
- Ubuntu16.04安装及配置nginx
- 运维笔记--ubuntu rm删除文件后 恢复
- 微格式(microformat)
- 得到不知道维度的string数组的维度
- hibernate中一些属性对操作的影响
- jquery 设置checkbox选中 和获取选中值
热门文章
- VM安装Centos7操作系统
- i春秋Zone
- Spring Security(4)
- SpringBoot2.5.1+Mybatis-Plus3.4.3:(Property ‘sqlSessionFactory‘ or ‘sqlSessionTemplate‘ are required)
- vscode+springboot+gradle
- Windows 服务器中使用 mysqldump 命令导出数据,解决中文乱码问题
- JAVA里Map的一些常用方法
- Linux基础第五章 进程控制
- Redis基础学习笔记
- TypeScript 前端工程最佳实践