OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8982|回复: 17

请问TIM5配置时跟TIM2~4不一样吗?为什么TIM5_IRQn显示没有被定义?

[复制链接]

42

主题

191

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2017-12-28
在线时间
62 小时
发表于 2018-3-23 10:37:43 | 显示全部楼层 |阅读模式
6金钱

1.png

最佳答案

查看完整内容[请看2#楼]

STM32F103 中容量产品 只有1-4通用/高级计时器
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

10

主题

196

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
390
金钱
390
注册时间
2018-3-20
在线时间
80 小时
发表于 2018-3-23 10:37:44 | 显示全部楼层
本帖最后由 孟亮 于 2018-3-23 10:45 编辑

STM32F103 中容量产品 只有1-4通用/高级计时器
回复

使用道具 举报

42

主题

191

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2017-12-28
在线时间
62 小时
 楼主| 发表于 2018-3-23 10:38:48 | 显示全部楼层
TIM5该如何配置,求大神指点!!!!!!!急,在线等!!!
回复

使用道具 举报

10

主题

196

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
390
金钱
390
注册时间
2018-3-20
在线时间
80 小时
发表于 2018-3-23 10:40:01 | 显示全部楼层
#ifdef STM32F10X_MD
  ADC1_2_IRQn                 = 18,     /*!< ADC1 and ADC2 global Interrupt                       */
  USB_HP_CAN1_TX_IRQn         = 19,     /*!< USB Device High Priority or CAN1 TX Interrupts       */
  USB_LP_CAN1_RX0_IRQn        = 20,     /*!< USB Device Low Priority or CAN1 RX0 Interrupts       */
  CAN1_RX1_IRQn               = 21,     /*!< CAN1 RX1 Interrupt                                   */
  CAN1_SCE_IRQn               = 22,     /*!< CAN1 SCE Interrupt                                   */
  EXTI9_5_IRQn                = 23,     /*!< External Line[9:5] Interrupts                        */
  TIM1_BRK_IRQn               = 24,     /*!< TIM1 Break Interrupt                                 */
  TIM1_UP_IRQn                = 25,     /*!< TIM1 Update Interrupt                                */
  TIM1_TRG_COM_IRQn           = 26,     /*!< TIM1 Trigger and Commutation Interrupt               */
  TIM1_CC_IRQn                = 27,     /*!< TIM1 Capture Compare Interrupt                       */
  TIM2_IRQn                   = 28,     /*!< TIM2 global Interrupt                                */
  TIM3_IRQn                   = 29,     /*!< TIM3 global Interrupt                                */
  TIM4_IRQn                   = 30,     /*!< TIM4 global Interrupt                                */
  I2C1_EV_IRQn                = 31,     /*!< I2C1 Event Interrupt                                 */
  I2C1_ER_IRQn                = 32,     /*!< I2C1 Error Interrupt                                 */
  I2C2_EV_IRQn                = 33,     /*!< I2C2 Event Interrupt                                 */
  I2C2_ER_IRQn                = 34,     /*!< I2C2 Error Interrupt                                 */
  SPI1_IRQn                   = 35,     /*!< SPI1 global Interrupt                                */
  SPI2_IRQn                   = 36,     /*!< SPI2 global Interrupt                                */
  USART1_IRQn                 = 37,     /*!< USART1 global Interrupt                              */
  USART2_IRQn                 = 38,     /*!< USART2 global Interrupt                              */
  USART3_IRQn                 = 39,     /*!< USART3 global Interrupt                              */
  EXTI15_10_IRQn              = 40,     /*!< External Line[15:10] Interrupts                      */
  RTCAlarm_IRQn               = 41,     /*!< RTC Alarm through EXTI Line Interrupt                */
  USBWakeUp_IRQn              = 42      /*!< USB Device WakeUp from suspend through EXTI Line Interrupt */  
#endif /* STM32F10X_MD */  
回复

使用道具 举报

10

主题

196

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
390
金钱
390
注册时间
2018-3-20
在线时间
80 小时
发表于 2018-3-23 10:44:40 | 显示全部楼层
imbest 发表于 2018-3-23 10:38
TIM5该如何配置,求大神指点!!!!!!!急,在线等!!!

要是非常想用,就换型号,选计时器多的那型号,
回复

使用道具 举报

42

主题

191

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2017-12-28
在线时间
62 小时
 楼主| 发表于 2018-3-23 10:45:41 | 显示全部楼层
孟亮 发表于 2018-3-23 10:38
STM32F103系列 只有1-4通用/高级计时器

不是有八个TIM吗?TIM1和8高级定时器,TIM2-5通用定时器,TIM6-7基本定时器!!
回复

使用道具 举报

42

主题

191

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2017-12-28
在线时间
62 小时
 楼主| 发表于 2018-3-23 10:48:31 | 显示全部楼层
孟亮 发表于 2018-3-23 10:38
STM32F103 中容量产品 只有1-4通用/高级计时器

那大的是哪种?ZE?
回复

使用道具 举报

42

主题

191

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2017-12-28
在线时间
62 小时
 楼主| 发表于 2018-3-23 10:50:21 | 显示全部楼层
孟亮 发表于 2018-3-23 10:40
#ifdef STM32F10X_MD
  ADC1_2_IRQn                 = 18,     /*!< ADC1 and ADC2 global Interrupt     ...

你这里有TIM1的配置程序吗?就用来做定时器中断进行计数!!
回复

使用道具 举报

10

主题

196

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
390
金钱
390
注册时间
2018-3-20
在线时间
80 小时
发表于 2018-3-23 11:16:41 | 显示全部楼层
imbest 发表于 2018-3-23 10:48
那大的是哪种?ZE?

这个你要查芯片手册了。。或者cube里有功能模块数量
回复

使用道具 举报

10

主题

196

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
390
金钱
390
注册时间
2018-3-20
在线时间
80 小时
发表于 2018-3-23 11:17:05 | 显示全部楼层
imbest 发表于 2018-3-23 10:50
你这里有TIM1的配置程序吗?就用来做定时器中断进行计数!!

TIM1是高级定时器,用起来麻烦。。。我一般不用~~
回复

使用道具 举报

22

主题

117

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
798
金钱
798
注册时间
2015-10-24
在线时间
160 小时
发表于 2018-3-23 12:08:32 | 显示全部楼层
你使用的是那款STM32?
回复

使用道具 举报

42

主题

191

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2017-12-28
在线时间
62 小时
 楼主| 发表于 2018-3-23 13:35:53 | 显示全部楼层
Time_Zero 发表于 2018-3-23 12:08
你使用的是那款STM32?

STM32f103VC
回复

使用道具 举报

1

主题

882

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3071
金钱
3071
注册时间
2018-2-7
在线时间
285 小时
发表于 2018-3-23 17:02:14 | 显示全部楼层
在stm32f10x.h头文件里面找TIM5_IRQn,看看你的单片机型号头文件里面有没有TIM5_IRQn,如果没有说明你的单片机没有定时器5.
回复

使用道具 举报

1

主题

882

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3071
金钱
3071
注册时间
2018-2-7
在线时间
285 小时
发表于 2018-3-23 17:03:39 | 显示全部楼层
定时器1的中断名字和通用定时器有点差别,其他地方设置都一样。
void TIMER1_Init(u16 arr, u16 psc)
{
    TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
        NVIC_InitTypeDef NVIC_InitStructure;
       
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1, ENABLE);
       
        TIM_DeInit(TIM1);

    TIM_TimeBaseStructure.TIM_Period = arr;
    TIM_TimeBaseStructure.TIM_Prescaler = psc;
    TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
    TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
        TIM_TimeBaseStructure.TIM_RepetitionCounter=0x00;
    TIM_TimeBaseInit(TIM1, &TIM_TimeBaseStructure);
       
        TIM_ClearFlag(TIM1,TIM_FLAG_Update);
        TIM_ITConfig(TIM1,TIM_IT_Update,ENABLE);        //允许更新中断
       
        NVIC_InitStructure.NVIC_IRQChannel=TIM1_UP_IRQn;                //TIM1更新中断
        NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0x02;
        NVIC_InitStructure.NVIC_IRQChannelSubPriority=0x02;
        NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;
        NVIC_Init(&NVIC_InitStructure);
       
        TIM_Cmd(TIM1,ENABLE);
}
void TIM1_UP_IRQHandler(void)
{
        if(TIM_GetITStatus(TIM1,TIM_IT_Update)!=RESET)
        {
                TIM_ClearITPendingBit(TIM1,TIM_IT_Update);
                LED0=!LED0;
        }
}
回复

使用道具 举报

42

主题

191

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2017-12-28
在线时间
62 小时
 楼主| 发表于 2018-3-24 16:06:19 | 显示全部楼层
HXYDJ 发表于 2018-3-23 17:03
定时器1的中断名字和通用定时器有点差别,其他地方设置都一样。
void TIMER1_Init(u16 arr, u16 psc)
{

好的,谢谢
回复

使用道具 举报

0

主题

8

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2018-11-15
在线时间
6 小时
发表于 2019-1-18 21:27:00 | 显示全部楼层
请问一下你这个问题是怎样解决的?
回复

使用道具 举报

42

主题

191

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2017-12-28
在线时间
62 小时
 楼主| 发表于 2019-1-29 10:59:50 | 显示全部楼层
折戟沉沙 发表于 2019-1-18 21:27
请问一下你这个问题是怎样解决的?

上面不都有答案了嘛,要用TIM5
回复

使用道具 举报

13

主题

52

帖子

0

精华

初级会员

Rank: 2

积分
148
金钱
148
注册时间
2017-2-8
在线时间
39 小时
发表于 2020-5-16 08:32:03 | 显示全部楼层
我也出现了这个问题,用的时STM32F103C8T6
void TIM_Counter(void)
{
        TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
        RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE);//使能TIM2的时钟

        TIM_TimeBaseStructure.TIM_Period = 65535;
        TIM_TimeBaseStructure.TIM_Prescaler = 71;//72MHx/72=1us,
        TIM_TimeBaseStructure.TIM_ClockDivision = 0x0;
        TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;//向上计数模式
        TIM_TimeBaseInit(TIM2, & TIM_TimeBaseStructure);
        TIM_Cmd(TIM2,DISABLE);//关闭,需要的时候再打开
}
也没用到TIM5啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-7 22:23

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表