Arduino语法-模拟I/O
函数列表
- analogReference()
- analogRead()
- analogWrite()
analogReference()函数说明
void analogReference (uint8_t type)
配置参考电压
配置模式引脚的参考电压. 函数 analogRead 在读取模拟值之后, 将根据参考电压将 模拟值转换到[0,1023]区间. 有以下类型:
DEFAULT : 默认5V. INTERNAL: 低功耗模式. ATmega168和ATmega8对应1.1V到2.56V. EXTERNAL: 扩展模式. 通过AREF引脚获取参考电压.
参数:
type 参考类型(DEFAULT/INTERNAL/EXTERNAL)
nalogRead()函数说明
int analogRead (uint8_t pin)
读模拟引脚
读模拟引脚, 返回[0-1023]之间的值. 每读一次需要花1微妙的时间.
参数:
pin 引脚编号
返回:
0到1023之间的值
例子:
int analogPin = 3; // potentiometer wiper (middle terminal) connected to analog pin 3
// outside leads to ground and +5V
int val = 0; // variable to store the value read
void setup()
{
Serial.begin(9600); // setup serial
}
void loop()
{
val = analogRead(analogPin); // read the input pin
Serial.println(val); // debug value
}
analogWrite()函数说明
void analogWrite (uint8_t pin, int value)
写模拟引脚
参数:
pin 引脚编号
value 0到255之间的值, 0对应off, 255对应on
写一个模拟值(PWM)到引脚. 可以用来控制LED的亮度, 或者控制电机的转速. 在执行该操作后, 应该等待一定时间后才能对该引脚进行下一次的读或写操作. PWM的频率大约为490Hz.
在一些基于ATmega168的新的Arduino控制板(如Mini 和BT)中, 该函数支持以下引脚: 3, 5, 6, 9, 10, 11. 在基于ATmega8的型号中支持9, 10, 11引脚.
例子:
int ledPin = 9; // LED connected to digital pin 9
int analogPin = 3; // potentiometer connected to analog pin 3
int val = 0; // variable to store the read value
void setup()
{
pinMode(ledPin, OUTPUT); // sets the pin as output
}
void loop()
{
val = analogRead(analogPin); // read the input pin
analogWrite(ledPin, val / 4); // analogRead values go from 0 to 1023, analogWrite values from 0 to 255
}
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号