Arduino常用使用模块代码接线图总结
欢迎大家提示我,我再继续补充,另外淘宝购买的店铺如果大家感兴趣我也贴出来
一、超声波传感器
1、接线图
2、代码
#define trigPin 10
#define echoPin 11
void setup() {
Serial.begin(9600); // 初始化串口通信
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}

void loop() {
long duration, distance;
// 发送超声波脉冲
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// 计算超声波传回的时间
duration = pulseIn(echoPin, HIGH);
// 将时间转换为距离(单位:厘米)
distance = (duration * 0.0343) / 2;
// 打印距离到串口监视器
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
delay(1000); // 等待一秒钟再次测量
}
二、舵机(180度舵机)
1、接线图
2、代码
#include <Servo.h> //加载文件库
int pos = 0;
Servo myservo;
void setup()
{
myservo.attach(9, 500, 2500); //修正脉冲宽度
}
void loop()
{
for (pos = 0; pos <= 180; pos += 1) {
//pos+=1等价于pos=pos+1
myservo.write(pos);
delay(15);
}
for (pos = 180; pos >= 0; pos -= 1) {
myservo.write(pos);
delay(15);
}
}
三、舵机(360度舵机)
1、接线图
2、代码
#include <Servo.h> //调用舵机库
Servo myservo; // 定义舵机对象
void setup()
{
myservo.attach(9); // 设置舵机控制针脚接数字7引脚
}
void loop()
{
myservo.write(45); delay(1000); //慢速正转3秒
myservo.write(90); delay(1000); //占空比为1.5ms的PWM信号停止1秒
myservo.write(0); delay(3000); //快速正转3秒
myservo.write(90); delay(1000); //占空比为1.5ms的PWM信号停止1秒
myservo.write(135); delay(3000); //慢速反转3秒
myservo.write(90); delay(1000); //占空比为1.5ms的PWM信号停止1秒
myservo.write(180); delay(3000); //快速反转3秒
myservo.write(90); delay(1000); //占空比为1.5ms的PWM信号停止1秒
}
ps:不同的360舵机占空比可能不同