0 卖盘信息
BOM询价
您现在的位置: 首页 > 电子资讯 >新品快报 > Arduino和单片机有啥区别?

Arduino和单片机有啥区别?

来源: 搜狐
2020-08-07
类别:新品快报
eye 96
文章创建人 拍明

原标题:Arduino和单片机有啥区别?

  搞单片机的读者都应该听说过Arduino,或者用过Arduino,但很多小伙伴还是不清楚究竟什么是Arduino,今天就针对初学者简单描述一下 Arduino 相关内容。

  一、初识Arduino

  要了解Arduino就先要了解什么是单片机,Arduino平台的基础其实就是AVR指令集的单片机。

  1、什么是单片机?

  一台能够工作的计算机包含以下几个部份:中央处理单元CPU(进行运算、控制)、随机存储器RAM(数据存储)、存储器ROM(程序存储)、输入/输出设备I/O(串行口、并行输出口等)。在个人计算机(PC)上这些部份被分成若干块芯片,安装在一个被称之为主板的印刷线路板上。而在单片机中,这些部份全部被做到一块集成电路芯片中了,所以就称为单片(单芯片)机,而且有一些单片机中除了上述部份外,还集成了其它部份如模拟量/数字量转换(A/D)和数字量/模拟量转换(D/A)等。

  2、单片机有什么用?

  所谓杀鸡焉用牛刀,并不是任何场合都需要很高的性能。想象一个使用Intel i7处理器的声控灯,其性价比一定低到突破天际了。应用的关键是看是否够用,是否有很好的性能价格比,于是单片机很好地填补了这个缝隙。

  回过头来,那什么是Arduino?

  Arduino 是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。它适用于艺术家、设计师、爱好者和任何“想捣腾”的朋友们。特点就是形状简单,能够实现与人互动,十岁的孩子也能用它做出一些自己想要的东西。Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,收录进微控制器。基于Arduino的项目,可以只包含Arduino,还可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信 (比如 Flash, Processing, MaxMSP)来实现。

  二、Arduino种类

  市面上可供选择的Arduino板实在太多了,撇开原厂那十几个不说,光某宝上多如牛毛的各式Arduino就有上万种,对于入门者来说简直惨无人道。选择一块合适项目的Arduino是成功的一半,下面我们一起看下最常见的Arduino板以及如何区分它们。

