标题: Proteus仿真STM32之定时器,初始化STM32CubeMX [打印本页]

作者: fzrwlx    时间: 2018-8-16 18:25
标题: Proteus仿真STM32之定时器,初始化STM32CubeMX
间隔一秒亮灭,仿真时注意要在__HAL_RCC_TIM2_CLK_ENABLE()之前使能TIM1的时钟,否则特别慢,可能是Proteus的BUG吧,在此感谢51hei论坛的happy87,是他的无私奉献才在这一块有所突破,非常感谢!这里是happy87的原贴:http://www.51hei.com/bbs/dpj-131825-1.html

STM32单片机定时器Proteus仿真原理图如下(仿真工程文件可到本帖附件中下载)


自己仅在两个地方加了代码,下面加粗的即是:

1、main函数里面
  1. int main(void)
  2. {
  3.   HAL_Init();
  4.   SystemClock_Config();
  5. __HAL_RCC_TIM1_CLK_ENABLE();//使能TIM1时钟,实际不需要,仅是Protues的BUG,可以放置在调用__HAL_RCC_TIM2_CLK_ENABLE()之前的任意位置


  6.   MX_GPIO_Init();        
  7.   MX_TIM2_Init();
  8.         
  9.   HAL_TIM_Base_Start_IT(&htim2);        
  10.   while (1)
  11.   {
  12.   }
  13. }
复制代码

2、重写回调函数
  1. void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef*htim)
  2. {
  3. if(htim == &htim2)
  4.     HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_1);//端口翻转
  5. }
复制代码



全部资料51hei下载地址:
TIME-LED.rar (4.02 MB, 下载次数: 81)



作者: xiesonny    时间: 2019-4-24 23:33
感谢提醒,__HAL_RCC_TIM1_CLK_ENABLE()难道真是PROTEUS的BUG,我说怎么那么慢
作者: chuba    时间: 2019-12-18 17:23
下来学习看看,谢谢





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1