软件仿真和硬件仿真什么区别?软件仿真就是没有硬件参与的仿真,完全是模拟实现的。硬件仿真是将程序下载到控制芯片的FLASH或RAM中,直接在硬件上实现仿真。【有什么问题欢迎联系讨论,一起解决问题】仿真这种东西,因为涉及到信任问题,用的好觉得好用,用不好可能会徒增麻烦——“还不如直接在硬件上调试靠谱”。但是总体上,仿真还是比较有用的,比如在排查软件问题(寄存器配置等)的时候,使用软件仿真是非常靠谱的。而如果涉及到硬件的问题(比如你的板子代码需要读取外部信号,或者输出信号等),可能需要用到硬件仿真,或者说在线仿真。关于仿真,网上的资料说的还是挺全的,这里只做总结。目录一、软件仿真1.1仿真配置1.2
1写在前面对于学习单片机和嵌入式开发的朋友来说,掌握Keil这款软件可以说是必备的技能。鉴于目前网上没有完整的Keil教程,因此我打算整理一套完整的Keil系列教程。目前Keil有四种产品(软件):MDK-ARM、C51、C251、C166。四种软件都是基于µVision,在用法上极为相似。所以,该系列教程结合目前使用最多的MDK-ARM来讲述,大部分内容也适用于其它三种软件。2Keil介绍2.1概述对于我们程序员来说,大家常说的Keil,其实指的是一款开发工具。同时,Keil也是一家公司名称。Keil公司是一家业界领先的微控制器(MCU)软件开发工具的独立供应商。Keil公司由两家私人公司联
目录Keil编译与下载插件其他Debug头文件索引报错GPIO结构体等关键字报错最近重新捡起了STM32的开发工作,由于之前一年多的时间一直在从事PC端与Linux下的开发,习惯了VSCode的开发界面以及各种方便的插件,再次打开keil的界面时倍感丑陋。于是花了不少心思配置了VSCode中的代码编写环境,再次特做记录。Keil编译与下载插件VSCode的插件商店中其实包含了支持Keil的插件KeilAssistant,这个插件可以理解为用VSCode给Keil做了一个套壳外衣,可以直接在VSCode的插件商店搜索安装:值得注意的是,正常使用编译以及下载功能,仍然需要电脑上安装有KeilV5,
1.引言在使用进行STM32F407开发的时候,一般被推荐使用的是Keil。经过一整子的Keil洗礼,我真的要崩溃了,在界面、调试、代码跳转、代码格式化、开发效率等方面一直很抓狂。之前一直使用vscode开发,用着还蛮顺心,界面风格很讨人喜欢。因此,尝试在vscode上进行STM32开发。接下来主要讲述个人将Keil和vscode环境搭建问题以及一些小Tips。2.环境搭建2.1Keil环境搭建2.1.1Keil安装关于Keil程序的安装,网上已经有很多优秀的教程,此处贴出不错的博文。Keil的下载地址为https://www.keil.com/download/product/,其中会看到M
一、下载安装包1.官网下载Keil官网下载:MDK-ARMVersion5.38aEvaluationSoftwareRequest(keil.com)这里还是比较推荐官网安装,现在的Keil可以免费使用,没必要网上找其他途径。2.江协科技百度网盘链接:https://jiangxiekeji.com/download.htmlTip:这里面有后面激活需要用到的软件,可以选择性下载部分文件。江协科技的这个网址里除了32的下载包和资料,还有51以及C语言指针的,可以配套B站的视频学习。(B站视频链接:[1-1]课程简介_哔哩哔哩_bilibili)二、安装软件因为是官网下载,一般不需要关闭电脑杀
ARM内核Vscode+gcc1.环境搭建Vscode下载链接:https://code.visualstudio.com/下载后直接安装,安装后打开界面如下:安装扩展插件在Vscode中搜索后缀为.hex文件识别插件方法,搜索ext:hex即可找到对应插件,其他格式文件方法类似。安装ArmAssembly、C/C++、CMakeTools、GNULinkerMapfiles、HexEditor、IntelHEXformat、LinkerScript这几个插件,可以大大提升开发效率。安装make下载链接:https://sourceforge.net/projects/mingw/安装后将D:
文章目录一、前言二、Embedded开发插件1.扩展准备2.配置Embedded3.导入项目4.项目配置6.编译/烧录其他:VScode快捷键参考文章一、前言由于最近实习嵌入式软件要练手一份代码量巨大的Keil项目(写得过于繁杂。由于有几百份第三方设备的源文件头文件,再加上各种条件编译,使得一份c文件里都有近6k行代码),让我这个小白非常头疼,再加之Keil相较于现在的IDE,编辑器在代码阅读,编写等方面都显得老旧些。在这么个背景下,转向VScode编写keil工程+keil调试的路二、Embedded开发插件这些天找了许多的VScode插件,网上最常见的插件就是KeilAssistant,不
一、环境cubemx安装和搭建见博文链接:STM32CubeMX安装keil安装见软件安装管家,注意要是MDK版二、cubemx操作1.打开cubemx2.选择ACCESSTOMCUSLCTOR,创建一个新的工程。3.选择合适的芯片型号具体的开发板芯片型号根据自己的板子来。我的是STMF429IG4.选择IGTx之后,点击开始工程5.进行引脚和时钟等的配置引脚配置要把PH10,PH11,PH12的引脚设置为输出模式。搜索PH10,引脚会闪烁,然后点击引脚设置为输出模式同样PH11,PH12都要进行这个操作。设置完之后将三个引脚的输出改为高电平。时钟配置6.进入工程管理页面,进行路径的选择,以及
***Target'Target1'usesARM-Compiler'DefaultCompilerVersion5'whichisnotavailable.这个错误是由于使用的ARM编译器“DefaultCompilerVersion5”不可用导致。原因是新版的keil不在自动下载v5版本的编译器,但是老版本使用的v5,所以需要手动安装v5的编译器。解决办法如下下载v5.06的编译器并添加到keil,下载链接如下下载链接具体步骤最后就可以成功编译了!
当编译时提示这样的错误时,是因为框出来的变量被重复定义了,我们要从定义的地方解决。1.首先,我们全局搜索这个变量(ctrl+f),搜索这个变量在工程中被定义的位置2.如果发现有多个文件中都有定义过,例如在a.c和b.c中都有inta=0;,那么我们要删除只剩一个地方定义即可3.如果发现变量是在头文件被定义的,那么我们要将其改到.c中定义,在头文件中定义是不可以的,例如a.h中inta=1;那么我们在所有引用这个a.h的.c中都会重复定义inta,所以我们要改到.c中定义4.当只剩一个地方定义后,我们在其他文件中要使用就要externinta;来使用这个变量