Arduino UNO:
14个数字输入/输出端口,6个模拟输入端口,外部中断引脚(引脚2、3),PWM输出(引脚3、5、6、9、10、11)。//13 引脚一般与板上的LED相连//
pinMode() 配置引脚的格式{pinMode(pin,INPUT)
{pinMode(pin,OUTPUT)
{pinMode(pin,INPUT_PULLUP)
(输出模式中) digitalWrite(pin,value) {HIGH/LOW 使引脚输出高/低电平}
digitalRead(pin) 读取该引脚的输入的数字信号.
//下拉电阻:(引脚处于悬空状态可能会得到一个不稳定的值,一般悬空状态与外接触式开关有关)
在引脚到GND之前,连接一个阻值很大(10KΩ)的电阻当该引脚悬空时,会识别为低电平。
上拉电阻: 板内部自带的一个电阻,内接 当引脚处于悬空时,就会识别为 高电平。//
【例 触式开关 按下-开-再按-关 的实现方法:
void setup()
{
pinMode (buttonPin,INPUT_PULLUP);
~~~~~
}
void loop()
{
while (digitalRead (buttonPin) ==HIGH ) {}
~~~~~~~~~~~~
}
】
Serial.begin() 函数初始化 Arduino 的串口通信功能
串口波特率:300、600、1200、2400、4800、9600、14400、19200、28800、38400、57600、115200。波特率越大,串口通信速率越高;
串口输出函数: Serial.print() //Serial.println() 自动换行// // 输出函数一次只能输出一种数据,变量,字符,字符串。
串口输入函数:Serial.Read() 每次返回一字节的数据。
【在使用串口时,Arduino 会在SRAM中开辟一段大小为64B的空间,串口接收到的数据都会暂时存放在该空间中(缓冲区),
调用Serial.Read函数时,Arduino便会从缓冲区取出1B的数据】
Serial.available() 的返回值便是当前缓冲区接收到的数据 eg:void loop(0
{
if ( Serial.available() >0 {~~~~~~~~~~}
}
模拟信号
模拟输入引脚 A0~5 ADC(Analog-to-Digital Converter 模数转换器)
使用AVr芯片作为主控的Arduino 模拟输入功能有10位精度,既可以将0~5v的电压转换为 0~1013的整数形式。
模拟输入函数 analogRead(pin)
模拟输出函数 analogWrite (pin,value)
模拟输出引脚 { UNO、Ethernet、Duemilanove : 3、5、6、9、10、11
MEGA 2~13、44~46
Leonardo: 3、5、6、9、10、11、13 }