Arduino - 入门02 - Arduino编程基础 Arduino程序结构,实物与模拟器对照,Arduino常用函数

目录

1,Arduino程序结构

2,开发板上面的端口

[2-1,数字端口:D2-D13 ---一共12个端口](#2-1,数字端口:D2-D13 ---一共12个端口)

[2-2,A0-A5 ---6个端口也可以作为数字端口使用](#2-2,A0-A5 ---6个端口也可以作为数字端口使用)

2-3,实物和SimulIDE中对照

3,Arduino中最常用的库函数

[3-1,pinMode - 端口方向设置](#3-1,pinMode - 端口方向设置)

[3-2,digitalWrite - 数字状态输出](#3-2,digitalWrite - 数字状态输出)

[3-3,digitalRead - 数字状态输入](#3-3,digitalRead - 数字状态输入)

[3-4,delay - 延时函数](#3-4,delay - 延时函数)

4,测试一下各种函数

4-1,电路设计

[4-2,Arduino IDE编程](#4-2,Arduino IDE编程)

4-3,加载固件到电路

4-4,测试


下面是详细内容。

1,Arduino程序结构

新建一个Arduino项目之后,它显示的是这样的默认ino文件

里面只有setup,loop函数

Arduino上编写的是C语言,那C语言大家都知道有个Main函数啊

其实Arduino给做了个封装的

内置的main函数是这样的:)

2,开发板上面的端口

2-1,数字端口:D2-D13 ---一共12个端口

TX1,RX0 也可以作为数字端口,

但是它们也连了一些其他的硬件,所以咱们不要轻易使用

2-2,A0-A5 ---6个端口也可以作为数字端口使用

这默认是作为模拟信号的输入,但是通过设置也可以作为数字端口使用

2-3,实物和SimulIDE中对照

基本上是一一对应的

模拟器上面数字端口只是数字表示,板子上面是有D前缀

3,Arduino中最常用的库函数

3-1,pinMode - 端口方向设置

  • 函数:pinMode(pin, mode)

  • pin:引脚号 - 0,1,2,3,...

如果用到A0-A5,则是14 - 19

  • mode:端口的方向,比如 输入 INPUT,输出 OUTPUT,...

3-2,digitalWrite - 数字状态输出

  • 函数:digitalWrite(pin, value)

  • pin:引脚号 - 0,1,2,3,...

如果用到A0-A5,则是14 - 19

  • value:输出状态,比如 高电平 HIGH,低电平 LOW

3-3,digitalRead - 数字状态输入

  • 函数:digitalRead(pin)

  • pin:引脚号 - 0,1,2,3,...

如果用到A0-A5,则是14 - 19

  • 返回值:输入状态,比如 高电平 HIGH,低电平 LOW

3-4,delay - 延时函数

  • 函数:delay(ms)

  • ms:延时毫秒值,1秒 = 1000毫秒

4,测试一下各种函数

先熟悉一下SimulIDE中一些器件

比如LED阳极和阴极各连接一个固定稳压器

这时候阳极打开,阴极关闭,开始模拟的话,是可以模拟成功的,也就是LED会发光

但是呢,它是强光闪烁的,这是什么意思呢?

就是说从二极管特性上是可以发光,但是现实当中你要真这么干,电流会非常大,马上就烧毁了。

这里要加一个固定电阻,这样就可以正常运行了

4-1,电路设计

我们这里要做的就是将LED阳极连到Arduino板子的数字输出上

当数字输出为高电平,LED就发光

所以设计就如下了:

下面的编程,编译,加载固件可以参照这篇文章

https://blog.csdn.net/shi_ly/article/details/160925284

4-2,Arduino IDE编程

  • pinMode:设定端口方向

不设定方向的话默认是输入,但是不要依赖它,不管是输入还是输出都最好在setup里明确写上

这里是输出,所以肯定是要写的

  • digitalWrite,delay:4号针脚输入 高电平,然后延时300毫秒,再给低电平,再延时800毫秒

    void setup() {
    pinMode(4,OUTPUT);
    }

    void loop() {
    digitalWrite(4,HIGH);
    delay(300);
    digitalWrite(4,LOW);
    delay(800);
    }

保存并编译成二进制代码

4-3,加载固件到电路

4-4,测试

点击运行,就可以看到LED灯自动亮灭闪烁

以上就是本篇的全部内容。

如果大家觉得还行,希望大家多点赞,收藏,转发,感谢!

更多业务知识请点击下面目录链接或东京老树根的博客主页

https://blog.csdn.net/shi_ly/category_12216766.html

东京老树根-CSDN博客

相关推荐
工业机器人销售服务1 小时前
2026 年,探索专业伯朗特机器人的奇妙世界
人工智能·机器人
辰尘_星启2 小时前
【ROS2】DDS 底层通信协议与数据流转全链路解析
机器人·ros2
飞Link5 小时前
具身智能港亮相深圳:从“大脑”到“身体”,开启人形机器人产业新纪元
人工智能·机器人
打小就很皮...6 小时前
基于Python + LangChain + 通义千问的聊天机器人实战
前端·langchain·机器人·千问
workflower8 小时前
从拿订单到看方向
大数据·人工智能·设计模式·机器人·动态规划
xwz小王子9 小时前
Science Robotics 演示一次,执行多项:运动智能用于跨机器人技能转移
机器人
iCxhust11 小时前
8086/8088单板机VSCode集成自动下载功能(完善串口接收显示版)
ide·vscode·单片机·编辑器·微机原理·8088单板机·8086单板机
米饭不加菜11 小时前
机器人——改进的D-H参数法
机器人
AI科技星11 小时前
算法联盟ROOT · 全域数学物理卷第20、21、22分册:量子纠缠、隐形场论与时间膨胀
人工智能·算法·数学建模·数据挖掘·机器人