运用 U8G2 与 TFT_eSPI 玩转 UINIO-Monitor 显示屏

UINIO-Monitor 同时拼接有 128×64 分辨率 SSD1315 驱动的 0.96 英寸 OLED 显示屏,160×80 分辨率 ST7735 驱动的 0.96 英寸 LCD 显示屏,240×240 分辨率 ST7789 驱动的 1.3 英寸 LCD 显示屏。以及采用相同驱动芯片,但是分辨率分别为 240×320240×280 的 2.4 英寸以及 1.69 英寸 LCD 显示屏。所有屏幕全部板载有 0.5mm 间距的 FPC 柔性排线连接器,同时还引出 2.54mm 间距的直插排针,便于通过杜邦线快速搭建实验电路。

之前由我设计制作并且开源出来的 UINIO-MCU-ESP32C3UINIO-MCU-ESP32S3 两款核心板,分别基于乐鑫科技的 ESP32-C3 (RISC-V) 与 ESP32-S3 (Xtensa) 微控制器(更多玩法可以参考之前撰写的 《基于 UINIO-MCU-ESP32 的 Arduino 进阶教程》 一文)。而本篇文章就会采用这两款核心板,以及乐鑫官方的 Arduino-ESP32 板级支持包,结合 U8G2TFT_eSPI 两款开源显示库,帮助大家快速上手 UINIO-Monitor 系列里的 5 款显示屏。

阅读更多

基于 UINIO-MCU-ESP32 的 Arduino 进阶教程

Arduino-ESP32 是由乐鑫科技GitHub 开源社区推出的一款基于 Arduino IDE板级支持包BSP,Board Support Package),除了兼容大部分通用的 Arduino API 之外,还能够支持 ESP32 系列芯片一些独有的特性化 API。由于几年以前已经撰写过一篇基于标准 Arduino API 的《玩转 Arduino Uno、Mega、ESP 开源硬件》,所以本篇文章不再赘述相关内容,而是结合 U8G2AsyncTimerRBD_BUTTONLiquidCrystal_I2CESP32SPISlaveServoSdFat 等常用第三方库,通过分析注释典型的示例代码,分门别类的介绍了各种片上资源外设的实例化运用。

ESP32-C3ESP32-S3 是当前市场上比较流行的两款物联网主控芯片方案,它们分别基于开源的 RISC-V 内核,以及商业化的 Xtensa 内核,并且同时支持 WiFi 与 Bluetooth 无线连接。由于日常工作当中经常使用到这两款微控制器,所以特意设计了 UINIO-MCU-ESP32C3UINIO-MCU-ESP32S3 两款核心板,关于它们硬件电路设计方面的相关内容,可以进一步参考本篇文章的姊妹篇《UINIO-MCU-ESP32 核心板电路设计》。由于本文属于 Arduino 进阶性质的教程,阅读时需要具备一定的嵌入式开发经验,萌新可以阅读笔者更早之前撰写的《玩转 Arduino Uno、Mega、ESP 开源硬件》

阅读更多

UINIO-MCU-ESP32 核心板电路设计

UINIO-MCU-ESP32C3UINIO-MCU-ESP32S3 两款开源核心板,分别采用了上海乐鑫科技 推出的 ESP32-C3 以及 ESP32-S3 微控制器,两者均支持 2.4GHz Wi-FiBluetooth 5.0 无线网络连接。本文旨在介绍两块核心板各个功能单元的硬件电路设计原理,其中 ESP32-C3 微控制器基于开源的 RISC-V 内核架构,拥有 22 个 GPIO 接口,主频高达 160MHz,板载 384KB 容量的 ROM,以及 400KB 容量的 SRAM 和 8KB 容量的 RTC SRAM,支持的数字外设接口有 3 × SPI2 × UART1 × I²C1 × I²S,而模拟外设接口则采用了 6 通道的 2 × 12 位 SAR 模/数转换器。

稍晚一些推出的 ESP32-S3 微控制器则是基于 Cadence 公司的 Xtensa Dual-Core 32-bit LX7 架构,拥有 45 个 GPIO 接口,主频高达 240MHz,板载有 384KB 容量的 ROM,以及 512KB 容量的 SRAM 和 16KB 容量的 RTC SRAM,支持的数字外设接口4 × SPI3 × UART2 × I²C2 × I²S。而模拟外设接口采用了 20 通道的 2 × 12 位 SAR 模/数转换器。核心板的 KiCad 原理图以及 PCB 源文件,可以在我的 GitHub 仓库当中进行获取。

阅读更多

ARM 调试工具 UINIO-DAP-Link 应用指南

ARM Mbed OS 是一款开源免费的物联网操作系统,包含有基于 ARM Cortex-M 微控制器开发智能连接产品所需的全部基础架构。其推出的 DAP-Link 同样是一个开源软件项目,它支持编程和调试运行在 ARM Cortex 微控制器上面的代码,主要运行于拥有 SWD 或者 JTAG 接口的微控制器当中,并且通过 USB 接口在计算机与 ARM Cortex 微控制器之间创建一个用于调试仿真的桥梁,为开发人员提供了下载调试串口通信拖拽烧录等实用功能。

DAPLink 主要由 Mbed 硬件开发工具包 以及 DAPLink 固件 两个开源项目构成,而 UINIO-DAP-Link 则是由博主设计的一款开源 DAPLink 仿真器实现,相比于官方原版的硬件电路设计,在引出有 SWD 调试接口(由 ARM 制订)的同时,还引出了 JTAG 接口(IEEE 1149 国际标准)以及5V3.3V 电源,并且附带有 SWDJTAG 的转接板 PCB 设计,而固件部分则是基于 ARM 官方的原版固件移植而来,全部的原理图与固件程序都开源在博主的 GitHub

阅读更多