用户工具

站点工具


ocrobot:kit:arduino_star_kit:tutorial08

数字引脚输入

这个例程展示了通过数字引脚来获取数字信号0,1。

模拟信号指幅度的取值是连续的(幅值可由无限个数值表示)。人们说话发出的声音就是一种模拟信号。 数字信号指幅度的取值是离散的,幅值表示被限制在有限个数值之内。二进制码就是一种最常用的数字信号。

二进制码受噪声的影响小,易于有数字电路进行处理,所以得到了广泛的应用。 在数字通信中我们的0,1信号其实是一个相对量。我们通常会把高于某个阀值的电压信号认定为1,低于某个阀值的电压定义为0。不同供电系统中的阀值都是有区别的,所以一般而言进行数字通信我们都要求通信双方电平是同一系统之内。

搭建电路

为了验证在MANGO中具体是大于多少是1,小于多少是0。我们使用电位器来调节输出的电压,输出引脚接入D5,同时用A0口采集输入的电压大小,通过转动电位器来确定一下电压在什么区间内我们会认为信号为高电平,什么区间内为低电平。如图:

代码

void setup() {
 
  pinMode(5, INPUT);  //设置引脚5为输入状态
 
  Serial.begin(9600); //初始化串口,波特率为9600
 
}
 
void loop() {
 
  int sensorValue = analogRead(A0); //获取A0口ADC读数,放入变量sensorValue
 
  int digiValue = digitalRead(5); //获取D5口读数,放入变量digiValue
 
  Serial.print(digiValue); //输出digiValue
 
  Serial.print(","); //输出逗号
 
  Serial.println(sensorValue); //输出sensorValue
 
  delay(200); //延时200毫秒
 
}

digitalRead() 描述 读取指定引脚的值,HIGH或LOW。 语法 digitalRead(PIN) 参数 pin:你想读取的引脚号(int) 返回 HIGH 或 LOW

返回上一级

ocrobot/kit/arduino_star_kit/tutorial08.txt · 最后更改: 2023/06/07 04:23 由 127.0.0.1