====== Как создать и подключить свою библиотеку в Espruino Web IDE ======
Для упрощения работы в Espruino Web IDE со сложными математическими функциями, датчиками и исполнительными устройствами существуют специальные файлы — [[js:#подгружаемые_библиотеки|библиотеки]]. В них спрятаны всевозможные расчёты, функции для настройки и калибровки сенсоров, фильтры ошибочных значений и многое другое.
Если вы стали обладателям набора [[amp>product/yodo?utm_source=man&utm_campaign=libraries&utm_medium=wiki|Йодо]] или платы [[amp>product/iskra-js?utm_source=man&utm_campaign=libraries&utm_medium=wiki|Iskra JS]] и освоили программирование на JavaScript — в ваших силах написать свою библиотеку. В этой статье мы расскажем как написать её и подключить к Espruino Web IDE.
===== Как создать свою библиотеку =====
- Для примера напишем библиотеку управления светодиодом. В библиотеку включим два метода:
- ''turnOn'' — включить светодиод;
- ''turnOff'' — выключить светодиод.
var MyLed = function(pin) {
this._pin = pin;
};
MyLed.prototype.turnOn = function() {
this._pin.write(true);
};
MyLed.prototype.turnOff = function() {
this._pin.write(false);
};
exports.connect = function(pin) {
return new MyLed(pin);
};
- Откройте среду Espruino Web IDE.{{ :js:modules:connection:modules_connection1.png |}}
- Укажите путь для хранения собственных библиотек. Для этого зайдите в настройки Espruino Web IDE:
Settings
//Projects//
//Select Directory for Sandbox// и выберите папку. В качестве примера мы выбрали:
C:\myModules
{{ :js:modules:connection:modules_connection2x.png |}}
- В созданной директории появится список вложенных папок. Найдите в этом списке папку ''modules'' и зайдите в неё.{{ :js:modules:connection:modules_connection3x.png |}}
- Скопируйте файл библиотеки в папку ''modules''.{{ :js:modules:connection:modules_connection4x.png |}}
===== Как подключить и использовать библиотеку =====
Проверим как будет работать новая библиотека в первом эксперименте набора [[amp>product/yodo?utm_source=man&utm_campaign=libraries&utm_medium=wiki|Йодо]].
- Подключите [[amp>product/troyka-led-module?utm_source=man&utm_campaign=libraries&utm_medium=wiki|светодиод «Пиранья» (Troyka-модуль)]] или [[amp>product/troyka-5mm-led-module?utm_source=man&utm_campaign=libraries&utm_medium=wiki|светодиод 5 мм (Troyka-модуль)]] к пину ''P1''
- Вспомните код из первого эксперимента из набора [[amp>product/yodo?utm_source=man&utm_campaign=libraries&utm_medium=wiki|Йодо]]:
var myCoolLamp = require('@amperka/led').connect(P1);
myCoolLamp.turnOn();
Модифицируем его с использованием новой библиотеки ''my-led''. Изменим путь к модулям, на название нашей библиотеки.
- Заменим строку '@amperka/led'
на 'my-led'
- Прошейте управляющую плату модифицируемой программой:
var myCoolLamp = require('my-led').connect(P1);
myCoolLamp.turnOn();
В консольном окне появится сообщение об успешной прошивке, а в правом нижнем углу среды — окно об успешном подключении библиотеки. Светодиод на пине ''P1'' загорится.
{{ :js:modules:connection:modules_connection5x.png |}}
Поздравляем, вы создали и использовали первую библиотеку для Espruino IDE.
===== Видеоурок о создании библиотек для IskraJS =====
{{youtube>8zE8FNtCLw0?large}}