Espruino:Примеры/Часы реального времени на базе Espruino: различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
Нет описания правки
 
(не показано 9 промежуточных версий 2 участников)
Строка 7: Строка 7:
Некоторым проектам требуется знать текущее время – это могут быть, например, часы или запись данных через определенные промежутки времени.
Некоторым проектам требуется знать текущее время – это могут быть, например, часы или запись данных через определенные промежутки времени.


Все Espruino-платы оснащены собственными часами реального времени, с помощью которых они могут отсчитывать время, даже находясь в энергосберегающем режиме глубокого сна. Но в зависимости от платы точность этих часов может сильно варьироваться:
Все [[Espruino-платы]] оснащены собственными часами реального времени, с помощью которых они могут отсчитывать время, даже находясь в энергосберегающем режиме глубокого сна. Но в зависимости от платы точность этих часов может сильно варьироваться:


{| class="wikitable" style="margin:0 auto;"
{| class="wikitable" style="margin:0 auto;"
|-  
|-  
!! Плата
! Плата !! Генератор !! Точность
!! Генератор
!! Точность
|-  
|-  
|| Espruino [https://www.espruino.com/Original Original] 1v4+
|| Espruino [https://www.espruino.com/Original Original] 1v4+
Строка 46: Строка 44:
|| Внутренние часы с калибровкой
|| Внутренние часы с калибровкой
|| Хорошая
|| Хорошая
|-
|}
|}


Если у вас Espruino Original или Pico без кристалла, то вы можете установить его сами (см. ниже).
Если у вас [[Espruino Original]] или [[Pico]] без кристалла, то вы можете установить его сами (см. ниже).


'''Примечание:''' Вы можете просто воспользоваться внешним модулем вроде [https://www.espruino.com/DS3231 DS3231].
{{Примечание1|Вы можете просто воспользоваться внешним модулем вроде [https://www.espruino.com/DS3231 DS3231].}}


==Установка кристалла'''==
== Установка кристалла ==


=== Espruino Original ===
=== Espruino Original ===


'''Примечание:''' Espruino [https://www.espruino.com/Original<nowiki>#</nowiki>layout 1.4] уже оснащена низкоскоростным генератором импульсов. Установка кристалла может понадобиться только для версии 1.3.
{{Примечание1|[[Espruino]] [https://www.espruino.com/Original#layout 1.4] уже оснащена низкоскоростным генератором импульсов. Установка кристалла может понадобиться только для версии 1.3.}}


[Картинка]
[[File:Clocks_crystal_1.jpg|center]]


Кристалл можно купить практически у любого поставщика электронных компонентов. Например:* [https://uk.farnell.com/multicomp/mcrj332768f1220how/crystal-32-768khz-12-5pf-thru-hole/dp/1701100 Farnell]
Кристалл можно купить практически у любого поставщика электронных компонентов. Например:
* [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]
* [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 мм'' и с двумя очень тонкими проводами. Они недорогие, но их также можно просто достать из старых кварцевых часов.


Вам нужен компонент, выглядящий примерно как на картинке выше: длиной примерно 8 мм, шириной около 2 мм и с двумя очень тонкими проводами. Они недорогие, но их также можно просто достать из старых кварцевых часов.
[[File:Clocks_crystalpos_2.jpg|center]]
 
[Картинка]


* Поместите две маленьких капельки припоя на две контактные площадки, показанные на фото выше.
* Поместите две маленьких капельки припоя на две контактные площадки, показанные на фото выше.
Строка 74: Строка 71:
* Пригните его к ARM-чипу и примените суперклей, чтобы зафиксировать его.
* Пригните его к ARM-чипу и примените суперклей, чтобы зафиксировать его.


[Картинка]
[[File:Clocks_final_3.jpg|center]]


Четыре другие контактные площадки, находящиеся рядом, предназначены для двух конденсаторов кристалла. Для таких кристаллов необходимо, чтобы ёмкость каждого конденсатора была около 12 пФ. Впрочем, ёмкости достаточно и у самой платы, так что кристалл будет идеально работать и без конденсаторов.
Четыре другие контактные площадки, находящиеся рядом, предназначены для двух [[конденсатор]]ов кристалла. Для таких кристаллов необходимо, чтобы ёмкость каждого [[конденсатор]]а была около [[12 пФ]]. Впрочем, ёмкости достаточно и у самой платы, так что кристалл будет идеально работать и без [[конденсатор]]ов.


=== Espruino Pico ===
=== Espruino Pico ===


На стороне платы, обратной USB-коннектору, имеется 6 пустых контактных площадок. Вам понадобятся:* Кристалл Abracon ABS06-107
На стороне платы, обратной [[USB-коннектор]]у, имеется ''6'' пустых контактных площадок. Вам понадобятся:
* Кристалл [[Abracon ABS06-107]]
* Два конденсатора [[0603]] на [[4 пФ]]


* Два конденсатора 0603&nbsp;на 4 пФ
Две большие площадки предназначены для кристалла, а маленькие – для [[конденсатор]]ов.
 
Две большие площадки предназначены для кристалла, а маленькие – для конденсаторов.


Лучше устанавливать кристалл с помощью термовоздушной паяльной станции и пинцетов (если они у вас есть). Конечно, можно воспользоваться паяльником с тонким жалом, но это потребует больше времени и усидчивости.  
Лучше устанавливать кристалл с помощью термовоздушной паяльной станции и пинцетов (если они у вас есть). Конечно, можно воспользоваться паяльником с тонким жалом, но это потребует больше времени и усидчивости.  
Строка 90: Строка 87:
== Код ==
== Код ==


Он не нужен! Просто подключите Espruino к питанию, после чего она автоматически обнаружит кристалл и начнёт им пользоваться.  
Он не нужен! Просто подключите [[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>], с помощью которого можно будет узнать текущее время.
Рекомендуем включить настройку '''Set Current Time''' в настройках [[IDE Espruino]] (нажмите на иконку с шестерёнкой справа вверху, а затем на '''Communications''' – пункт '''Set Current Time''' должен быть в самом низу). Теперь, когда вы будете загружать код, на устройстве будет автоматически задаваться правильное время (и часовой пояс), а new Date() будет возвращать объект [http://www.espruino.com/Reference#Date Date], с помощью которого можно будет узнать текущее время.


Чтобы задать время вручную, просто воспользуйтесь функцией <span style="color:#808080;">setTime</span><span style="color:#808080;">()</span> и задайте там количество секунд, прошедших с <span style="background-color:#00ff00;">1970 года.</span>
Чтобы задать время вручную, просто воспользуйтесь функцией setTime() и задайте там количество секунд, прошедших с [[1970 год]]а.


Кроме того, можно воспользоваться модулем [https://www.espruino.com/clock <span style="color:#808080;">clock</span>], который будет отслеживать время независимо от системного времени.
Кроме того, можно воспользоваться модулем [https://www.espruino.com/clock clock], который будет отслеживать время независимо от системного времени.
 
<syntaxhighlight lang="html5" enclose="div">


=См.также=
=См.также=
{{ads}}


=Внешние ссылки=
=Внешние ссылки=
Строка 108: Строка 101:
<references />
<references />


{{Навигационная таблица/Espruino}}
{{Навигационная таблица/Портал/Espruino}}
{{Навигационная таблица/Телепорт}}

Текущая версия от 15:16, 28 мая 2023

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Часы реального времени на базе Espruino[1]

Некоторым проектам требуется знать текущее время – это могут быть, например, часы или запись данных через определенные промежутки времени.

Все Espruino-платы оснащены собственными часами реального времени, с помощью которых они могут отсчитывать время, даже находясь в энергосберегающем режиме глубокого сна. Но в зависимости от платы точность этих часов может сильно варьироваться:

Плата Генератор Точность
Espruino Original 1v4+ Внешний кристалл Хорошая
Espruino Original 1v3 Внутренние часы 1%
Espruino Pico Внутренние часы 10%
Espruino WiFi Внешний кристалл Хорошая
Puck.js Внутренние часы с калибровкой Хорошая
Pixl.js Внутренние часы с калибровкой Хорошая
MDBT42Q Внутренние часы с калибровкой Хорошая
Bangle.js Внутренние часы с калибровкой Хорошая

Если у вас Espruino Original или Pico без кристалла, то вы можете установить его сами (см. ниже).

Примечание

Вы можете просто воспользоваться внешним модулем вроде DS3231.

Установка кристалла

Espruino Original

Примечание

Espruino 1.4 уже оснащена низкоскоростным генератором импульсов. Установка кристалла может понадобиться только для версии 1.3.

Кристалл можно купить практически у любого поставщика электронных компонентов. Например:

Вам нужен компонент, выглядящий примерно как на картинке выше: длиной примерно 8 мм, шириной около 2 мм и с двумя очень тонкими проводами. Они недорогие, но их также можно просто достать из старых кварцевых часов.

  • Поместите две маленьких капельки припоя на две контактные площадки, показанные на фото выше.
  • Подрежьте провода кристалла до равной длины и полудите их.
  • Припаяйте кристалл к плате (то, какой провод к какой площадке вы припаяете, не важно).
  • Пригните его к ARM-чипу и примените суперклей, чтобы зафиксировать его.

Четыре другие контактные площадки, находящиеся рядом, предназначены для двух конденсаторов кристалла. Для таких кристаллов необходимо, чтобы ёмкость каждого конденсатора была около 12 пФ. Впрочем, ёмкости достаточно и у самой платы, так что кристалл будет идеально работать и без конденсаторов.

Espruino Pico

На стороне платы, обратной USB-коннектору, имеется 6 пустых контактных площадок. Вам понадобятся:

Две большие площадки предназначены для кристалла, а маленькие – для конденсаторов.

Лучше устанавливать кристалл с помощью термовоздушной паяльной станции и пинцетов (если они у вас есть). Конечно, можно воспользоваться паяльником с тонким жалом, но это потребует больше времени и усидчивости.

Код

Он не нужен! Просто подключите Espruino к питанию, после чего она автоматически обнаружит кристалл и начнёт им пользоваться.

Рекомендуем включить настройку Set Current Time в настройках IDE Espruino (нажмите на иконку с шестерёнкой справа вверху, а затем на Communications – пункт Set Current Time должен быть в самом низу). Теперь, когда вы будете загружать код, на устройстве будет автоматически задаваться правильное время (и часовой пояс), а new Date() будет возвращать объект Date, с помощью которого можно будет узнать текущее время.

Чтобы задать время вручную, просто воспользуйтесь функцией setTime() и задайте там количество секунд, прошедших с 1970 года.

Кроме того, можно воспользоваться модулем clock, который будет отслеживать время независимо от системного времени.

См.также

Внешние ссылки