栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

用Cube和proteus仿真STM32跑马灯

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

用Cube和proteus仿真STM32跑马灯

用Cube和proteus仿真STM32跑马灯

动态图如图:

1.准备
  1. STM32CubeMX和proteus软件
  2. MDK5

1.为生成代码和电路仿真
2.为编写代码


2.电路搭建


这个电路很简单,仿真我就没加电阻限流


3.生成代码 1.设置IO口

点击有边GPIO,如图PB9,PB10 设置为OUTPUT PUSH模式

2.启动时钟

点击RCC ,设置HSE为如图所示

3.时钟配置

如图所示,我时钟是乱设的,我还不怎么熟悉,因为时钟问题,后面仿真会出现Simulation is not running in real time due to excessive CPU load.这个问题,呜呜呜

点击生成代码


4.修改代码

在main.c中添加如图代码

	  HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,GPIO_PIN_SET);
	  HAL_GPIO_WritePin(GPIOB,GPIO_PIN_10,GPIO_PIN_RESET);
	  HAL_Delay(1000);
	  HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,GPIO_PIN_RESET);
	  HAL_GPIO_WritePin(GPIOB,GPIO_PIN_10,GPIO_PIN_SET);
	  HAL_Delay(1000);

HAL_GPIO_WritePin()函数是改变IO电平,SET为高电平,RESET为低电平。
代码很简单


5.仿真结果


效果:间隔为一秒的流水灯,仿真时间跟实际时间有偏差
问题:

  1. 是我代码时钟配置问题,不过我没空改,等我有空再改改
    2.仿真出现的问题是Simulation is not running in real time due to excessive CPU load.

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/352376.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号