文章目录

  • Proteus部分
    • 创建项目
    • 基础电路绘制及调试
    • 电源默认值
    • 串口乱码
    • 点击仿真就卡死无响应
  • Keil 5部分
    • 教程
    • printf会影响keil程序在proteus中调试的运行速度
    • .c文件和.h文件的存放路径
  • CubeMX部分
    • 创建项目
    • 一些简单的功能介绍
      • GPIO口配置
      • 中断优先级配置
      • 串口配置
    • 一些建议

Proteus部分

创建项目

下文以STM32F401VE为例





基础电路绘制及调试

  • 因为已经有比较系统的整理,所以这里列下来我在实验中遇到的问题得到解决的博客链接:

    标签及总线使用方法
    元件库中英文对照(一个小小的缺点是没有图…)

  • 虚拟终端串口位置
    开始仿真之后才找得到哈

电源默认值

电源默认值为+5V,如果需要更改,双击放置好的元件,在弹出的对话框String那一栏填写+n(n是需要设定的电源值)

串口乱码

  • 检查CubeMX设置的波特率与串口输出波特率是否一致(9600)
  • 如果一致,全部改为115200再试一下
  • 检查自己的程序

点击仿真就卡死无响应

仅适用于非电脑问题,如图,检查一下自己的.hex文件在不在当前路径下。后面我改了一次文件夹名称,系统就找不到仿真用的.hex文件了,把正确的路径加回来就好了。记性不好的话还是别乱改文件夹名称了…

Keil 5部分

教程

注:此教程不是基于STM32F104系列板子的,但是项目创建、文件分类等都很有参考价值,可以课余看。此外视频教程里的中断需要比较繁琐的配置,但是使用CubeMX生成框架后联调就只需要专注于完成中断函数逻辑。

STM32入门教程-2022持续更新中

printf会影响keil程序在proteus中调试的运行速度

在实验中如果设定循环计数500次之后执行功能,每次计数值都prinf在串口,那么每次printf都会占用较长时间,整体的切换速度会比实际的低,如果发现这种问题,删掉那句print就好

.c文件和.h文件的存放路径

看网上的教程不是很明白,下面是老师建议、自己尝试后的可行方案:
.c文件放在Src文件夹中,.h文件放在Inc文件夹中,如下图所示:

放好之后先添加.c文件,再把.h文件的路径添加进魔法棒工具里的路径栏(这里我原先就有,大家需要自行添加),具体如下:




CubeMX部分

创建项目

下文以STM32F401VE为例


一些简单的功能介绍

GPIO口配置


中断优先级配置

串口配置

一些建议

  • CubeMX生成代码框架之后先编译一遍就可以右键函数名称查看函数定义之类的了
  • 还是按照老师的要求把某些具体的代码放在该放的位置上,这样的话再次修改CubeMX配置的时候代码不会被系统清除…

Proteus电路图绘制与CubeMX生成框架下填充Keil 5代码的联调仿真相关推荐

  1. tensorflow2caffe(3) : 如何将tensorflow框架下训练得到的权重转化为caffe框架下的权重参数

    版权声明:本文为博主原创文章,转载时请附加博文链接. https://blog.csdn.net/jiongnima/article/details/78382972 在前两期专栏tensorflow ...

  2. tensorflow2caffe(1) : 如何将tensorflow框架下训练得到的权重转化为caffe框架下的权重参数

    在前两期专栏tensorflow2caffe(1)和tensorflow2caffe(2)中,笔者向大家介绍了caffemodel文件类型下的参数架构和如何取出tensorflow框架下训练参数.在本 ...

  3. poi生成excel下拉菜单

    在web开发中常用到生成excel模板,在用excel poi生成excel模板时,常用到生成excel下拉菜单.下面是生成excel下拉菜单的代码: package poiexcel;import ...

  4. Python Web框架Tornado的异步处理代码演示样例

    1. What is Tornado Tornado是一个轻量级但高性能的Python web框架,与还有一个流行的Python web框架Django相比.tornado不提供操作数据库的ORM接口 ...

  5. 《电子DIY》之《单片机实践项目》之(51单片机)proteus中带编码信号的电机的详细讲解及电路图绘制(motor encoder)

    此课程主要讲解如何使用51单片机进行实战应用,分为多次课,每次课都会分别围绕一个课程设计或毕业设计(实践项目)展开.手把手叫你学51单片机."Proteus仿真","电子 ...

  6. Python 暴力绘制RGB三色图 Pygame框架下实例

    Python 暴力绘制RGB三色图 Pygame框架下 昨天水群,有个群友想要绘制一个三色图,如下 对于Pygame或者其他的GUI框架,画面显示都是依靠图像的一层层覆盖来实现刷新的.所以当绿色的圆覆 ...

  7. Caffe使用step by step:caffe框架下的基本操作和分析

    Caffe使用step by step:caffe框架下的基本操作和分析 时间:2015-10-16 11:40:09      阅读:808      评论:0      收藏:0      [点我 ...

  8. 标准WPS框架下的空间信息处理服务部署方法

    笔者第一篇博客里面曾介绍过将专题图制作功能发布为WPS,但随着后面的研究,才发现那时候发布的不是真正WPS框架下的服务,而只是通过Servlet将其发布为可调用的网络服务,所以今天再具体介绍一下真正的 ...

  9. 在CI框架下实现验证码登录

    登录界面使用验证码是现在网站大多会采用的方式,目的就是为了防止部分用户频繁地登录注册网站,导致网站崩溃.接下来就来说明一下如何在CI框架下实现验证码登录. 实现验证码的思路很简单,首先随机生成几位验证 ...

最新文章

  1. python笔记基础-python基础学习笔记(一)
  2. c语言写贪吃蛇什么水平_C语言实现贪吃蛇游戏(VC6.0)
  3. 使用集合映射和关联关系映射_使用R进行基因ID映射
  4. 用一个参数化的模型来投影点
  5. [iOS]利用Appicon and Launchimage Maker生成并配置iOSApp的图标和启动页
  6. FreeRTOS 计数信号量
  7. 安装m2eclipse插件
  8. NLP之路-Deep Learning for NLP 文章列举
  9. ChromeFFOpera下DIV不设置高度显示背景颜色和边框的办法
  10. VMware三种工作模式
  11. java Sting类函数
  12. 选择所在城市html按字母,移动端根据字母定位到指定的城市【原创】
  13. 机器人技术(7)AtdRobot六自由度机械臂控制教程
  14. 网站建设需做的工作,你知道吗?
  15. IOS 苹果手机 使用重力加速度,js web devicemotion,deviceorientation事件
  16. 使用PCA可视化数据
  17. SELECT 1 FROM DUAL中的DUAL的作用
  18. 项目启动大会的注意事项
  19. 靠腰,badboy录制脚本老是发生脚本错误
  20. html5设置app启动页,使用Ken Burns Effect制作App启动页

热门文章

  1. 大数据的关键技术(二)
  2. 清华大学百年校庆给清华大学的一封信
  3. cmd中连接雷电模拟器时报错adb device not found
  4. python read csv dtype_如何使用pandas将csv列作为dtype列表读取?
  5. python中如何清空_python中如何清空数组(列表)元素
  6. 解决百度网盘限速超简单
  7. strstr 函数介绍
  8. 关于File()中的pathname的路径
  9. mysql药品库管理项目简介_MySQL数据库项目化教程简介,目录书摘
  10. 递归算法及经典递归实现