|
|
Строка 5: |
Строка 5: |
| =Часы реального времени на базе Espruino<ref>[https://www.espruino.com/Clocks www.espruino.com - Espruino's Real Time Clock]</ref>= | | =Часы реального времени на базе Espruino<ref>[https://www.espruino.com/Clocks www.espruino.com - Espruino's Real Time Clock]</ref>= |
|
| |
|
| Некоторым проектам требуется знать текущее время – это могут быть, например, часы или запись данных через определенные промежутки времени.
| |
|
| |
|
| Все Espruino-платы оснащены собственными часами реального времени, с помощью которых они могут отсчитывать время, даже находясь в энергосберегающем режиме глубокого сна. Но в зависимости от платы точность этих часов может сильно варьироваться:
| |
|
| |
| {| class="wikitable" style="margin:0 auto;"
| |
| |- | | |- |
| ! Плата | | ! Плата |
Строка 46: |
Строка 42: |
| || Внутренние часы с калибровкой | | || Внутренние часы с калибровкой |
| || Хорошая | | || Хорошая |
| |-
| |
| |} | | |} |
|
| |
| Если у вас Espruino Original или Pico без кристалла, то вы можете установить его сами (см. ниже).
| |
|
| |
| '''Примечание:''' Вы можете просто воспользоваться внешним модулем вроде [https://www.espruino.com/DS3231 DS3231].
| |
|
| |
| ==Установка кристалла'''==
| |
|
| |
| === Espruino Original ===
| |
|
| |
| '''Примечание:''' Espruino [https://www.espruino.com/Original<nowiki>#</nowiki>layout 1.4] уже оснащена низкоскоростным генератором импульсов. Установка кристалла может понадобиться только для версии 1.3.
| |
|
| |
| [Картинка]
| |
|
| |
| Кристалл можно купить практически у любого поставщика электронных компонентов. Например:* [https://uk.farnell.com/multicomp/mcrj332768f1220how/crystal-32-768khz-12-5pf-thru-hole/dp/1701100 Farnell]
| |
| * [https://www.ebay.com/sch/i.html?_nkw=Crystal+32.768&mkcid=1&mkrid=711-53200-19255-0&siteid=0&campid=5337979701&customid=&toolid=10001&mkevt=1 eBay]
| |
|
| |
|
| |
| Вам нужен компонент, выглядящий примерно как на картинке выше: длиной примерно 8 мм, шириной около 2 мм и с двумя очень тонкими проводами. Они недорогие, но их также можно просто достать из старых кварцевых часов.
| |
|
| |
| [Картинка]
| |
|
| |
| * Поместите две маленьких капельки припоя на две контактные площадки, показанные на фото выше.
| |
| * Подрежьте провода кристалла до равной длины и полудите их.
| |
| * Припаяйте кристалл к плате (то, какой провод к какой площадке вы припаяете, не важно).
| |
| * Пригните его к ARM-чипу и примените суперклей, чтобы зафиксировать его.
| |
|
| |
| [Картинка]
| |
|
| |
| Четыре другие контактные площадки, находящиеся рядом, предназначены для двух конденсаторов кристалла. Для таких кристаллов необходимо, чтобы ёмкость каждого конденсатора была около 12 пФ. Впрочем, ёмкости достаточно и у самой платы, так что кристалл будет идеально работать и без конденсаторов.
| |
|
| |
| === Espruino Pico ===
| |
|
| |
| На стороне платы, обратной USB-коннектору, имеется 6 пустых контактных площадок. Вам понадобятся:* Кристалл Abracon ABS06-107
| |
|
| |
| * Два конденсатора 0603 на 4 пФ
| |
|
| |
| Две большие площадки предназначены для кристалла, а маленькие – для конденсаторов.
| |
|
| |
| Лучше устанавливать кристалл с помощью термовоздушной паяльной станции и пинцетов (если они у вас есть). Конечно, можно воспользоваться паяльником с тонким жалом, но это потребует больше времени и усидчивости.
| |
|
| |
| == Код ==
| |
|
| |
| Он не нужен! Просто подключите Espruino к питанию, после чего она автоматически обнаружит кристалл и начнёт им пользоваться.
| |
|
| |
| Рекомендуем включить настройку Set Current Time в настройках IDE Espruino (нажмите на иконку с шестерёнкой справа вверху, а затем на Communications – пункт Set Current Time должен быть в самом низу). Теперь, когда вы будете загружать код, на устройстве будет автоматически задаваться правильное время (и часовой пояс), а <span style="color:#808080;">new</span><span style="color:#808080;"> </span><span style="color:#808080;">Date</span><span style="color:#808080;">()</span> будет возвращать объект [http://www.espruino.com/Reference<nowiki>#</nowiki>Date <span style="color:#808080;">Date</span>], с помощью которого можно будет узнать текущее время.
| |
|
| |
| Чтобы задать время вручную, просто воспользуйтесь функцией <span style="color:#808080;">setTime</span><span style="color:#808080;">()</span> и задайте там количество секунд, прошедших с <span style="background-color:#00ff00;">1970 года.</span>
| |
|
| |
| Кроме того, можно воспользоваться модулем [https://www.espruino.com/clock <span style="color:#808080;">clock</span>], который будет отслеживать время независимо от системного времени.
| |
|
| |
| <syntaxhighlight lang="html5" enclose="div">
| |
|
| |
|
| =См.также= | | =См.также= |