在Proteus进行stm32程序的仿真运行

本文目的是通过protues进行stm32程序的仿真和运行,了解仿真和实际硬件操作的不同之处

(一)新建工程

  • 新建工程
    点击新建工程,输入工程名和工程所在路径,点击下一步
    1
  • 选择从选中的模板中创建原理图,点击下一步
    2
  • 选择不创建PCB布版设计,点击下一步
    3
  • 选中创建固件库,选择Cortex-M3系列,Controller选择STM32F103R6,编译器默认为GCC for ARM(not configured),点击下一步
    4
  • 点击完成即可创建一个新工程
    5

(二)创建原理图并进行仿真

1.创建原理图

  • 点击P,进入选择元器件的界面
    6
  • 搜索创建原理图所需要的的元器件电阻RES和LED灯并添加到元件库中
    7
    8
  • 画出原理图
    原理图如下:
    draw

2.进行程序仿真

  • 编写stm32流水灯程序
    program
  • 加载该程序生成的hex文件到proteus中的stm32单片机中
    双击stm32元件,进入编辑元件的界面,选择program File(生成的hex文件)的位置,最后点击确定。
    load
  • 开始仿真
    仿真结果如下:
    run
  • 遇到的问题
    • 执行仿真时报错如下:
    Access to register of unclocked peripheral at 0x40010800 cause BUS_FAULT [U1_CM3CORE]
    
    • 解决方案:将stm32元器件的Crystal Frequency改为72MHz即可解决该问题。

(三)总结

通过在proteus上进行stm32程序的仿真和运行,我感觉仿真是一种十分重要的实验手段让我们可以最大程度的接近真实的硬件环境,特别是在没有硬件支持或者不方便使用硬件的时候;并且硬件实验还会受到硬件以及其他各种外部因素的影响。这次仿真实验让我了解了如何在proteus里进行stm32的仿真,希望以后能更多的使用仿真的方式学习其他的微处理器。

特别感谢以下博文对我的帮助:

1、Proteus仿真STM32流水灯实验例程、详细步骤。

STM32仿真报错集1:Access to register of unclocked peripheral at 0x40011000 cause BUS_FAULT [U1]

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值