您的位置:首页 > 产品设计 > UI/UE

今日工作总结——调试Arduino——20171107

2017-11-07 20:28 417 查看
总结今天工作,主要为一下几点:

1. Arduino端口分为数字端口和模拟端口,数字端口和模拟端口区别:数字端口以数字输入和数字输出,并且规定,输出是以AREF电压作为参考电压,高于1.1V的电压为高电平,低于1.1V电压的为低电平;模拟端口输入可以是模拟量和数字量,输出不能是模拟量,输出是数字量,像声音传感器,温度传感器等的输入可以接模拟端口;

2. Arduino中串口的使用,在初始化即void setup中,写入Serial.begin(9600); 串口打印时可以是Serial.print和Serial.println,两者输出的区别是Serial.print的输出不换行,而Serial.println的输出换行,另外提醒,如果不加延迟的话,输出特别快,几乎看不太清,加上1s的延迟,效果会好些;

3. 声音传感器的程序如下:

int ledpin=3; 定义LED灯的端口——数字端口3;

int soundpin=0; 定义声音传感器的端口——模拟端口0;

void setup()

{

pinMode(ledpin,OUTPUT);

pinMode(soundpin,INPUT);

Serial.begin(9600);

}

void loop()

{

int soundstate=analogRead(soundpin);

Serial.println(soundstate);

delay(1000);

if(soundpin>10)

{

digitalWrite(ledpin,HIGH);

delay(1000);

}

else{

digitalWrite(ledpin,LOW);
delay(1000);


}

}

光控传感器的程序:

int ledpin=3;

int guangpin=0;

int val;

void setup()

{

pinMode(ledpin,OUTPUT);

pinMode(guangpin,INPUT);

Serial.begin(9600);

}

void loop()

{

val=analogRead(guangpin);

Serial.println(val);

delay(1000);

if(val<1000)

{

digitalWrite(ledpin,HIGH);

delay(1000);

}

else {

digitalWrite(ledpin,LOW);

delay(1000);

}

}

机器人:(1)调试程序前,记得上电以及其它事项,否则,经常出现一些不必要的错误;

(2)实现了步进电机的向前向后向左向右的控制,但是如何进行清洗,逻辑自己还没想好;

今日问题:

1. 声音传感器的两个接口AO和DO,用串口打印,同样的环境和同样的条件,数值不一样,AO是27 28;而DO是350 370,硬件接口接的是AO,程序设置的是当数值大于10时,LED亮,但是实际LED不亮,问题:

(1) AO和DO的含义,

(2) 为什么会出现上面情况?

2. 机器人控制的逻辑???
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  arduino 传感器 调试