Arduino Mega

  要区分这么多板子,挑选合适的Arduino,主要看以下三个方面:性能、特性以及尺寸。

  首先看性能。即处理器内存、时钟频率以及位宽。硬件处理能力通常完全取决于这块板子的芯片,同时芯片也限制了能够运行的软件。

  其次看特性。包括所有板子上除微处理器之外的所有东西,例如输入/输出针脚,集成元器件(按钮、LED、电机驱动等)以及可用接口的种类和数量(USB、以太网等)。

  最后看尺寸。由于项目性质不同,其留给电子部分的体积和重量也大相径庭。例如要给狗狗做一个追踪器,如果使用Mega和电池盒加上扩展板,至少也得有10*5*5cm大小,200g重,敢问这是追踪器还是沙袋?正因为如此Arduino才有如此多的兄弟姐妹们。

  说了那么多,来看看有哪些主流的Arduino吧。

  1.Arduino Uno

  处理器: ATmega328 (8位 CPU, 16MHz 时钟频率, 2KB SRAM, 32KB 闪存)

  特性: 14 个数字 I/O 口, 6 个模拟输入口, 可更换处理器设计

  尺寸: 75 x 55mm

  2.Arduino Leonardo

  处理器: ATmega32u4 (8位 CPU, 16MHz 时钟频率, 2.5KB SRAM, 32KB 闪存)

  特性: 20 个数字 I/O 口, 其中12 个可作为模拟口, 原生支持USB

  尺寸: 75 x 55mm

  3.Arduino Due

  处理器: Atmel SAM3X8E ARM Cortex-M3 (32 位 CPU, 84MHz 时钟频率, 96KB SRAM, 512KB 闪存)

  特性: 54 个数字 I/O 口, 12 个模拟输入口, 2 个模拟输出口, 原生USB支持

  尺寸: 100 x 55mm

  4.Arduino Micro

  处理器: ATmega32u4 (8位 CPU, 16MHz 时钟频率, 2.5KB SRAM, 32KB 闪存)

  特性: 20 个数字 I/O 口, 其中12 个可作为模拟口, 原生支持USB

  尺寸: 50 x 18 mm

  5.LilyPad Arduino

  处理器: ATmega328 (8位 CPU, 16MHz 时钟频率, 2KB SRAM, 32KB 闪存)

  特性: 14 个数字 I/O口, 6 个模拟输入口

  尺寸: 50mm 直径圆形

  当然,还有很多,这里就不一一列出来了,感兴趣的可以自己了解。

  三、Arduino编译环境下载安装

  下载地址:

  https://www.arduino.cc/en/Main/Software

  三大主流操作系统 Windows、 Mac、 Linux都支持,可更加自己情况选择下载。

  安装的过程,这里就不一一讲述, 基本上都一路“Next”下去就行。如果不会安装,我觉得你是一个 不合格的开发者。

  四、认识Arduino IDE

  这次小实验目的就是在Arduino UNO板上点亮13号引脚的LED灯,持续一秒,然后灭掉,再持续一秒,一直循环。

  现在,我们假设使用的是Arduino UNO型号的控制板(初学者建议用UNO,稳定),而且按照上面步骤也已经部署好了Arduino开发环境,安装好USB驱动。

  1.连接Arduino控制板和电脑

  将USB线一端插在Arduino控制板上,一端插在电脑的USB接口上。(注意:独立工作时Arduino控制板既可以选择从USB供电, 也可以选择用充电宝或电源适配器供电)

  连接Arduino控制板和电脑

  打开Arudino IDE,就会出现Arduino IDE的编辑界面

  2.认识Arduino IDE

  我们先简单认识一下Arduino的这个编译器,以后可是要经常和它打交道的。

  Arduino IDE是Arduino产品的软件编辑环境。简单的说就是用来写代码、下载代码的地方。

  任何的Arduino产品都需要下载代码后才能运作。

  我们所搭建的硬件电路是辅助代码来完成的,两者是缺一不可的。如同人通过大脑来控制肢体活动是一个道理。如果代码就是大脑的话,外围硬件就是肢体,肢体的活动取决于大脑,所以硬件实现取决于代码。

  Arduino IDE基本的功能区已经在上面标示出来了(偷个懒用的旧图,不过和新版的布局一样的),上图大部分的白色区域就是代码的编辑区,用来输入代码的。注意,输入代码时,要切换到英文输入法的模式。下面黑色的区域是消息提示区,会显示编译或者下载是否通过。

  3.下载一个Blink程序

  下载一个最简单的代码,既可以帮我们熟悉如何下载程序,同时也测试下板子好坏。

  UNO板上标有L的LED。这段测试代码就是让这个LED灯闪烁。

  4.打开Blink

  插上USB线,打开Arduino IDE后,找到“Blink”代码。

  文件 > 示例 > 01.Basics > Blink

  5.校验程序

  通常,写完一段代码后,我们都需要校验一下,看看代码有没有错误。点击“校验”。

  校验(编译)完成后,可以看到相应的提示。

  由于是样例代码,所以校验不会有错误,不过在以后写代码的过程中,输入完代码,都需要校验一下,然后再下载到Arduino中。

  程序在下载之前,我们还要先告诉Arduino IDE,我们用的是什么板子以及相应的串口是哪个。

  6.设置板卡型号

  Arduino包括多种版本的主控器,其中比较常见的是Uno、Leonardo以及Mega系列的控制器(最全选型指南)。

  在板子一栏,你需要根据自己选择的主控硬件的固件类型来选择板卡。(样例中选用的以Uno为bootloader的控制器) 工具 > 板卡 > Arduino Uno

  7.设置串口

  工具 > 串口 > xx,这里的xx要和我们电脑设备管理器中看到的一致。

  8.下载程序

  如图,最后,点击“上传”。(这边上传和前面的下载其实是一个意思)

  上传完毕!

  不出意外,我们就能在板子上直观地看到程序运行的效果了:

  Adruino Uno板上13号引脚的LED灯在闪烁。

  好了,IDE最最基本的操作就是这些了。


责任编辑:

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

标签: Arduino

相关资讯