“Arduino”怎么读

“Arduino”怎么读,第1张

arduino/a:(r)d∧inəu/

阿迪诺

Arduino源于意大利,是1000多年前一位国王的名字,而在这位国王的出生地,意大利北部一个如诗如画的小镇Ivrea,有家叫di Re Arduino的酒吧,Arduino联合创始人经常光临这家酒吧,公司因此而得名。

Arduino的翻译成中文是“阿尔杜伊诺”,正确的英文发音中“r”和“i”的音通常就迅速带过。

扩展资料:

Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。由一个欧洲开发团队于2005年冬季开发。其成员包括Massimo Banzi、David Cuartielles、Tom Igoe、Gianluca Martino、David Mellis和Nicholas Zambetti等。

它构建于开放原始码simple I/O介面版,并且具有使用类似Java、C语言的Processing/Wiring开发环境。主要包含两个主要的部分:硬件部分是可以用来做电路连接的Arduino电路板;另外一个则是Arduino IDE,你的计算机中的程序开发环境。你只要在IDE中编写程序代码,将程序上传到Arduino电路板后,程序便会告诉Arduino电路板要做些什么了。

Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,烧录进微控制器。对Arduino的编程是通过 Arduino编程语言 (基于 Wiring)和Arduino开发环境(基于 Processing)来实现的。基于Arduino的项目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信 (比如 Flash, Processing, MaxMSP)来实现。

arduino编程语言入门:

1 关键字

语法符号:

;

;是一条语句结束的标志,供编译器识别,必须得有。

{}

{}将多条语句合成一个复合语句,能划分语句的作用域,增强整体整体的可读性。

//

//行注释,该行//后的所有语句,文字将不被编译器所编译、执行。相似的,还有,在中的所有语句,文字将不被编译器所编译、执行。

if(表达式)

{

语句A;

}

if(表达式1)

{

语句1;

}

else if(表达式2)

{

语句2;

}

else if(表达式n)

{

语句n;

}

else

{

语句n+1;

}

for(初始表达式;条件表达式;循环变量表达式)

{

循环体语句;

}

switch(表达式)

{

case 表达式常量1:语句序列1;

case 表达式常量2:语句序列2;

case 表达式常量i:语句序列i;

case 表达式常量n:语句序列n;

default:语句序列n+1;

}

while(条件表达式)

{

循环语句;

循环变量表达式;

}

do

{

循环体语句;

}while(条件表达式);

break;

continue;

return x;

goto 语句标号;

2 数据类型:

3 常量

HIGH | LOW 表示数字IO口的高低电平。HIGH 表示高电(1),LOW 表示低电平(0)。

INPUT | OUTPUT 表示数字IO口的方向,INPUT 表示输入(高阻态),OUTPUT 表示输出(AVR单片机能提供5V电压 40mA电流)。

true | false true 表示真(1),false表示假(0)。

4 程序结构

声明变量及接口名称(例如:int i;int ledPin=13;)。

void setup() 函数在程序开始时使用,初始化变量,管脚模式,调用库函数等(例如:pinMode(ledPin,OUTUPT);)。

void loop() 在void setup()函数之后,即初始化之后,loop() 让你的程序循环地被执行。使用它来运转Arduino。

5 数字 I/O

以下型号为UNO

pinMode(pin, mode);

数字IO口输入输出模式定义函数,pin表示为0~13, mode表示INPUT或OUTPUT。

digitalWrite(pin, value) ;

数字IO口输出电平定义函数,pin表示为0~13,value表示为HIGH或LOW。

必须先定义为输入或输出模式digitalWrite才能生效。

int digitalRead(pin);

数字IO口读输入电平函数,pin表示为0~13,value表示为HIGH或LOW。比如可以读数

字传感器。

6 模拟IO

int analogRead(pin);

模拟IO口读函数,pin表示为0~5(ArduinoDiecimila为0~5,Arduino nano为0~7)。比如可以读模拟传感器(10位AD,0~5V表示为0~1023)。

analogWrite(pin, value) - PWM

数字IO口PWM输出函数,Arduino数字IO口标注了PWM的IO口可使用该函数通常在引脚的旁边标注~,pin表示3, 5, 6, 9,10, 11,value表示为0~255。比如可用于电机PWM调速或音乐播放。

7 扩展 I/O

shiftOut(dataPin, clockPin, bitOrder,value);

