一、整体结构
1.基于C++语言
2.注释
//这是单行注释文字
/*这
* 是
* 多
* 行
* 注释
*/
3.关键字
4.函数
二、变量
1.变量类型
整数、字符、字符串
2.创建变量
变量类型 变量名称
例如 int money;
3.变量名称
满足标识符规则,不能用关键字
4.变量赋值
创建时赋值
int money = 18;
先创建再赋值
int money ;
money = 18;
三、程序
1. 点亮arduino的小灯
void setup() {
//initialize digital pin LED_BUILTIN as an output.
//将数字引脚LED_BUILTIN初始化为输出。
pinMode(LED_BUILTIN, OUTPUT);
}
//在UNO上
//#define LED_BUILTIN 13
//LED_BUILTIN是LED引脚的一个编号
// the loop function runs over and over again forever
//loop函数里的语句会反复运行
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
// digitalWrite函数
//
2. int类型,数据增值不是无穷的,是有范围的
整数是基本数据类型。整数数据类型占用2字节。整数的范围为-32,768到32,767( -2^15 ~(2^15)-1)。
整数类型使用2的补码方式存储负数。最高位通常为符号位,表示数的正负。其余位被“取反加1”。
Arduino可处理负数计算。但是对整数类型数值进行右移位运算符时,可能会产生不可预料的编译结果。
可以换用容量更大的long数据类型
http://www.taichi-maker.com/homepage/reference-index/arduino-code-reference/long/
http://www.taichi-maker.com/homepage/reference-index/arduino-code-reference/int/
更多地可以参考
http://www.taichi-maker.com/homepage/reference-index/arduino-code-reference/
3.变量作用域
全局变量
局部变量
http://c.biancheng.net/view/1858.html
即便变量名一样,作用域也不一样,尽量不要使用同样地变量名
4.PinMode()
通过pinMode()函数,你可以将Arduino的引脚配置为以下三种模式:
- 输出(OUTPUT)模式
- 输入(INPUT)模式
- 输入上拉(INPUT_PULLUP)模式 (仅支持Arduino 1.0.1以后版本)
在输入上拉(INPUT_PULLUP)模式中,Arduino将开启引脚的内部上拉电阻,实现上拉输入功能。一旦将引脚设置为输入(INPUT)模式,Arduino内部上拉电阻将被禁用。
设置Arduino引脚为输出(OUTPUT)模式
当引脚设置为输出(OUTPUT)模式时,引脚为低阻抗状态。这意味着Arduino可以向其它电路元器件提供电流。也就是说,Arduino引脚在输出(OUTPUT)模式下可以点亮LED或者驱动电机。(如果被驱动的电机需要超过40mA的电流,Arduino将需要三极管或其它辅助元件来驱动他们。)
http://www.taichi-maker.com/homepage/reference-index/arduino-code-reference/pinmode/
5.digitalWrite(pin, value)
pin
:引脚号码
如果该引脚通过pinMode()设置为输出模式(OUTPUT),您可以通过digitalWrite()语句将该引脚设置为HIGH(5伏特)或LOW(0伏特/GND)。
如果该引脚通过pinMode()设置为输入模式(INPUT),当您通过digitalWrite()语句将该引脚设置为HIGH时,
这与将该引脚将被设置为输入上拉(INPUT_PULLUP)模式相同。
http://www.taichi-maker.com/homepage/reference-index/arduino-code-reference/digitalwrite/