1.Arduino常见语法
常量:
• HIGH | LOW 表示数字IO口的电平,HIGH 表示高电平(1),LOW 表示低电平(0)。
• INPUT | OUTPUT 表示数字IO口的方向,INPUT 表示输入(高阻态),OUTPUT 表示输出(AVR能提供5V电压 40mA电流)。
• true | false true 表示真(1),false表示假(0)。
结构
• 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
• int analogRead(pin) 模拟IO口读函数,pin表示为0~5(Arduino Diecimila为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调速或音乐播放。
时间函数
• unsigned long millis() 返回时间函数(单位ms),该函数是指,当程序运行就开始计时并返回记录的参数,该参数溢出大概需要50天时间。
• delay(ms) 延时函数(单位ms)。
• delayMicroseconds(us) 延时函数(单位us)。
串口收发函数
Serial.begin(speed)
串口定义波特率函数,设置串行每秒传输数据的速率(波特率),可以指定Arduino从电脑交换讯息的速率,通常我们使用9600 bps。,speed表示波特率,如9600,19200等。在同计算机通讯时,使用下面这些值:300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600或 115200 bps(每秒位元组)。。你也可以在任何时候使用其它的值,比如,与0号或1号插口通信就要求特殊的波特率。用在setup()函数里。
int Serial.available()
判断缓冲器状态。回传有多少位元组(bytes)的资料尚未被read()函式读取,如果回传值是0代表所有序列埠上资料都已经被read()函式读取。
范例:
int count = Serial.available();
int Serial.read()
读串口并返回收到参数。Serial.read()——读取持续输入的数据。读取1byte的序列资料
范例:
int data = Serial.read();
Serial.flush()
清空缓冲器。 有时候因为资料速度太快,超过程式处理资料的速度,你可以使用此函式清除缓冲区内的资料。经过此函式可以确保缓冲区(buffer)内的资料都是最新的。
范例:
Serial.flush();
Serial.print(data)
从串行端口输出数据。Serial.print(数据)默认为十进制等于Serial.print(数据,DEC)。
Serial.print(data, encoding)
经序列埠传送资料,提供编码方式的选项。Serial.print(数据,数据的进制)如果没有指定,预设以一般文字传送。
2.arduino面板及应用例子
简单样例:
通过端口4控制小灯泡的亮灭。
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(4,OUTPUT);//定义端口
digitalWrite(4,HIGH);//定义端口状态
}
void loop() {
// put your main code here, to run repeatedly:
}
点击上传按钮即可完成信号的写入。
从而完成了最简单的一个例子。
3.安装过程
将官方的驱动安装即可。