• Arduino从零开始(0)——介绍与点亮LED


    0.前言

    Arduino大致由两个要素构成。硬件,Arduino控制板,如Arduino Uno,Arduino Mega2560等这些;软件,Arduino IDE开发环境,通过IDE制作各式各样的sketch上载至Arduino控制板中,并通过这些sketch告诉控制板应该做什么。

    目录

    0.前言

    1.控制板介绍:

    2.开发环境IDE介绍

    2.1库文件下载与安装

    3.Arduino在线模拟网站推荐

    4.第一个小程序——点亮LED


    1.控制板介绍:

    以Arduino Uno为例:

    工作电压5V
    输入电压(推荐)7~12V
    输入电压(限制)6~20V
    每个I/O引脚的直流电流20毫安
    时钟速度16MHz

    包含14个数字I/O引脚,即pin0~pin13,作为输入(INPUT)或者输出(OUTPUT)用,并通过Arduino IDE制作的sketch来设置其工作模式。输入模式下,引脚端口接收从传感器发来的信号,这里接收的信号为数字信号即开关信号。输出模式下,由引脚端口发出开关信号,用于控制,取值上为LOW或HIGH,或者0或1。其输入输出电压最低和最高一般为0V和5V。

    包含6个模拟引脚,即pinA0~pinA5。模拟引脚是作为读取由模拟传感器发出的模拟信号来使用。和数字引脚不同,它返回0-1023之间的值,每读一次需要花1微妙的时间。

    包含6个模拟信号输出引脚,即pin3、5、6、9、10、11。

     共用引脚介绍:

    SPI通信用:是外设串行外设接口的缩写,是一种高速全双工通步的通信总线,只占用四个引脚,可用于上下设备之间通信。除了板子上ICSP处专用的SPI引脚以外,部分数字引脚也能充当SPI引脚来使用。它们是:

            SCK——13,连续时钟信号

            MISO——12,主进从出,master in,slave out

            MOSI——11,主出从进,master out,slave out

            SS——10,从机选择

    USB通信用:除了外接的USB线来实现通信外,通过主板上的数字引脚也能实现,它们是:

            TX——1

            RX——0

    IIC通信用:是一个多主从的串行总线,属于半双工同步传输类型总线。它们是:

            SDA——A4

            SCL——A5

            以及专用引脚: 

    2.开发环境IDE介绍

    首先是IDE的下载地址:

    Arduino官网下载地址

     写这篇文章的时候,Arduino IDE已经更新到2.0版本了,对于老版本,如:1.8等,我们可以在Arduino文件中找到源代码,可以更好理解学习。2.0以上的版本就被集中整合起来了,对于1.8版本,其源代码地址为:arduino-nightly\hardware\arduino\avr\cores\arduino。虽然正常编写时不会去管源代码,但有时为了更好理解函数背后的输入输出,是可以看看的。

    IDE下载完成后,更改为中文环境:

     然后重启。

    2.1库文件下载与安装

    第三方库文件的下载与安装方法:项目>加载库>管理库,由官方收录的库可在这里面下载自动安装,如果是未收录的,需要打包成ZIP后添加即可。

    3.Arduino在线模拟网站推荐

    对于Arduino的一些简单的元器件模拟,可以使用thinkercad。本身thinkercad就是一款免费的,易于使用的三维设计,电子电路设计和编程的在线软件。而其中电子电路设计这块儿更是专为Arduino所开发设计的。

    网站如下:

    https://www.tinkercad.com/

    该网站最大的亮点,除了可以在线编辑Arduino的代码外,对于一些基本元器件都有可模拟的模块供使用,对于我们初期学习有一定帮助 。

    4.第一个小程序——点亮LED

    接线图:

    代码如下:

    1. int LED=12;//定义管脚
    2. void setup() {
    3. pinMode(LED,OUTPUT);//定义为输出模式
    4. }
    5. void loop() {
    6. digitalWrite(LED,HIGH);//点亮LED
    7. delay(1000);//延时1S
    8. digitalWrite(LED,LOW);//熄灭LED
    9. delay(1000);//延时1S
    10. }

    在Arduino的代码中,标准的程序入口main函数已经在内部被定义了。我们只需要关注两个函数:

    setup():

    当Arduino板启动时,setup()会先被调用,并用其来初始化变量,引脚模式,开始使用某个库等,该函数在每次上电或复位时只运行一次。

    loop():

    在创建setup函数时,该函数初始化和设置初始值,loop()函数用于连续的循环,并允许程序改变状态和响应事件。通过其来实现控制Arduino板。

  • 相关阅读:
    pytorch常用知识记录
    从MBD到MBE的战略转型路径
    当NLP遇见RPA:搭建人与机器沟通的桥梁
    Stable Diffusion 告别猜关键词,LoRA适配关键词自动生成
    二、Eureka服务注册与发现
    Android案例手册 - 实现下多个按钮展开收缩动画工具类
    j2ee [ 自定义MVC实现增删改查分页 ]
    Containerd【轻量级容器管理工具】
    怎样的代码才能在头歌平台运行
    图解Nginx,系统架构演变 + Nginx反向代理与负载均衡
  • 原文地址:https://blog.csdn.net/lylelo/article/details/127755478