对许多创客而言,相信对Arduino IDE 1.x并不陌生,但Arduino官方在2021年春季开始对Arduino IDE进行大改造,提出2.0版,几经内外部测试验证后,于最近发布为正式版。新版到底有何不同?以下对此讨论。
1.同时使用Serial Monitor与SerialPlotter
过往Arduino IDE只提供Serial Monitor(串口监视器)来观看数值,而2.0版再加入一个新工具Serial Plotter(串口绘图仪),两种工具可以同时使用。
红框中,心电图图案点按后可以开启串口绘图仪,放大镜图案点按后可以开启串口监视器
2.改善使用者体验
操作接口更直觉并提升各种功能的操作速度,包含串行输出的时间、加载程序的时间、编译的时间等都有所提升。
3.自动完成功能
在许多程序开发工具上都已经有自动完成功能,但1.x版一直缺乏,而今2.0版也正式提供。自动完成可以让创客撰写程序到一半时自动浮出合宜的选项,只要选择合宜的选项,比起自己手打所有文字能更快速、更不容易出错。
自动完成是依据撰写者已经打过的变量与函式,然后智能型推测后续可能会用到的指令与函式库,从而提示撰写者可以选择。另外已经打完的部份也可能会提示有打错的地方,类似字处理的拼字检查功能。
4.黑底白字
程序设计师撰写程序时要经常观看编辑画面,而白底黑字的画面容易使眼睛疲劳,所以许多程序开发的编辑器都允许改成黑底白字来减少疲劳,这个功能在2.0 Beta版上已经有,但正式的2.0版重新设计了整个黑底画面,让它更具一致性、美观性,且更易于观看。
可以选择Dark (Theia)、Dark (Arduino)等黑底白字画面显示
Dark (Theia)的黑底白字画面
5.云端保存开发成果
有些人会在多个地点工作或需要在多台计算机上持续开发同一程序,所以需要把开发的控制程序(在Arduino的世界里将开发出的程序称为sketch)放在远程或云端以便集中存取,新的2.0版可以跟Arduino Cloud、Arduino Web Editor等云端开发环境连结,然后持续开发放置在云端上但尚未完成的程序。另外也可以先脱机工作,之后再将工作成果上传到云端上进行同步。
红框部分可以在本地端(笔电图标)、云端(地球图标)切换放置程序
6.串口绘图仪(Serial Plotter)
这个新工具相当强大,可以同时观察Arduino开发板上多组变量的变化,以及从时间轨迹上来观察数值的消长变化,这很适合用在调校传感器或数值比较等需求场合中。
Serial Plotter画面图显示变量1、变量2的波动变化
7.更新支持
程序设计师通常希望开发工具可以自动提醒有新的开发板(board)可以支持、新的函式库(library)可以支持,新的2.0版也有这样的功能,这样就不用自己再劳心劳神去查核有无新的支持可以下载,只要单击更新即可。
另外对软件技术有兴趣的创客也可以了解更多,新版的Arduino IDE 2.0其实是以Eclipse Theia框架(也是一个开放原码项目)为基础所发展成的,微软知名Visual Studio Code编辑器(简称VS Code)也是使用相同的框架,所以两者的Language Server Protocol语言服务器协议、Debugger除错器、Extension延伸外挂等是类似的。
然后Arduino IDE 2.0的前端是用TypeScript撰写成的,后端则多数是用Golang撰写成。
实际体验
最后其实比照Arduino向来的传统,推出全新2.0版IDE后并不表示旧版就此消灭了,喜欢或习惯旧的1.x版依然是可以下载、安装、使用的,不过已经加注了「Legacy,遗产、遗旧」字样,等于逐渐宣告其最终会走入历史。
回顾过往Arduino已历经多次系列变化,包含00xx系列的版本、1.0.x系列的版本、1.5.x.版、1.6.x版、1.8.x版,而今是2.0.x版。短期内1.8.x系列仍会持续更新,包含加入与2.0版相近的新功能,或者是修补程序错误、修补资安漏洞等,但最终会以2.0.x版为主。
链接:https://m.elecfans.com/article/1902225.html
UART是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。在嵌入式设计中,UART用于主机与辅助设备通信。
ESP32的DAC函数可以实现真正的模拟输出。
ESP32 没有Arduino输出 PWM 的 analogWrite(pin, value) 方法,取而代之的 ESP32 有一个 LEDC 来实现PWM功能。
本书由少年创学院联合创始人兼院长、知名创客程晨撰写,以Arduino作为硬件平台,介绍了使用米思齐(Mixly)软件进行程序开发的方法。
本文档作为UNO R4 WiFi的技术概览,您将找到一系列资源和指南链接,帮助您开始下一个项目。
Arduino OneButton库是一个用于简化按钮操作的库,它可以轻松地处理按钮的单击、双击和长按等操作。适用于Arduino开发板以及ESP32等其他基于Arduino的开发板。
本文从Arduino Uno入手,看看怎样在这个"简单"的8bit单片机搭建一个属于自己的bootloader
许多硬件厂商都希望自己的开发板能被Arduino IDE集成开发环境所支持。这里就以小脚丫开发板所使用的开发包为例,介绍一下第三方开发包的制作方法。
ESP32 可以通过 SDMMC 和 SPI 两种方式读取SD/TF卡数据。