1.1什么是Arduino

Arduino是2005年诞生于意大利的一种可编程单片机电路板(一般称其为Arduino开发板,如图I-l所示),到现在已经有10多年的历史了。Arduino不同于普通的单片机开发板,它在单片机的基础上,加入使其能适应大部分运行条件的电子元件,例如,电容、电阻、晶振、晶体管等,使其能直接工作,适应较宽的电压,引出简单的l/O接口,方便使用杜邦线快速实验和配套扩展板使用。
        Arduino开发板可以看成是一块具有简单I/O接口面板的较成品化的单片机,拥有其单片机核心可编程、数据处理、数据储存、定/计时器、串行和总线通信、脉宽调制信号、模拟多路转换器、A/D转换器等功能。因此可通过编程随意控制I/O实现电信号控制、采集和电子通信,所以电子电路知识的学习可以抛开部分枯燥、精准的电路设计,使这部分内容被理想化地代替。

总的来说,Arduino的具体特点如下:
        ●能进行快速、高效地开发;
        ●具有丰富的开发资源;
        ●开发板连接上位机后可以直接更新程序、通信或交互;
        ●开发板适应电源宽;
        ●开发板小巧,方便移植。

1.2Arduino Uno参数介绍

Arduino Uno的大部分参数都由其微控制器ATmega328决定。以下为其详细参数。
●微控制器:ATmega328;
●数字I/O脚:14个(其中3、5、6、9、10、11共6个引脚可作为PWM输出);
●模拟输入脚:6个;
●I/O脚最大电流:40 mA;
●3.3V脚直流电流:50 mA;
●Flash储存:32 KB(其中Bootloader占用0.5KB);
●SRAM:2 KB;
●EEPROM:1 KB;
●晶振:16 MHz;
●工作电压:5V;
●输入电压范围:6~20V(推荐7~12V,9V最佳)。
        在USB供电直接使用Arduino Uno开发板时,短路、过载等电流过大情况可能会烧毁计算机主板。尽管电脑主板一般会对USB电流过载进行保护,但是开发板上仍设计了一个可重置保险丝。当电流超过500mA时保险丝将断开,开发板与USB电源的连接也会暂时断开以保护计算机主板。

1.3Arduino接口介绍
Arduino Uno开发板上左右侧两排杜邦线接口可分为以下4部分。
●电源:包括电源输入、输出和复位等;
●数字I/O:包括PWM信号输出和SPI总线;
●模拟输入:包括模拟输入、TWI总线(该部分接口又可用作数字I/O接口);
●预留接口:位于左上角,开发板上无电路,备用。
其中电源部分包括以下几部分。
●VIN:开发板电源正电压输入接口;
●GND:参考地接口,即开发板电源负极,开发板上3个GND接口互相接通,可用于分流;
●5V:经过稳压芯片降压后的5V电压输出接口;
●3.3V:经过稳压芯片降压后的3.3V电压输出接口;
●AREF:模拟输入信号的基准参考电压输入接口;
●IOREF:开发板工作电压输出,供扩展板参考,以区分5V工作Arduino开发板与3.3V工作开发板,Uno中该接口与5V接口相连;
●RESET:复位信号输入,当输入低电平时复位Arduino。

Uno可以通过DC电源接口使用电池或电源适配器供电,也可以通过USB接口直接供电,还可以通过VIN接口供电。当使用前两种方式供电时,可从VIN接口取电,使用第三种方式供电时,Uno会忽略从USB或其他引脚接入的电源。
        数字I/O接口部分,因为开发板在5V电压下工作,所以数字I/O接口输出的高电平最高也只有5V。每个接口能通过的最大电流为40mA(超过该值工作会有烧毁危险),每个接口还有内部上拉电阻20~50kΩ,使用上拉电阻需通过程序操作。以下引脚为特殊引脚。
●PWM输出(3、5、6、9、10、11):该6路提供8位PWM输出;
●UART通信RX(0)、TX(1):即ATmega328串行通信接口,由于开发板内部与USB转串口ATmega16U2芯片连接,当下载程序时不当使用该接口可能会造成下载错误;
●外部中断(2、3):中断触发引脚,可设置程序上升沿、下降沿或电平变化时触发中断;
●SPI总线(10(SS)、11(MOSI)、12(MISO)、13(SCK)):与Uno开发板上ICSP接头对应相通;
●开发板上指示灯L(13):与开发板上LED指示灯L正极相连,该接口高电平时能点亮该指示灯。

模拟输入接口A0~A5共6路,具有10位的分辨率(即可以将输入电压值转化为0~1024范围内的值),通过AREF脚可以调整输入电压上限。其中,A5、A4接口即TWI总线(该总线兼容I2C总线)接口,与开发板右上角两个杜邦接口(无PCB丝印的接口SCL、SDA, A5对应SCL, A4对应SDA)相通。
        开发板上有两个ICSP接头,一般均指有ICSP丝印字样的ATmega 328单片机的ICSP接头,即开发板下方的ICSP接头。通过该ICSP接头,可在使用SPI通信时方便开发板与外部设备连接,还可以用于更新单片机的Bootloader,不通过ATmega 16u2虚拟成串口,而是从PC直接下载程序。Uno开发板右上方的ICSP接头为USB转串行芯片ATmega16u2更新固件或Bootloader使用,因为ATmega 16u2固件和Bootloader相对稳定,很少更新,所以该接头除Uno出厂时可能使用外,平时基本不使用。
        ICSP接头是带有5V电压输出接口和GND接口的,即其与5V、GND接口相通。两个ICSP接头有两路5V和GND,加上杜邦接口5V、3.3V、IOREF、VIN等电源输出,以及3个GND接口,Uno具有6个正电源输出接口和5个GND接口。当使用Uno遇到电源接口不够时,应考虑这点巧妙布线。

