学习嵌入式的同学,绝大部分都会自己购买开发板以及不少电子元器件。当实物不在手上的时候我们可以借助仿真软件来实现我们需要的效果。之前上网课的时候,快递无法送达,手上也没有硬件的实物。我们老师就是通过Proteus来进行在线教学的。Proteus软件是英国Lab Center Electronics公司出版的EDA工具软件(收费)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。用了三四个月。Proteus功能还是比较强大。支持学校教学常用的8051、Cortex系列处理器。我们当时在Proteus上也做了不少C51、STM32的小实验。
Proteus确实在当时为学校的教学提供了不少的帮助。但是该吐槽还是得吐槽。这软件还是有点难用。首先他不是免费的,安装使用需要破解,第一次没有破解好的话可能会影响你后续的安装。然后接线、移动的操作逻辑反人类,真的很不习惯。也不知道是不是我安装的版本有问题,经常闪退。操作过快会闪退、运行仿真会闪退(特别是STM32系列),好不容易把电路连好,点击保存还闪退了。最后就是性能确实不咋地,当时老师在如何使用LCD12864。Proteus效果真的有点差,LCD屏幕加载缓慢,还经常丢失屏幕的外壳。整个工程的运行也因为这个LCD的仿真效果不好被拖慢。还好我们第二学期就回到了学校上课。摆脱了这个卡顿的Proteus。
当时我也尝试过看看另外有没有可以仿真STM32的,但是发现大多数都是做的Arduino再到后面我发现了一款国产的在线仿真平台。我愿称之为“国产Proteus”,仿真STM32的效果非常好。软件官网:嵌入式仿真实验教学平台(puliedu.com) 可以选择身份进行注册,如果需要邀请码可以联系平台的工作人员。
这个平台支持在线编程,在线编译,电路搭建,在线运行与代码调试。
支持代码上传与下载,支持bin/hex文件下载,下载之后可烧写到对应的真实开发板中运行。
支持数款MCU,包括STM32系列,安芯MM32F5270、平头哥E906。
平台上有上百款外设,如DHT11、DS18B20、TFTLCD、ESP8266、步进电机等。
我粗略计算了一下有两百多节课程。并且可以支持KEIL工程和GCC工程代码上传使用。
我尝试了一下在上面仿真0.96寸的OLED 12864。我直接用的STM32F047ZGT6。
还支持代码导航。代码编辑上和用VScode的体验很接近。体验很好。
运行仿真的界面,同时可以查看寄存器、函数栈等等
可以代码断点调试
最后生成的hex文件可以下载到开发板运行,效果完全一致。