Arduino系列教程六:模拟输入输出

来自丢石头百科


一、模拟输入 Arduino开发板中A0-A5为模拟输入端口,包含10位模拟数字转换器。 打开Arduino IDE,编写如下程序并保存。

#define Pin 0

void setup(void){

  Serial.begin(9600);

}

 

void loop(void){

  Serial.print("The ADC value is: ");

  Serial.println(analogRead(Pin));

  delay(1000);

}


    把Accessory Shield插上UNO PLUS开发板。编译并上传程序,打开串口监视器。等待一会儿,旋转Accessory Shield中可调电位器,串口监视器会显示ADC转换后的数据。 程序分析: 程序开始定义模拟输入引脚为A0。 analogRead(pin)为ADC转换函数,pin为管脚号,可为0~5,转换结果为0~1023之间的整数。

221530s33g9fjlormg9oy3.jpeg 二、模拟输出 Arduino开发板没有DAC转换功能,但是可以通过PWM模拟输出模拟信号。 打开Arduino IDE,编写如下程序并保存。

#define beep 11

#define analogPin 0

int val = 0;

void setup()

{

  pinMode(beep,OUTPUT);  

}

void loop()

{

  val = analogRead(analogPin);

  analogWrite(beep,val/4);

}


把Accessory Shield插上UNO PLUS开发板。编译并上传程序。等待一会儿,旋转Accessory Shield中可调电位器,蜂鸣器会发出不同是声音。 程序分析: 程序开始定义模拟输入引脚为A0。蜂鸣器为D11引脚。 analogRead(pin)为ADC转换函数,pin为管脚号,可为0~5,转换结果为0~1023之间的整数。 analogWrite(pin,value)为PWM输出函数,pin为管脚号,可为3, 5, 6, 9, 10, 11,value表示为0~255。