介绍
ColorEasyDuino是嘉立创推出的一块Arduino开发板(类似物),具有丰富的外设接口:uart、i2c、spi、adc、pwm等;开发板设计参考原型是Arduino Uno,采用的芯片是ATMEGA328P,它的外观设计比较紧凑,把所有的IO都引出供开发者使用,可玩性、可拓展性都特别强,再加上Arduino这个平台具有丰富的开发资源,确实是创客们尝鲜的不二之选
开发板
- 电源供电为5V,采用type C口供电,也可以用DC电源口进行供电
- 不支持在线调试,这可能是Arduino Uno本身就不支持的缘故
- 4颗LED:一个电源指示灯、一个用户自定义、另外两个用来指示串口的状态(也可以自定义使用)
- 一个复位按键
芯片
- AVR RISC架构
- 内存:2K SRAM、32K FLASH、1K EEPROM
- 23个可编程I/O
- 8路分辨率为10位的adc,参考电压为5V
- 2路8位定时/计数器、1路16位定时/计数器
- 6路PWM
- 自带USART、i2c、SPI各一路
- 时钟最高能达到16MHz
最小系统
跟51单片机差不多,主要分为3大部分
- 电源电路
- 晶振电路
- 复位电路
环境
先下载IDE,直接解压打开Arduino IDE.exe就可以了,我这里使用的Arduino版本号为:2.3.3-nightly-20240608
① 菜单栏:常见的功能分类,如文件(程序新建、代码示例等功能)、编辑(文本编辑功能)、程序(编译、下载等功能)、工具、帮助等功能
② 工具栏:编译(Verify)、下载(Upload)、开发板配置(型号+串口)、串口绘图、串口监控等功能入口放在此处
③ 功能区:SKETCHBOOK、开发板管理、软件库管理、调试、搜索等功能
④ 代码文本编辑区
⑤ 控制台:编译输出、串口输出等
最小例程
setup
函数用于配置开发板的硬件资源,如GPIO的工作状态;loop
函数则是一个任务,它是一个死循环;这两个函数是每个Sketch程序必备的,可能跟51、stm32那些程序代码不大一样;并且,Sketch是支持C++编程的;下面这个例程位于File -> Examples -> 0.1 Basics -> Blink
下,用于循环点亮板载的蓝色LED灯
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
将开发板的Type C口用USB线连接电脑,在IDE端进行以下操作
① 配置开发板为:Arduino Uno,配置串口为对应的串口
② 点击工具栏上面的Verify按钮,对话框弹出Done compiling表示编译没有问题
③ 然后点击Upload
④ 看到对话框弹出,对话框弹出Done uploading表示程序下载没有问题,output控制台会输出当前程序的大小、占用磁盘比率
实验效果:可以看到开发板上面的绿色LED被循环点亮
总结
- Sketch指的就是Arduino的程序,这是它的专有名词
- SKETCHBOOK,我理解应该是Arduino程序的开发指导(文档)
- IDE上手难度几乎为0,很轻松就能跑一个示例
- Arduino对开发板、开源库的管理比较完善,形成了一个硬件、软件的体系,Example几乎可以无缝移植
- 但功能方面个人觉得还是51单片机比较强大,51历史悠久,厂商几乎遍地开花,成本也很低