PICsimlab:可编程 IC 仿真实验室

推荐一个有意思的开源项目:PICsimlab 可编程仿真平台。支持 Arduino、ESP、PIC等多个开发板的仿真。

PICsimlab 概览

PICSimLab 是一款集成了 MPLABX/avr-gdb 调试器的开发板实时仿真器。PICSimLab 支持来自 picsim、simavr、uCsim、qemu-stm32、qemu-esp32 和 gpsim 的微控制器。PICSimLab 与 MPLABX/Arduino IDE 集成,用于对微控制器板进行编程。由于 PICSimLab 的目的是模拟真实硬件,因此不支持任何源代码编辑。要编辑和调试代码,PICSimLab 应使用与真实电路板相同的工具,如 MPLABX、Arduino IDE 或带有 PlatformIO 的 VSCode。
PICSimLab 支持多种可连接到电路板上进行仿真的设备(spare parts)。例如用于简单输出和输入的 LED 和按钮,以及一些更复杂的设备,如用于互联网连接的 w5500 或带触摸屏的彩色图形显示器 ili9340。PICsimlab:可编程 IC 仿真实验室

PICsimlab:可编程 IC 仿真实验室

PICsimlab 仓库地址:

https://github.com/lcgamboa/picsimlab

支持的微处理器

  • picsim - PIC simulator

    • https://github.com/lcgamboa/picsim

  • simavr - AVR simulator

    • 原版: https://github.com/buserror/simavr

    • PICSimLab 修改版: https://github.com/lcgamboa/simavr

  • ucsim - 8051, STM8 and Z80 simulator

    • 原版: http://mazsola.iit.uni-miskolc.hu/~drdani/embedded/ucsim/

    • PICSimLab 修改版: https://github.com/lcgamboa/uCsim_picsimlab

  • qemu-stm32 - STM32 simulator

    • 原版: https://github.com/beckus/qemu_stm32/

    • PICSimLab 修改版: https://github.com/lcgamboa/qemu/tree/picsimlab-stm32

  • qemu-esp32 - ESP32 simulator

    • 原版: https://github.com/a159x36/qemu

    • PICSimLab 修改版: https://github.com/lcgamboa/qemu/tree/picsimlab-esp32

  • gpsim - PIC simulator

    • http://gpsim.sourceforge.net/

PICsimlab:可编程 IC 仿真实验室

支持的开发板

  • Arduino Mega

    它模拟 Arduino Mega 开发板,该开发板使用 simavr 后端模拟器的一个 ATMEGA2560 微控制器。

PICsimlab:可编程 IC 仿真实验室

  • Arduino Nano

    它模拟 Arduino Nano 开发板,该开发板使用 simavr 后端模拟器的一个 ATMEGA328P 微控制器。

PICsimlab:可编程 IC 仿真实验室

  • Arduino Uno

    它模拟 Arduino Uno 开发板,该开发板使用 simavr 后端模拟器的一个 ATMEGA328P 微控制器。

PICsimlab:可编程 IC 仿真实验室

  • Blue Pill

    它是一块通用电路板,只有复位、串行和晶振电路,支持 qemu-stm32 后端模拟器的 stm32f103c8t6 微控制器。

PICsimlab:可编程 IC 仿真实验室

  • Breadboard

    它是一块通用电路板,只有复位、串行和晶体电路,支持 PICSim 和 simavr 后端模拟器的多个微控制器。

PICsimlab:可编程 IC 仿真实验室

  • Curiosity

    这是一个使用 PICSim 后端模拟器的简单 PIC 微控制器开发板。

PICsimlab:可编程 IC 仿真实验室

  • Curiosity HPC

    这是一个使用 PICSim 后端模拟器的简单 PIC 微控制器开发板。

PICsimlab:可编程 IC 仿真实验室

  • ESP32-C3-DevKitC-02

    它是一块简单的电路板,只有复位、串行和晶振电路,支持 qemu-esp32 后端模拟器的 ESP32-C3 微控制器。

PICsimlab:可编程 IC 仿真实验室

  • ESP32-DevKitC

    这是一块简单的电路板,只有复位、串行和晶振电路,支持 qemu-esp32 后端模拟器的 ESP32 微控制器。

PICsimlab:可编程 IC 仿真实验室

  • Franzininho DIY

    Franzininho DIY 电路板是一个开放硬件项目,更多信息请访问 https://franzininho.com.br/。其开发目的是与 simavr 后端模拟器的微控制器 ATtiny85 配合使用。

PICsimlab:可编程 IC 仿真实验室

  • K16F

    仿真了使用 PICSim 后端仿真器的 PIC16F84、PIC16F628 或 PIC16F648 开发的教学板。

