先呈上官网原滋原味的介绍,以资鼓励~
Arduino mini pro 官方网站
这两天随手玩了玩大名鼎鼎的Arduino,于是又随手写两篇笔记玩玩~
我玩的不是那个贵到上天,大得吓人的Arduino大儿子UNO,而是在某宝上只要9块就可以带回家的微型迷你版Arduino,称Pro mini。大概长这样~
Arduino Pro Mini 是基于ATmega328单片机的开发板,其实吧~除了电源就只剩ATmega328或者ATmega168了。它的尺寸只有0.7'' x 1.3'',目前它有两个版本:
- VCC:5v / CPU:16MHz
- VCC:3.3v / CPU:8MHz
基本参数如下:
单片机 | ATmega328 | ATmega168 |
---|---|---|
板载电源 | 3.35/5v~12v | 3.35/5v~12v |
逻辑电平 | 3.3v/5v | 3.3v/5v |
GPIO | 14 | 14 |
PWM | 6 | 6 |
UART | 1 | 1 |
SPI | 1 | 1 |
I2C | 1 | 1 |
模拟输入 | 6 | 6 |
外部中断 | 2 | 2 |
IO口额定电流 | 40mA | 40mA |
Flash | 32kB(2kB用于Bootloader) | 16kB(2kB用于Bootloader) |
SRAM | 2kB | 1kB |
EEPROM | 1kB | 0.5kB |
时钟速度 | 8MHz(3.3v)/16MHz(5v) | 8MHz(3.3v)/16MHz(5v) |
上面的参数里关于GPIO、SPI、I2C、PWM的讨论在很多地方都有,这里就不说了,说说比较容易搞晕的Flash、SRAM、EEPROM。
SRAM
就是所谓的RAM,内存!运行内存!内存条儿那个内存!一定记住不是平时说的手机内部存储那个内存哈,那个内存是储存空间,相当于硬盘空间,和真正意义上的运行内存是不一样的东西,不!一!样!~
Flash
又称Flash memory,这个是内部存储,这个用于保存烧写到单片机上的程序,叫固件也可以。一般它的擦写寿命在10w次左右(听说~→_→)。上面表格里说到Flash中有2kB用来存Bootloader,剩下的空间就可以用来存我们自己写的程序。Bootloader属于单片机、手机、平板包括电脑启动时跑的加载程序,它起来后会加载系统,也就是平时说的ROM或者Firmware之类的东西。
EEPROM
这个也是内部存储,它主要用于存储一些程序跑起来后产生的持久化数据,比如用户做的设置。就算停电了都不怕,下次启动后还可以读到上次写入的内容。它的擦写寿命比Flash长一点,100w次左右(也是听说~←_←)。
好了,没啥说的了,接下来就是看看上面表格里说的那些数字端口引脚了。
I/O
- 图示里标注为IDE的,就是说在写代码时,需要用IDE标注里的名称来获取IO口,或者叫pin(针脚)
- 烧写程序使用的针脚为图中北面一排(上北下南左西右东哈,你知道我说北边儿是哪边儿),当不烧写时也可作为UART口使用
烧写程序
Ardunio Pro Mini烧写程序是使用UART的,可以使用常见的3线UART,也可以使用带流控的5线UART。我们在某宝上可以轻易的买到USB to TTL Serial Cable,这个可以作为官网上所说的ISP了。
使用带流控的5线UART来给Arduino Pro Mini烧写程序,唯一的一个好处就是在IDE上传固件到Arduino Pro Mini时,你少按一个Arduino Pro Mini上的RESET按钮而已。但5线的UART不大好买,买不到的话,还得自己在基于类似CH340G这样的USB to TTL Serial Cable上引出流控脚,太麻烦。
使用5线UART时,应该这样接线:
使用3线UART时,应该这样接线:
接下来把连接上Arduino Pro Mini的USB to TTL Serial Cable插入电脑,并装好USB to TTL Serial Cable的驱动,然后按照下面的步骤来烧写固件。
** 1. 下载IDE **
虽然说Arduino官方有Web Editor,但怎么说呢,用起来终究有点水土不服,所以我最终还是下载了本地IDE才顺利烧写上固件了。
Ardunio IDE下载地址
** 2. 设置IDE **
这里要设置一些信息让Arduino IDE正确找到连接到电脑上的Arduino Pro Mini。
- 菜单栏 -> 工具 -> 串口 -> USB to TTL Serial Cable插入电脑后新增的COM口
- 菜单栏 -> 工具 -> 板卡 -> Arduino Pro or Pro Mini
- 菜单栏 -> 工具 -> 处理器 -> 选择你购买的Arduino Pro Mini的具体处理器规格
** 3. 编译程序 **
在Arduino IDE里写好代码后,检查保存后,确认代码人畜无害后,叫非战斗人员立即撤离后,保证世界和平后,温油地点下Arduino IDE工具栏上的编译
按钮[此处应有图,浅浅,肿么肥事],你就可以在Arduino IDE的Console里看到编译信息,包括你的代码如何残酷而错误地扭曲了编译器的三观的报告信息。
** 4. 上传固件 **
点击工具栏上的上传
按钮[此处应有图,浅浅,肿么肥事]后,在Console里能看到正在编译的信息。当编译成功并结束后,Console会开始显示"上传",如果你用的3线UART来连接的电脑,此时在上传超时前按下Arduino Pro Mini上的RESET按钮,固件就开始上传到Arduino Pro Mini的Flash中了。如果你用的是5线UART来连接电脑,这个时候你什么都不用做,坐等就好。
上传固件的过程中,你可以看到USB to TTL Serial Cable上的TX和RX LED灯狂闪,就说明固件正在往Ardunio Pro Mini上发送。如果不闪而且你的USB to TTL Serial Cable确实也有TX和RX的指示LED灯,那你就要检查是不是姿势不对了,重新按照本文说的步骤检查一遍或者买个T3锤子砸死电脑。
当固件上传完成,Arduino IDE的Console会显示上传完成,Arduino Pro Mini也会开始执行你的固件。
** 5. 串口验证 **
如果,如果你的程序里有通过Serial
去打印Log信息,那么你在Arduino IDE的Serial Console就能看到Arduino Pro Mini输出的信息了。