#arduino
#arduino
Вопрос:
Я пытаюсь установить библиотеку (pitches.h) в Arduino IDE, выбрав «Эскиз» > «Включить библиотеку» > «Добавить.ZIPLibrary». Затем я получил сообщение об ошибке, показанное ниже:
/Users/tomo/Desktop/passive_buzzer/passive_buzzer.ino
A library named pitches already exists
Но я не вижу библиотеку «pitches» в выпадающем меню, которое появляется при выборе «Включить библиотеку». И затем, когда я скомпилировал эскиз, я получил следующее сообщение об ошибке:
passive_buzzer:4:10: fatal error: pitches.h: No such file or directory
#include <pitches.h>
^~~~~~~~~~~
compilation terminated.
exit status 1
pitches.h: No such file or directory
Поэтому я думаю, что библиотека установлена неправильно. Кто-нибудь может помочь мне установить его правильно, пожалуйста?
Имя файла библиотеки правильное, поскольку я скопировал и вставил имя файла из файла в эскиз.
Я думаю, что структура папок библиотеки также должна быть правильной. Когда я разархивировал «pitches.zip «, Я получил файл «pitches.h» в папке с именем «pitches». Я заархивировал только файл «pitches.h», а затем попытался установить его, выбрав «Эскиз» > «Включить библиотеку» > «Добавить.ZIPLibrary». Я получил следующее сообщение:
java.io.IOException: Zip doesn't contain a library
at processing.app.Base.handleAddLibrary(Base.java:2417)
at processing.app.Base$6.actionPerformed(Base.java:1124)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
at com.apple.laf.ScreenMenuItem.actionPerformed(ScreenMenuItem.java:125)
at java.awt.MenuItem.processActionEvent(MenuItem.java:669)
at java.awt.MenuItem.processEvent(MenuItem.java:628)
at java.awt.MenuComponent.dispatchEventImpl(MenuComponent.java:357)
at java.awt.MenuComponent.dispatchEvent(MenuComponent.java:345)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:763)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:733)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Zip doesn't contain a library
Окружающая среда
Arduino: 1.8.13 (Mac OS X), Плата: «Arduino Mega или Mega 2560, ATmega2560 (Mega 2560)»
macOS Mojave версии 10.14.6
Заранее благодарю тебя, Томо
Комментарии:
1. загляните в
libraries
папку в папке sketchbook. папка sketchbook настраивается в настройках IDE2. Сработало! Большое вам спасибо!!! Я узнал, что 1) файл библиотеки должен храниться в папке с именем «библиотеки» и 2) папка «библиотеки» должна находиться в «расположении sketchbook», которое определено в
"Arduino" > "Preferences"
.
Ответ №1:
Благодаря Juraj я нашел способ установить и включить библиотеку:
- Сохраните файл sketchbook и файл библиотеки в «Расположении Sketchbook».
- Откройте файл sketchbook в «Расположении Sketchbook». (Автоматически создается папка, и файл sketchbook перемещается в папку, после чего sketchbook откроется.)
- Через открытый альбом для рисования установите файл библиотеки в «Расположение альбома для рисования» и включите его.
«Местоположение Sketchbook» может быть подтверждено / определено "Arduino" > "Preference"
. Этот способ был применим к другим файлам sketchbook и связанным с ними библиотечным файлам, предоставленным Arduino.