SPI外部IO扩展函数,通常使用带SPI接口的74HC595做8个IO扩展,dataPin为数据口,clockPin为时钟口,bitOrder为数据传输方向(MSBFIRST高位在前,LSBFIRST低位在前),value表示所要传送的数据(0~255),另外还需要一个IO口做74HC595的使能控制。

unsigned long pulseIn(pin, value);脉冲长度记录函数,返回时间参数(us),pin表示为0~13,value为HIGH或LOW。比如value为HIGH,那么当pin输入为高电平时,开始计时,当pin输入为低电平时,停止计时,然后返回该时间。

8 时间函数

unsigned long millis();返回时间函数(单位ms),该函数是指,当程序运行就开始计时并返回记录的参数,该参数溢出大概需要50天时间。

delay(ms);延时函数(单位ms)。

delayMicroseconds(us);延时函数(单位us)。

9 数学函数

min(x, y) ;求最小值。

max(x, y) ;求最大值。

abs(x) ; 计算绝对值。

constrain(x, a, b) ; 约束函数,下限a,上限b,x必须在ab之间才能返回。

map(value, fromLow, fromHigh, toLow,toHigh);约束函数,value必须在fromLow与toLow之间和fromHigh与toHigh之间。

pow(base, exponent);开方函数,base的exponent次方。

sq(x); 平方。

sqrt(x);开根号。

三角函数:

sin(rad);

cos(rad);

tan(rad);

10 随机数函数

randomSeed(seed);随机数端口定义函数,seed表示读模拟口analogRead(pin)函数 。

long random(max);随机数函数,返回数据大于等于0,小于max。

long random(min, max);随机数函数,返回数据大于等于min,小于max。

11 外部中断函数

attachInterrupt(interrupt, , mode;外部中断只能用到数字IO口2和3,interrupt表示中断口初始0或1,表示一个功能函数,mode:LOW低电平中断,CHANGE有变化就中断,RISING上升沿中断,FALLING 下降沿中断。

detachInterrupt(interrupt);中断开关,interrupt=1 开,interrupt=0 关。

interrupts();中断使能函数,用于使能中断。

noInterrupts();中断禁止函数,禁止中断。

12 串口收发函数

Serialbegin(speed);串口定义波特率函数,speed表示波特率(串行每秒传输数据位数的速率),如9600,19200等。

int Serialavailable() 判断缓冲器状态。

int Serialread();读串口并返回收到参数。

Serialflush();清空缓冲器。

Serialprint(data);串口输出数据。Serialprint(数据,数据的进制) 默认为十进制(DEC)

Serialprintln(data);串口输出数据并带回车符。

13 重要

以上列举了一些较常用的函数,事实上,在Arduino的安装目录下的libraries还有众多函数可以根据需要进行调用和学习。

也可以自己编写函数然后按照libraries目录下其他函数的格式打包好。放置在libraries目录下,然后自己就可以在IDE环境下调用自己编写的函数了。

通过以上介绍,其实大家可以看到arduino编程语言入门并不难,以上内容分享出来给大家作为参考,想要了解更多更专业的arduino编程语言教程可以去DF创客社区Arduino教程专栏学习。

Arduino是一种开源的电子原型平台,可以通过Arduino IDE编写程序,控制各种电子设备。Arduino可以通过串口通信读取MCU的特征,具体步骤如下:

1 在Arduino IDE中打开串口监视器。

2 在串口监视器中输入指令“AT+GMR”,发送给MCU。

3 MCU将返回其版本信息和特征信息,包括芯片类型、芯片ID、芯片MAC地址等。

需要注意的是,具体的指令和返回信息可能因MCU类型不同而有所区别,需要参考MCU的相关文档。同时,在读取MCU特征时,需要将MCU连接到Arduino开发板上,并通过串口通信进行读取。

一 通讯的途径

arduino和processing可以通过串行端口进行通讯,也就是我们常见的COM1、COM2什么的。在安装arduino驱动的时候我们已经设置了arduino的端口,我自己设置的是COM4,可以参考这里进行设置。

在arduino程序中也需要设置相同的端口:

processing接受和发送数据也是在这个端口进行的,在编写的代码中定义,不需要设置程序。

二 arduino通过串行端口发布数据

下面是arduino最简单的数据发布代码,将data的值“1”,通过串行端口发布出去

int data=1; //创建变量,储存需要发送的数据

void setup()

{

Serialbegin(9600);//定义数据传输率为9600比特

}

void loop()

{

Serialprint(data); //通过串行端口发送data的值

}

将代码上传到arduino后,可以先通过串行端口@@@@@@@@@检查,当然,需要将@@@@@@@@@的数据传输率设置成代码中的一样。这样,我们可以在程序下方看到不断出现的“1”。

三 processing从串行端口获取数据

下面是最简单的processing从串行端口获取数据的代码,注意端口和传输率的值:

import processingserial;//引入serial库

int p_data;//创建变量用于储存接收到的数据

Serial myPort;//创建一个名为“myPort”的Serial对象

void setup() {

myPort = new Serial(this,”COM4″, 9600);

//定义myPort的端口和数据传输率

//应和Arduino保持一致

}

void draw() {

p_data = myPortread();//读取从串行端口获得的值,并储存在变量p_data中

println(p_data);//打印p_data的值

}

运行代码后,可以看到processing程序下方开始有数据涌现了,这说明它已经取得了来自COM4,以9600比特发布的值。这里有两个需要注意的地方,其一是Arduino必须连接到电脑,其二是不能同时开启Arduino的串行端口监控器。

但是,数据虽然已经取得,但并不是Arduino发布的“1”,而是“49”,这个问题我们后面章节再谈。

四 Arduino获取来自串行端口的值

创建一个简单的Arduino程序用于接收来自串行端口的值,并通过一个LED来判断。我们选择13号插口是因为arduino电路板中本身就在这个插口集成了个小型LED,在这个范例中我们就不用自己连线了:)