PICsimlab:可编程 IC 仿真实验室

PICsimlab:可编程 IC 仿真实验室

  • McLab1

    仿真了使用 PICSim 后端仿真器的 PIC16F84、PIC16F628 或 PIC16F648 的 Labtools 开发板 McLab1。

PICsimlab:可编程 IC 仿真实验室

PICsimlab:可编程 IC 仿真实验室

  • McLab2

    仿真了使用 PICSim 后端仿真器的 PIC16F777、PIC16F877A、PIC18F452、PIC18F4520、PIC18F4550 或 PIC18F4620 的 Labtools 开发板 McLab2。

PICsimlab:可编程 IC 仿真实验室

PICsimlab:可编程 IC 仿真实验室

  • PICGenios

    仿真使用 PICSim 后端仿真器的 PIC16F777、PIC16F877A、PIC18F452、PIC18F4520、PIC18F4550 或 PIC18F4620 的 Microgenius 开发板 PICGenios PIC18F e PIC16F。

PICsimlab:可编程 IC 仿真实验室

PICsimlab:可编程 IC 仿真实验室

  • PQDB

    PQDB 板是一个开源/开放硬件项目,更多信息请访问 https://github.com/projetopqdb/。它是为与 arduino/freedom 电路板一起使用而开发的,但经调整后可使用 PICSImLab 上 PICSim 后端模拟器的微控制器 PIC18F4520。

PICsimlab:可编程 IC 仿真实验室

  • Remote TCP

    通过一个 TCP 连接控制的虚拟电路板。目前仅支持 Risc-V 模拟器 Ripes,并使用远程后台模拟器。

PICsimlab:可编程 IC 仿真实验室

  • STM32 H103

    它是一块通用电路板,只有复位、一个按钮、串行和晶体电路,支持 qemu-stm32 后端模拟器的 stm32f103rbt6 微控制器。

PICsimlab:可编程 IC 仿真实验室

  • X

    这是一个通用电路板,在创建新电路板教程中用作示例。该电路板使用 PICSim 后端模拟器的 PIC16F877A、PIC18F4550 或 PIC18F4620。

PICsimlab:可编程 IC 仿真实验室

  • Xpress

    这是一个使用 PICSim 后端模拟器的简单 PIC 微控制器开发板。

PICsimlab:可编程 IC 仿真实验室

  • gpboard

    一块通用电路板,只有复位、串行和晶振电路,支持 gpsim 后端模拟器的多个微控制器。

PICsimlab:可编程 IC 仿真实验室

  • uCboard

    它是一块通用电路板,只有复位、串行和晶振电路,支持多种微控制器(最初是 C51、Z80 和 STM8S103)的 ucsim 后端模拟器。

PICsimlab:可编程 IC 仿真实验室

支持的备件(外设)

PICSimLab 有一个窗口允许将备件连接到微控制器,可通过菜单 "模块->备件 "进入。

输入
  • ADXL345(加速度计)--添加一个 I2C/SPI 加速度计(只有原始值)

  • BMP180(压力 I2C)--添加一个 I2C 压力和温度传感器

  • BMP280(压力 I2C)--添加 I2C/SPI 压力和温度传感器

  • DHT11(温度、湿度)- 添加湿度和温度传感器

  • DHT22(温度、湿度)- 添加湿度和温度传感器

  • DS1621(温度 I2C)- 添加 I2C 温度传感器

  • DS18B20(温度)- 添加单线温度传感器

  • 编码器 - 添加带按钮的旋转式正交编码器

  • FM50(温度)- 添加一个模拟温度传感器

  • 固定电压 - 添加一个模拟固定电压基准

  • 游戏手柄 - 添加游戏手柄

  • 游戏手柄(模拟)- 添加一个模拟输出的游戏手柄

  • HX711(称重传感器放大器)- 添加带 HX711 放大器的称重传感器

  • 键盘 - 添加一个矩阵键盘

  • LDR - 添加一个光敏电阻器

  • LM35(温度)- 添加一个模拟温度传感器

  • MPU6050 - 添加加速计和陀螺仪(仅原始值)

  • 电位计 - 添加 4 个电位计

  • 电位计(旋转)--添加 4 个旋转电位计

  • 按钮 - 添加 8 个按钮

  • 按钮(模拟) - 添加 8 个模拟输出按钮

  • SHT3X - 添加一个模拟温度和湿度传感器

  • 开关 - 添加 8 个开关

  • 超声波 HC-SR04 - 添加一个超声波量程传感器

