找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4752|回复: 2
打印 上一主题 下一主题
收起左侧

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, 下载次数: 80)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:233182 发表于 2019-4-24 23:33 | 只看该作者
感谢提醒,__HAL_RCC_TIM1_CLK_ENABLE()难道真是PROTEUS的BUG,我说怎么那么慢
回复

使用道具 举报

板凳
ID:342630 发表于 2019-12-18 17:23 | 只看该作者
下来学习看看,谢谢
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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