int a_data = 0; // 创建变量用于储存在串行端口收到的值

int ledPin = 13;//设定一个LED插口,用于检测收到的值

void setup() {

Serialbegin(9600);//定义数据传输率为9600比特

pinMode(ledPin, OUTPUT);//定义13号插口为输出模式

}

void loop() {

if (Serialavailable() > 0) {// 在收到数据后再做出处理:

a_data = Serialread(); // 将收到的值储存在变量中

if(a_data){//如果收到“1”(a_data为真),点亮LED,否则熄灭

digitalWrite(ledPin, HIGH);

}

else{

digitalWrite(ledPin, LOW);

}

}

}

五 processing通过串行端口发布数据

processing没有像arduino一样的串行端口@@@@@@@@@,所以最好先创建上一步所述的arduino接收端。下面的代码根据鼠标点击状态发布“0”和“1”:

import processingserial;//引入serial

Serial myPort;

//创建一个名为“myPort”的Serial对象

void setup()

{

myPort = new Serial(this, “COM4″, 9600);

//定义myPort的端口和数据传输率

//应和Arduino保持一致

}

void draw(){

}

void mousePressed(){

myPortwrite(1);

//当鼠标按下时通过COM4,以9600传输率发布数值“1”

}

void mouseReleased(){

myPortwrite(0);

//当鼠标松开时通过COM4,以9600传输率发布数值“0”

}

arduinoIDE里有个串口监视器,里面有个输入栏,用键盘敲数据后按发送键,arduino这边就可以用SerialRead()读取数据并赋值了。

典型的用法如下:当串口接收到数据时(上面Serialavailable()>0这句),反复读取串口的数据并赋值给data(上面data=Serialread()这句),直到数据读完(即Serialavailable()=0的时候)。

bin固件转成arduino的程序方法/步骤分步阅读

1首先在连接esp8266前连接电脑打开arduino IDE给UNO板写入初始化程序,程序如下:

2其次把esp8266-01连接到UNO板,连接方法如下:

3接下来就是打开乐鑫官网下载的FLASH下载工具,添加准备好的bin格式的固件,设置参数,开始下载。具体步骤见下图:

4到此,烧写完成,接下来就是串口调试了,断开GPIO0引脚接地连线,打开串口调试工具,选择正确的波特率和端口后点击打开串口,然后插拔CH_PD引脚连线,当出现乱码和ready表示开始连接成功,接下来使用AT命令对模块进行设置。比如输入:AT+GMR后固件的版本号就显示出来了,ok!

以上就是关于“Arduino”怎么读全部的内容,包括:“Arduino”怎么读、Arduino编程用的是什么方法、arduino读取mcu特征等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10090163.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存