输出
  • 7 段显示屏 - 添加四个多路复用(或单路)7 段显示屏

  • 7 段显示器(带解码器)- 添加四个带解码器的多路 7 段显示器

  • 蜂鸣器 - 添加一个主动/被动蜂鸣器

  • 直流电机 - 添加带 H 桥和正交编码器的直流电机

  • LCD hd44780 - 添加文本显示器 hd44780

  • LCD hd44780 I2C - 添加一个连接到 PCF8574 I2C 转换器的文本显示器 hd44780

  • LCD ili9340 - 添加带触摸屏的彩色图形显示器 ili9340

  • LCD pcd8544 - 添加单色图形显示器 pcd8544(诺基亚 5110)

  • LCD pcf8833 - 添加彩色图形显示屏 pcf8833

  • LCD ssd1306 - 添加单色图形显示屏 ssd1306

  • LED 矩阵 - 添加带 MAX72xx 控制器的 8x8 LED 矩阵

  • LED - 添加 8 个红色 LED

  • RGB LED - 添加一个 RGB LED

  • RGB LED WS2812B - 添加一个或多个可寻址 RGB LED

  • 伺服电机 - 添加一个伺服电机

  • 步进电机 - 添加一个步进电机

其它
  • ETH w5500 - 添加以太网屏蔽 W5500

  • IO 74xx573 - 添加一个 74xx573 八进制锁存器

  • IO 74xx595 - 添加一个 74xx595 SIPO 8 位移位寄存器

  • IO MCP23S17 - 添加一个 MCP23S17 串行 SPI IO 扩展器

  • IO MM74C922 - 添加 MM74C922 键编码器

  • IO PCF8574 - 添加 PCF8574 串行 I2C IO 扩展器

  • IO UART - 添加 UART 串行端口

  • 跳线 - 添加十六根跳线

  • MEM 24CXXX - 添加 24CXXX 串行 I2C EEPROM 存储器

  • RTC ds1307 - 添加一个 ds1307 实时时钟

  • RTC pfc8563 - 添加 pfc8563 实时时钟

  • SD 卡 - 添加 SD 卡屏蔽

  • 温度系统 - 添加温度控制系统


PICsimlab:可编程 IC 仿真实验室

文档与下载

更多文档及示例请参见:
https://lcgamboa.github.io/picsimlab_docs/stable/
下载地址:
https://github.com/lcgamboa/picsimlab/releases
- 本文内容来自网络,如有侵权,请联系本站处理。

2023-12   阅读(593)   评论(0)
 标签: 创客 Arduino ESP32 仿真

涨知识
SD卡

SD卡是一种用于存储数字数据的存储卡,它是一种非易失性存储卡,可以用于移动设备、数码相机、音乐播放器、智能手机、平板电脑等各种设备。

评论:
相关文章
【ESP32 C++教程】Unit1-2 C++类基础知识

本小节主要介绍C++ 类相关的基础知识,包括类的定义、继承、多态,范围作用域等。


【ESP32 C++教程】Unit1-1 开发环境准备

本讲主要介绍VSCode Arduino开发环境的搭建,及与Arduino IDE开发环境的比较。


ESP32 WebServer库处理表单请求

本文主要讲解WebServer库如何来处理表单请求。



在esp32上运行WebServer

WebServer是非常常用的一个功能,在设备上使用该功能可以直接通过浏览器访问和操作设备。


Arduino-ESP32与ESP-IDF的版本对应表

Arduino-ESP32与ESP-IDF的版本对应表。


Arduino-ESP32文件系统全解析:SPIFFS、LittleFS、SD卡操作

Arduino-ESP32提供了多种文件系统解决方案,本文将深入解析SPIFFS、LittleFS和SD卡三种主流存储方案,帮助你做出最佳选择。


ESP32-P4-WIFI6开发板

ESP32-P4-WIFI6-DEV-KIT是一款微雪(Waveshare)设计的基于 ESP32-P4 的多媒体开发板,并集成 ESP32-C6,支持 Wi-Fi 6 和 BLE 5 无线连接。它提供丰富的人机交互接口,包括 MIPI-CSI (集成图像信号处理器 ISP)、MIPI-DSI、SPI、I2S、I2C、LED PWM、MCPWM、RMT、ADC、UART 和 TWAI 等。


ESP-Hosted 入门介绍 &使用指南

ESP-Hosted 解决方案提供了将 ESP 板用作 Wi-Fi 和 Bluetooth/BLE 连接的通信处理器的方法。


设备上云太麻烦?ESP-Hosted一站触达!

ESP-Hosted 提供了一种将ESP芯片和模组用作通信协处理器的解决方案,该解决方案为主机微处理器或微控制器提供无线连接,使主机能够与其他设备通信。简单来说为网卡方案。