Arduino uno的制作与调试
- 格式:doc
- 大小:8.71 MB
- 文档页数:24
Arduino uno的制作与调试
Arduino由一个基于单片机的开放源码的硬件平台和一套专的开发门环境组成。它可以用来开发交互产品,比如它可以读取大量的开关和传感器信号,并且可以控制各式各样的电灯、电机和其他物理设备。
经过两个星期的对三块Arduino uno板子的焊接与调试,我已经大概比较熟练的掌握了贴片元件及一些小芯片的焊接技术。现在我想讲讲Arduino uno rev1 这块板子的制作与调试过程。
一、焊接
由于Arduino uno rev1 的硬件是开源的,所以我们可以直接拿来用。
1.拿到PCB板(图1)
图1 Arduino uno rev1 PCB
2.根据元器件清单购置元器件
元器件清单如图2。
图2 元器件清单3.焊接元器件
根据图3来焊接元器件。
图3 PCB焊接图
这里我想说说焊接的方法与技巧(供初学者参考)。这块板子中还是有存在一些比较难焊的地方。
1)芯片ATmega8U2
Arduino UNO与之前Arduino 2009版本的最大不同在于USB转串口部分,Arduino 2009采用的是FTDI专用芯片FT232RL,而Arduino UNO采用的是用一块ATmega8U2模拟出串口的做法。这一改动着实带来了不小的麻烦,第一是该方案所采用的ATmega8U2芯片基本上在市场上很难找到,另外一点就是该芯片的封装加大了焊接的难度和成本。
芯片ATmega8U2的封装很小,而且它芯片的外面没有引脚,可以看到的是它的焊盘非常的小。焊接方法为:在各个焊盘上滴上锡,完了后检查一下有没有焊盘连接在一起的,然后用镊子夹住芯片ATmega8U2,小心的对准位置,对准后用镊子压住芯片,用电烙铁在一边的周围滑动加热,使得焊盘上的锡熔化,则芯片的引脚就焊在了焊盘上,同样的,其他三边也这样。焊完之后用万用表检查一下。
2)贴片晶振及其他的贴片元器件
因为左手是拿镊子夹住器件对准位置,右手拿电烙铁,所以没有另外的手来添加焊锡。这时就需要先在对应的一个焊盘上滴一点焊锡,再将器件对准位置,用电烙铁在上面加热,焊锡熔化就与元器件连接在一起,在焊接另外一个焊盘。
焊接完成后如图4所示。再用万用表检查各个焊点。
图4 Arduino uno rev1
二、原理图分析
1.外接电源输入部分
Arduino UNO可以使用外接电源进行输入,A是电源输入口,电源的输入的范围为7V到12V.。图5中B是二极管,二极管的特性是单向导通。使用二极管的目的是:即使电源输入的正反极性反转,也不会烧毁线路板上的元器件。C是稳压管,把输入电压稳定在5V。由于C器件的输入和输出间需要一定的压差,所以A的输入电压不能低于7V。另外,如果A的输入电压过高,会使得器件C 输入和输出电压差过大,从而使得C因为温度过高也烧毁。用户在使用外接电源输入时,请把输入电源的电压范围控制在7V到12V之间。原则上,越靠近
7V越好。
图5 外接电源输入部分
B电源输入部分
Arduino UNO也可以使用USB口直接供电。图6中A是USB接头,可以给Arduino UNO提供5V的电压。B是保险管,当UNO所需要的电流大于500mA 的时候,该保险管会自动断开,以防止损坏电脑。图中C是10K的排阻,用来对上面提到的外接电源输入进行分压。当外接电源输入电压VIN大于7V时,D 器件的第3脚由于电压高于D器件的第2脚(3.3V),所以D器件的第1脚输出高电平。器件E是PMOS,当D器件的第1脚输出高电平时,器件E处于截至状态,从而切断了USB接口的供电。当外接电源输入电压VIN小于6V时,D器件的第3脚由于电压低于D器件的第2脚(3.3V),所以D器件的第1脚输出低电平。器件E处于导通状态,此时,Arduino UNO由USB口进行供电。器件F是线性稳压器,负责把5V电源转变成3V电源,该器件能给Arduino UNO提供大约50mA 的电流。
图6 USB电源输入部分
3.ATmega8U2/ATmega16U2
ATmega8U2和ATmega16U2是USB接口芯片,其特征包括:
1)8K/16K字节的Flash,支持自擦写功能。512字节EEPROM和512字节SRAM (8U和16U的不同处是Flash容量)
2)内置Boot-Loader功能。
3)支持USB全速,包含4个USB输入输出端口
4)包含内置晶振。
5)操作电压范围为2.7V到5.5V。2.7V时,最大工作频率是8MHz,4.5V时,最大工作频率是16MHz。
三、Arduino uno板子的调试
BtinyISP的驱动安装
Arduino uno的调试用到工具官方支持下载线USBtinyISP 。USBtinyISP也是一款为A VR单片机设计的基于USB接口的ISP下载线,使用它可以为大部分A VR单片机下载程序。在Arduino IDE中,USBtinyISP是一直被支持的下载线,用来下载其bootloader,与之前使用的USBasp 下载线相比,使用起来更加简单。
首先下载USBtinyISP驱动程序,将其解压缩到硬盘上备用。将下载线通过USB 线连接到计算机后,系统会提示找到相应的硬件:
在随后出现的“找到新的硬件向导”对话框中,选“否,暂时不”,然后单击“下一步”按钮:
在随后出现的对话框中,选“从列表或指定位置安装(高级)”,然后单击“下一步”按钮:
接着指定之前解压缩开的驱动文件所在的目录:
单击“下一步”按钮之后,系统就开始安装USBtinyISP所需要的驱动文件:
最后单击“完成”按钮,就大功告成了:
此时在系统的硬件管理器中,我们能够找到“USBtinyISP A VR Programmer”,表明该下载线已经可以使用了: