‘壹’ arrino共有几种编程语言
Arino语言注解Arino语言是建立在C/C++基础上的,其实也就是基础的C语言,Arino语言只不过把AVR单片机(微控制器)相关的一些参数设置都函数化,不用我们去了解他的底层,让我们不了解AVR单片机(微控制器)的朋友也能轻松上手。
在与Arino DIYER接触的这段时间里,发现有些朋友对Arino语言还是比较难入手,那么这里我就简单的注释一下Arino语言(本人也是半罐子水,有错的地方还请各位指正)。
关键字:
if
if...else
for
switch case
while
do... while
break
continue
return
goto
语法符号:
;
{}
//
运算符:
=
+
-
*
/
%
==
!=
<
>
<=
>=
&&
||
!
++
--
+=
-=
*=
/=
数据类型:
boolean 布尔类型
char
byte 字节类型
int
unsigned int
long
unsigned long
float
double
string
array
void
数据类型转换:
char()
byte()
int()
long()
float()
常量:
HIGH | LOW 表示数字IO口的电平,HIGH 表示高电平(1),LOW 表示低电平(0)。
INPUT | OUTPUT 表示数字IO口的方向,INPUT 表示输入(高阻态),OUTPUT 表示输出(AVR能提供5V电压 40mA电流)。
true | false true 表示真(1),false表示假(0)。
以上为基础c语言的关键字和符号,有c语言基础的都应该了解其含义,这里也不作过多的解释。
结构
void setup() 初始化变量,管脚模式,调用库函数等
void loop() 连续执行函数内的语句
功能
数字 I/O
pinMode(pin, mode) 数字IO口输入输出模式定义函数,pin表示为0~13, mode表示为INPUT或OUTPUT。
digitalWrite(pin, value) 数字IO口输出电平定义函数,pin表示为0~13,value表示为HIGH或LOW。比如定义HIGH可以驱动LED。
int digitalRead(pin) 数字IO口读输入电平函数,pin表示为0~13,value表示为HIGH或LOW。比如可以读数字传感器。
模拟 I/O
‘贰’ 如何评价Arino
arino适合做prototype的时候用,也就是说你有个什么想法,想快速实现。但是又不想重复去造那些车轮,那就可以用arino凑合。最简单的例子就是大多廉价激光雷达的解码板,大多都是arino pro烧录固件做成的。另外像是apm飞控,就是基于arino mega。
现在arino也新出了一些奇奇怪怪的开发板,比如现在的mkr系列,基本就是从yun系列发展来的。还有一个基于fpga的可以简单的进行视频处理。
Arino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arino板)和软件(ArinoIDE)。由一个欧洲开发团队于2005年冬季开发。其成员包括Massimo Banzi、David Cuartielles、Tom Igoe、Gianluca Martino、David Mellis和Nicholas Zambetti等。
它构建于开放原始码simple I/O接口版,并且具有使用类似Java、C语言的Processing/Wiring开发环境。主要包含两个的部分:硬件部分是可以用来做电路连接的Arino电路板。
另外一个则是Arino IDE,你的计算机中的程序开发环境。你只要在IDE中编写程序代码,将程序上传到Arino电路板后,程序便会告诉Arino电路板要做些什么了。
Arino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。板子上的微控制器可以通过Arino的编程语言来编写程序,编译成二进制文件,烧录进微控制器。
对Arino的编程是通过 Arino编程语言 (基于 Wiring)和Arino开发环境(基于Processing)来实现的。基于Arino的项目,可以只包含Arino,也可以包含Arino和其他一些在PC上运行的软件,它们之间进行通信 (比如 Flash,Processing, MaxMSP)来实现。
‘叁’ arino 开发用什么编程语言
C和C++的混合体语言。
‘肆’ Arino编程都用什么语言c51还是什么
Arino编程使用Java、C等语言。
Arino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arino板)和软件(ArinoIDE)。由一个欧洲开发团队于2005年冬季开发。它构建于开放原始码simpleI/O接口版,并且具有使用类似Java、C语言的Processing/Wiring开发环境。
主要包含两个的部分:硬件部分是可以用来做电路连接的Arino电路板;另外一个则是ArinoIDE,你的计算机中的程序开发环境。你只要在IDE中编写程序代码,将程序上传到Arino电路板后,程序便会告诉Arino电路板要做些什么。
(4)arino简单的编程语言扩展阅读
Arino语言函数架构
1、pinMode(pin,mode)
数字IO口输入输出模式定义函数,pin表示为0~13,mode表示为INPUT或OUTPUT。
2、digitalWrite(pin,value)
数字IO口输出电平定义函数,pin表示为0~13,value表示为HIGH或LOW。
3、intdigitalRead(pin)
数字IO口读输入电平函数,pin表示为0~13,value表示为HIGH或LOW。比如可以读数字传感器。
‘伍’ arino编程语言是基于什么
Arino主要的开发语言是C语言,库大部分是C++。Arino的C语言编译环境是基于gcc的一个衍生版本gcc-avr修改而来的。
‘陆’ arino uno r3编程用什么语言
Arino uno r3编程用的C++,主要包含函数,值(变量和常量)和结构。更多相关信息可查看DFRobot的Arino产品资料库。
‘柒’ arino是什么
Arino是一个基于易用硬件和软件的原型平台(开源)。
它包由可编程的电路板(简称微控制器)和称为Arino IDE(集成开发环境)的现成软件组成,用于将计算机代码写入并上传到物理板。Arino提供将微控制器的功能打包成更易于使用的软件包的标准外形。
Arino主要特点
1、Arino板卡能够读取来自不同传感器的模拟或数字输入信号,并将其转换为输出,例如激活电机,打开/关闭LED,连接到云端等多种操作。
2、可以通过Arino IDE(简称上传软件)向板上的微控制器发送一组指令来控制板功能。
3、Arino IDE使用C++的简化版本,使其更容易学习编程。
‘捌’ Arino编程用的是什么方法
arino编程语言入门:
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() 让你的程序循环地被执行。使用它来运转Arino。
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(ArinoDiecimila为0~5,Arino nano为0~7)。比如可以读模拟传感器(10位AD,0~5V表示为0~1023)。
analogWrite(pin, value) - PWM
数字IO口PWM输出函数,Arino数字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. 串口收发函数
Serial.begin(speed);串口定义波特率函数,speed表示波特率(串行每秒传输数据位数的速率),如9600,19200等。
int Serial.available() 判断缓冲器状态。
int Serial.read();读串口并返回收到参数。
Serial.flush();清空缓冲器。
Serial.print(data);串口输出数据。Serial.print(数据,数据的进制) 默认为十进制(DEC)
Serial.println(data);串口输出数据并带回车符。
13. 重要
以上列举了一些较常用的函数,事实上,在Arino的安装目录下的libraries还有众多函数可以根据需要进行调用和学习。
也可以自己编写函数然后按照libraries目录下其他函数的格式打包好。放置在libraries目录下,然后自己就可以在IDE环境下调用自己编写的函数了。
通过以上介绍,其实大家可以看到arino编程语言入门并不难,以上内容分享出来给大家作为参考,想要了解更多更专业的arino编程语言教程可以去DF创客社区Arino教程专栏学习。
‘玖’ 推荐!适用于Arino平台的编程开发工具
Arino平台的优势之一在于其可以通过简单程序来实现强大的功能,相关硬件种类较多且高度集成化,通常需要使用者有一定的电子信息或自动控制领域的知识才能完全理解外接硬件的工作原理,不利于初学者快速入门掌握。因此,从编程知识和软件学习入手,学习常用函数和程序思维后再通过实际项目对硬件使用进行相关了解是一个更快速高效的学习流程。
学习一门编程语言和学习人类语言一样有很多种途径。Arino编程语言较容易理解,它基于C/C++且有丰富的内置函数可以直接拿来使用实现一些功能,另外,其外接的智能硬件或传感器也往往有详细的产品说明和封装好的类库,在不需要使用者清楚理解原理的情况下就可以完成原型搭建和实现相关功能。很多看似酷炫复杂的效果其实只是由短短几行代码来实现的。
对于有一定编程基础的同学来说,直接阅读编写好的程序并尝试理解和模仿进行代码的编写是一种较快的学习方式:在产品官网可以免费下载专用集成开发环境 Arino IDE,该软件可以帮助我们编写以及校验代码,同时也提供了丰富的自带库函数和示例程序帮助我们迅速了解开发板。作为一个免费的开源平台,在各个学习社区也可以找到免费版本中文编程参考手册,使用时按需求查找即可。
编程参考手册对于编程语言的学习至关重要,在学习中遇到的绝大多数问题都可以在参考手册中找到解决方法。比起盲目在网上提问和搜索,静下心来认真查找手册不仅能够高效的解决问题,也能举一反三,对语言有更全面的理解。
对于没有任何编程基础的同学来说,购买开发学习套装或寻找基础教程慢慢搭建项目是一种更踏实的做法,各大视频网站上可以搜索到很多优质免费的教程供大家学习参考。各类Arino学习论坛也是很好的学习资源,这些也正是开源平台的魅力所在:无偿的分享和平等的交流。
如果对代码理解仍有些吃力,可以考虑使用图形化编程软件进行程序编写,它们的优势在于把代码中抽象的函数与结构改写成模块与卡片,根据想要完成的功能更直观的完成程序搭建。近年来编程教育越来越普及化,很多国内教育公司也都研发了各种国产图形化编程软件(如mixly),这些软件使用中文界面,交互逻辑良好且绝大多数都支持编写Arino程序代码,可以根据自己的需求进行选用。在代码编写较熟练后再使用官方IDE进行开发,会有事半功倍的效果。
文章作者:Jing
拉夫堡大学工业设计硕士
北京理工大学博士