(详情可见图)

参考《从零开始学Arduino电子设计》一书。

Arduino Uno基础入门01(认识Arduino)相关推荐

  1. 视频教程-ARDUINO零基础入门教程【代码编程篇】-Arduino

    ARDUINO零基础入门教程[代码编程篇] 精通各种单片机编程,有十年以上ARDUINO,51单片机/STM32/PIC/AVR编程,硬件设计,绘图,编程经验.熟悉各种常用传感器使用和物联网通讯 赵勇 ...

  2. 【太极创客】零基础入门学用Arduino 第一部分 合辑笔记

    [太极创客]零基础入门学用Arduino 第一部分 合辑 笔记大多整理于B站评论区 https://www.bilibili.com/video/BV164411J7GE/?spm_id_from=3 ...

  3. Arduino零基础入门

    Arduino零基础入门 arduino学习笔记1 - 什么是arduino? 要了解arduino就先要了解什么是单片机,arduino平台的基础就是AVR指令集的单片机. 1.什么是单片机?它与个 ...

  4. Arduino uno基础教程

    Arduino uno R3创客增强板学习记录 文章目录 Arduino uno R3创客增强板学习记录 前言 一.I/O口的简单使用 二.I/O口的高级使用 三.类库的使用和编写    3.1使用类 ...

  5. python基础入门01

    python 基础入门01 前言 python 是一种计算机程序设计语言, 由创始人吉多·范罗苏姆(Guido van Rossum) 在1989年阿姆斯特丹的圣诞节期间为了打发无聊的时间,决定开发一 ...

  6. 数据结构和算法_零基础入门01

    数据结构和算法_零基础入门01 一.数据结构是什么? 逻辑结构.物理结构 二.算法 算法的五个基本特征 算法设计的要求 b站学习小甲鱼的数据结构与算法,自留笔记. 程序设计=数据结构+算法 一.数据结 ...

  7. python arduino i2c1602_Arduino基础入门—3.连接 IIC 1602 LCD显示文字

    1. IIC转接板介绍 Arduino Uno R3开发板的外部IO口是非常有限的.在驱动LCD1602时,尽管我们的数据线使用了4线,相对于8线方式减少一半,但是在需要外接多种传感器的应用中,4线驱 ...

  8. Arduino基础入门篇02—Arduino开发环境IDE安装使用

    工欲善其事,必先利其器.本文主要介绍Arduino开发环境IDE的安装及功能介绍. Arduino IDE安装 从官网下载IDE开发环境,IDE下载地址 .笔者使用Win10系统,点击 Windows ...

  9. arduino语言是c语言吗,Arduino编程基础(一)——Arduino语言

    Arduino语言 Arduino使用C/C++编写程序,虽然C++兼容C语言,但这是两种语言,C语言是一种面向过程的编程语言,C++是一种面向对象的编程语言.早期的Arduino核心库使用C语言编写 ...

最新文章

  1. 牛逼了!一周内咸鱼疯转 3.6w 次,最终被所有大厂封杀!
  2. 2018-2019-1 20165236 《信息安全系统设计基础》第4周学习总结
  3. 饿了么异地双活数据库实战
  4. python drawline_基于python,OPenCv中基本的绘图函数
  5. jQuery实战读书笔记(第五章)
  6. LeetCode 2039. 网络空闲的时刻(BFS)
  7. java编写在输入特定日期之间_java实现输入日期
  8. 9:38 2009-7-29
  9. 如何设置mysql远程访问
  10. Web.xml详解(转)
  11. 基于SSM的健身俱乐部管理系统
  12. 李珊珊(为奥运冠军名字作诗)
  13. 10-微信小程序商城 分类和产品 产品列表(微信小程序商城开发、小程序毕业设计、小程序源代码)(黄菊华-微信小程序开发教程)
  14. 斐讯盒子N1/T1_通用超精简刷机固件分享及教程
  15. c语言窗口炸弹代码,C语言实现宾果消消乐
  16. AutoCAD DWG 读模块参数:处理块
  17. IDEA连接MySQL数据库时 schemas不显示数据
  18. 已解决java.lang.Integer cannot be cast to java.lang.String异常的正确解决方法,亲测有效!!!
  19. 有那些适合苹果手机用的蓝牙耳机?适合苹果手机用的蓝牙耳机推荐
  20. 高精度加法------C++

热门文章

  1. SpringMVC源代码学习外传(三)RequestCondition
  2. 2021-2027全球与中国电子数字位置指示器市场现状及未来发展趋势
  3. 北京大气污染PM2.5预测(LSTM)
  4. Apache Ant入门教程——基础使用教程
  5. 科比:我多么希望着一切都未发生
  6. 全球功率半导体市场格局:前十名供应商全是海外企业?
  7. python商城系统_基于python的海鲜商城系统
  8. Html5图片翻页制作,HTML5超酷名片盒风格3D翻页图片画廊
  9. android 三星拍照,据说卖断货?我替大伙试试三星S10的拍照功能好不好用
  10. 为发布的windows软件解决 “发布者:未知 ”问题