故障处理 大佬帮帮我!-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 426|回复: 3

[未解决] 故障处理 大佬帮帮我!

[复制链接]
发表于 2022-4-15 20:01 | 显示全部楼层 |阅读模式
E:\Arduino\libraries\AdafruitGFX/Adafruit_GFX.h:28:7: note:   candidate expects 1 argument, 2 provided
exit status 1
这种故障是为啥啊 想加个oled 有没有大佬帮忙改改程序!
  1. #include <Adafruit_SSD1306.h>
  2. #include <Wire.h>
  3. #include <Servo.h>.
  4. #include <Adafruit_GFX.h>

  5. #define OLED_RESET     4
  6. Adafruit_SSD1306 display(128, 64, &Wire, OLED_RESET);
  7. const int trigPin = 10;
  8. const int echoPin = 11;
  9. long duration;
  10. int distance;
  11. Servo myServo; //
  12. void setup() {
  13.   display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
  14.   display.setTextColor(WHITE);//开像素点发光
  15.   display.clearDisplay();//清屏

  16.   display.setTextSize(2); //设置字体大小
  17.   pinMode(trigPin, OUTPUT);
  18.   pinMode(echoPin, INPUT);
  19.   Serial.begin(9600);
  20.   myServo.attach(12); //
  21. }

  22. //

  23. void loop() {
  24.   // 将伺服电机从 15 度旋转到 165 度
  25.   for (int i = 15; i <= 165; i++) {
  26.     myServo.write(i);
  27.     delay(30);
  28.     distance = calculateDistance();// Calls a function for calculating the distance measured by the Ultrasonic sensor for each degree

  29.     Serial.print(i);
  30.     Serial.print(",");
  31.     Serial.print(distance);
  32.     Serial.print("."); //
  33.   }
  34.   // 从 165 到 15 度重复前面的行
  35.   for (int i = 165; i > 15; i--) {
  36.     myServo.write(i);
  37.     delay(30);
  38.     distance = calculateDistance();
  39.     Serial.print(i);
  40.     Serial.print(",");
  41.     Serial.print(distance);
  42.     Serial.print(".");
  43.   }
  44.   display.clearDisplay();//清屏
  45.   display.setCursor(50, 10);
  46.   display.print(distance);
  47.   display.println("cm");
  48.   display.drawRect(0, 33, 128, 12, WHITE);
  49.   display.fillRect(2, 35, map(distance, 2, 20, 2, 124), 8, WHITE);
  50.   display.display();//开显示
  51. }
  52. // 计算超声波传感器测量距离的函数
  53. int calculateDistance() {

  54.   digitalWrite(trigPin, LOW);
  55.   delayMicroseconds(2);
  56.   // Sets the trigPin on HIGH state for 10 micro seconds
  57.   digitalWrite(trigPin, HIGH);
  58.   delayMicroseconds(10);
  59.   digitalWrite(trigPin, LOW);
  60.   duration = pulseIn(echoPin, HIGH); // 读取 echoPin,以微秒为单位返回声波传播时间
  61.   distance = duration * 0.034 / 2; //距离=持续时间*0.034/2;
  62.   return distance;
  63. }
复制代码


发表于 2022-4-15 21:32 | 显示全部楼层
candidate expects 1 argument, 2 provided 意思是:需要一个参数你给了两。
IDE 和 库都是有版本号的,不同版本使用上有细微不同。
重新检查下库的版本就应该解决问题,至少在我这里是可以通过的。
 楼主| 发表于 2022-4-15 21:35 | 显示全部楼层
kpj001 发表于 2022-4-15 21:32
candidate expects 1 argument, 2 provided 意思是:需要一个参数你给了两。
IDE 和 库都是有版本号的,不 ...


e:\arduino\hardware\tools\avr\bin\../lib/gcc/avr/7.3.0/../../../../avr/bin/ar.exe: unable to rename 'core\core.a'; reason: File exists
exit status 1
为开发板 Arduino Uno 编译时出错。
这是新的错误了 库已经修改了 不知道这个是因为什么错了
发表于 2022-4-15 21:47 | 显示全部楼层
我这 IDE1.8.19 没问题,所以呢, 找台其他机器,安装最新的 IDE,一试便知。 开发环境虽然不应该坏,但是意外总是有的。所以呢,我只用zip版,不好使就删除整个IDE目录,重新把zip包释放一次。。。同样操作也适用 C:\Users\xxx\Documents\Arduino\libraries 目录。  还不行,就猜原程序可能的年代,降低IDE 和库的版本。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 09:31 , Processed in 0.273979 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表