从一个空白芯片开始制作arduino uno最小系统板

摘要:只用一个空白的芯片是无法实现在arduino 编程环境中编程的,芯片需要烧录arduino专用的bootloader才能使用。本文介绍如何从购买一个空白芯片开始,制作arduino uno 的最小系统板。

硬件:ATMEGA328P芯片,27pf电容,0.1uf电容(丝印104),带有DTR引脚的USB串口模块,杜邦线若干

软件:win7 x64,arduino ide 1.8.13

目录

1.制作思路

 2.UNO最小系统的基本原理图

 3.为什么不用NANO

 4.如何为空白芯片烧录arduino专用bootloader

 5.组装最小系统板

 6.烧录BLINK到最小系统板


1.制作思路

自己制作一个uno最小系统板,并不是费力不讨好。

因为快速做出硬件原型的首选,大多数还是arduino,但是arduino的板子一般是国际标准的大板,如果做成小板,同时也能用在项目中,那么就需要自己设计了。

使用arduino可以用几分钟到几十分钟的时间,做出来一个功能完善的硬件设备。除了arduino的硬件结构简单之外,它的开发环境ide体积小巧易安装,第三方库丰富,开发代码短小精炼也是首选它的重要原因。

假如开发一个STM32程序,我们往往需要一个体积庞大的开发板,专业的仿真器,还有价格在5位数以上的ide才能办到。但是arduino就不用考虑这么多,几分钟就可以搭建完成开发环境,敲几行代码就可以实现一个软件功能。最关键的,它还是免费的。

因此,在平时开发的时候,遇到的一些时间紧,但是功能又不太复杂的硬件,可以先用arduino跑一跑,比如几个gpio的逻辑电平,再比如spi,iic等接口。

arduino uno是最常见,也是最经典的一款arduino产品。 那么如何做出一个能编程的UNO最小系统板呢?有了最小系统板,下一步用在各类项目中就便利多了。

大致的思路如下图所示,首先购买芯片,注意新购的芯片是无法支持arduino ide编程的,因为它内部还没有专用于arduino ide对它进行烧录的bootloader。芯片烧录好之后,就可以安装到最小系统板了。

 2.UNO最小系统的基本原理图

如下图所示。ATmega328P芯片组成的最小系统仅需三个元器件即可工作。分别是16M 晶振,22pf电容,这两个元器件用来为芯片提供时钟。指示灯和限流电阻可以不用。

 ATmega328P芯片的引脚分布如下图所示。第7脚,第20脚是VCC,需要连接5V电源。第8脚和第22脚是GND,需要接地。第21脚是模拟参考电压,可以连接5V,也可以悬空。

 3.为什么不用NANO

为什么有NANO小板不用,这个板子不是挺小的嘛,为何还偏偏要自己设计?

 我们来看一下NANO板的引脚分布,可以发现NANO板的功能引脚比较少。比如SCL和SDA引脚,使用起来就相当不便。

 下图是UNO的引脚分布,明显功能引脚多好几个。而它的芯片就是ATmega328P,要想缩小体积,不如使用这个芯片来设计体积更小的最小系统板。

 4.如何为空白芯片烧录arduino专用bootloader

原因是与arduino ide配套,必须使用专门的bootloader。我们都知道,arduino又称“电子积木”。对它编程就像是搭积木一样,即使不用图形化的开发界面,直接用代码方式编辑,也可以实现几行代码搞定复杂功能。这个体积小巧、编程简便的ide,要想将程序通过串口在线烧录至UNO(芯片就是ATmega328P),那么就得在芯片里面预先有一个负责通信的程序在运行,这个负责通信的程序就是bootloader。它的功能可不止是通信,还有其他复杂、实用的功能。有了它,我们才能够像开发arduino uno 一样开发它。烧录又bootloader的芯片组成的系统才可以成为uno 或者其他的名字。

 这个bootloader怎么烧写?我们需要一个仿真器或者烧录器才能实现。

本文介绍一种没有仿真器的烧写方法:就是用2块UNO来开发。

注意其中一片需要有直插芯片座,这个板子就当做是烧写座。

 另一个UNO板烧录一个专用的固件,做成一个“烧录器”。

方法是像烧录一个普通程序一样烧录。打开“实例”---ArduinoISP---ArduinoISP,然后烧录。

 制作完成“烧录器”之后,就可以将“烧录器”与芯片插座用特定的引脚连接起来了。

 我们注意到,有5个引脚是通过ICSP插座连接的。这个插座位置如下图所示。如果有专业仿真器的话,可以用这个插座烧录,就不用像本文这么复杂地操作了。

 这个6针ICSP的引脚定义如下图所示。除了D10引脚外,D11 12 13和GND,5V全部都有。

 将两个UNO板连接起来。除了“烧录器”的D10与被烧录“插座”RESET相连,其他几个引脚全部都用烧写插座连接即可。这样做的好处是一对一连接,不容易插错。

引脚连线结束后,可以烧录引导程序。按下图所示,选择“工具”----烧录引导程序。此时,端口需要选择为“烧录器”的串口,USB线也是连接到“烧录器”的。

 烧录开始

烧录程序速度很快就可以完成。UNO板上一些指示灯闪烁。

5.组装最小系统板

最小系统板的基本电路如下图所示。

 可以使用万能板照此电路组装。

也可以使用面包板组装。

需要的硬件很少

组装完成的效果

6.烧录BLINK到最小系统板

bootloader烧录好之后,这个最小系统板就相当于一个真正的UNO了。

我们可以在这个“乞丐版”的UNO上使用arduino ide烧录程序。如果能烧录,那么就成功了。

使用一个带有DTR的USB串口模块。具体的原因请自行查找。这个DTR引脚在烧写的时候,需要通过一个0.1uf的电容连接到目标板的RESET里面。

连接如下图所示

 然后打开arduino ide,选择BLINK例程,烧录到刚才做出来的UNO里面。

烧录成功,即可证明最小系统制作完成。

版权声明:本文为CSDN博主「TMS320VC5257H」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/youngwah292/article/details/120597773

生成海报
点赞 0

TMS320VC5257H

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

数码管轮播显示

硬件: 数码管10个引脚,8个控制二极管亮、灭,2个引脚为负极。1k欧电阻链接负极,接gnd。 将8个二极管引脚依次链接0-7号引脚。 软件: /*共阳极单数码管显示&

基于Arduino的显示测量环境数据设计

题目: 基于Arduino的显示测量环境数据设计 目录 基于Arduino的显示测量环境数据设计... 3 第一章 课题任务... 4 1.1课题任务... 4 1.2任务分工... 4 1.3设计条件... 4 第

2021全国电设(F题)灰度传感器——循迹红线

基于灰度传感器的循迹(红色循迹) 通过参加全国电子设计大赛F题总结出识别红色线路的循迹方法——灰度传感器 灰度传感器的工作原理 灰度传感器利用不同颜色的检测面对光的反射程度不同,光敏电阻对不同检测面返