- 95
- 0
- 约2.47千字
- 约 2页
- 2020-10-08 发布于浙江
- 举报
//循迹小车Arduino 程序:
// R是右(right),L是左(left) 小车对着自己看时 分的左右
int MotorRight1=14; //A0 IN1
int MotorRight2=15; //A1 IN2
int MotorLeft1=16; //A2 IN3
int MotorLeft2=17; //A3 IN4
int MotorRPWM=5; //PWM 5
int MotorLPWM=3; //PWM 3
const int SensorLeft = 2; //左感測器輸入腳
const int SensorRight = 6; //右感測器輸入腳
int SL; //左感測器狀態
int SR; //右感測器狀態
void setup()
{
Serial.begin(9600);
pinMode(MotorRight1, OUTPUT); // 腳位 14 (PWM)
pinMode(MotorRight2, OUTPUT); // 腳位 15 (PWM)
pinMode(MotorLeft1, OUTPUT); // 腳位 16 (PWM)
pinMode(MotorLeft2, OUTPUT); // 腳位 17 (PWM)
pinMode(MotorLPWM, OUTPUT); // 腳位 3 (PWM)
pinMode(MotorRPWM, OUTPUT); // 腳位 5 (PWM)
pinMode(SensorLeft, INPUT); //定義左感測器
pinMode(SensorRight, INPUT); //定義右感測器
}
void loop()
{
SL = digitalRead(SensorLeft);
SR = digitalRead(SensorRight);
if (SL == LOWSR==LOW)// 前進
{
digitalWrite(MotorRight1,LOW);//IN1 右电机 高电平反转
digitalWrite(MotorRight2,HIGH);//IN2 右电机 高电平正转
analogWrite(MotorRPWM,130); //0---100--250
digitalWrite(MotorLeft1,LOW);//IN3 左电机 高电平正转
digitalWrite(MotorLeft2,HIGH);//IN4 左电机 高电平反转
analogWrite(MotorLPWM,130);
}
else // R是右(right),L是左(left) 小车对着自己看时 分的左右
{
if (SL == HIGH SR == LOW)// 左白右黑, 快速左轉
{
delay(1);
digitalWrite(MotorRight1,HIGH);//IN1 右电机 高电平反转
digitalWrite(MotorRight2,LOW);//IN2 右电机 高电平正转
analogWrite(MotorRPWM,130);
digitalWrite(MotorLeft1,LOW);//IN3 左电机 高电平正转
digitalWrite(MotorLeft2,HIGH);//IN4 左电机 高电平反转
analogWrite(MotorLPWM,130);
}
else if (SR == HIGH SL == LOW) // 右白左黑, 快速右轉
{
delay(1);
digitalWrite(MotorRight1,LOW);//IN1 右电机 高电平反转
digitalWrite(MotorRight2,HIGH);//IN2 右电机 高电平正转
analogWrite(MotorRPWM,130);
您可能关注的文档
最近下载
- 《阿尔茨海默病及相关痴呆的营养预防和干预专家共识(2025)》解读PPT课件.pptx VIP
- 关于高校基层党组织机构优化设置的探讨.doc VIP
- 2025江苏医药职业学院单招《英语》真题附参考答案详解【精练】.docx VIP
- 第一单元第一课《领略丝路遗珍》课件2025-2026学年人美版初中美术八年级下册.pptx VIP
- 岩土工程勘察收费标准(完整版).docx VIP
- 2025四川省中职学生单招考试英语答案 .pdf VIP
- 快消年度工作总结.pptx VIP
- 慢性肾脏病相关瘙痒管理中国专家共识解读(PPT课件.pptx VIP
- 企业所得税年度纳税申报表A类.pdf VIP
- 2022高二英语人教版新教材选择性必修三课文及翻译(英汉对照).pdf VIP
原创力文档

文档评论(0)