我正在尝试从Arduino UNO上的LM35传感器读取值,并通过PWM引脚和模拟引脚将其发送到另一个Arduino板当我运行这个项目时,Arduino A的串口仿真器正在显示……
我知道这只是一个练习,因为PWM本身不适合提供analogRead。 (更好地测量脉冲持续时间,如果你真的想用它来进行数据传输。)
对于400 Hz PWM,您需要RC值,例如: 20 ms可合理滤波PWM脉冲。
(例如1?F * 20k)
当您在3秒循环中工作时,更大的值也可以。
顺便说一句:发件人可以简化为:
const byte inPin = A0; const byte outPin = 3; void setup() { Serial.begin(9600); } void loop() { byte tmp = analogRead(inPin)/4; // 0 .. 255 analogWrite(outPin, tmp); Serial.println((int)tmp); delay(3000); }