动态图如图:
1.准备
- STM32CubeMX和proteus软件
- 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.仿真结果
效果:间隔为一秒的流水灯,仿真时间跟实际时间有偏差
问题:
- 是我代码时钟配置问题,不过我没空改,等我有空再改改
2.仿真出现的问题是Simulation is not running in real time due to excessive CPU load.
冬默是小小菜鸟,请多多包涵
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!