настоящие часы из микробит!

настоящие часы из микробит!

igor

описание программы MAKECODE и работы с ней здесь

описание блоков программы MAKECODE здесь

как подключить микробит здесь

Нажмите на ссылку, запустите графическую платформу онлайн-программирования MakeCode. 


Давайте создадим настоящие цифровые часы для вашего микро: бит!

все готовые файлы внизу статьи

здесь ссылка на первоисточник , вы можете прочитать с помощью переводчика,

я только сделал перевод и проверил код программы,у меня он работает,

в отличии от первоисточника)

Сделайте переменные времени¶

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


Перейдите в Basic на панели инструментов и включите запуск в рабочей области.

в разделе «Переменные» нажмите «Создать переменную». Назовите переменную как часы. Перетащите набор для блокировки и измените имя с раскрывающимся списком на часы. Поместите переменную в начальный блок.

Повторите это еще 4 раза, чтобы сделать переменные с именами минут, времени, настройки и до полудня-после полудня(ampm).

Теперь, чтобы установить блокировку на время, перейдите к тексту и перетащите «» в и замените 0.

Для переменной до полудня-после полудня (ampm)измените значение 0 на false из категории Logic.


Показать время, вид¶

Итак, давайте попробуем показать время на дисплее. У нас пока нет времени, но мы просто посмотрим, сможем ли мы заставить наши часы показать что-то.


Получить во входной категории и вытащить на встряхнуть. Наши часы покажут время, когда они потрясены.

Получить другой набор и положить его на встряхивание. Измените имя на время.

Замените 0 на объединение из текста. Получите еще одно соединение и поместите его во второй слот первого соединения, которое вы вытащили.

Измените "" в первом соединении на переменную часов. Измените текст в первом слоте второго соединения на «:». И измените последний слот во втором соединении на переменную минут.

Наконец, вставьте строку показа ниже набора в. Переключите текст внутри на переменное время.

Загрузите код для вас, микро: бит и встряхните его. Видели ли вы время «0: 0» на светодиодах?

Установите время с помощью кнопок¶

Должен быть способ установить время на ваших часах. Мы будем использовать кнопки, чтобы установить текущее время. Одна кнопка предназначена для установки часов, а другая кнопка для минут.


Установить часы¶

Давайте сделаем способ установить часы для часов.


Во вводе найдите кнопку включения и поместите ее где-нибудь в рабочей области. Получите блок if if else из Logic и поместите его в нажатую кнопку включения. Из той же логической категории получите 0 <0 и поменяйте с ней ложное условие. Измените левый 0 в условии на переменную часов. Измените 0 справа на 23. Это ограничивает наш счетчик часов до 23 часов. В тогдашнем разделе внесите туда изменения. Выберите имя переменной часов из выпадающего списка. В разделе else положите туда набор. Выберите имя переменной часов из выпадающего списка и оставьте 0.


Установка минут почти такая же, как установка часов, но с несколькими изменениями.


Чтобы упростить задачу, щелкните правой кнопкой мыши на блоке, нажатом на кнопку, и выберите в меню пункт «Дублировать» Это делает копию оригинального блока. В новой нажатой кнопке измените кнопку на B. Измените имя каждой переменной с часов на минуты. Измените 23 в условии if на 59. Это предел минут, которые мы считаем.


Выберите время 24 часа или 12 часов hour

Время отображается в 24-часовом или 12-часовом формате. Мы будем использовать еще одну кнопку, чтобы выбрать формат для отображения. Использование 12-часового формата добавляет «AM» или «PM» в конце.


Во вводе нажмите кнопку включения и поместите его в рабочую область. Измените кнопку на A + B.

Возьмите набор, поместите его в блок и измените переменную на ampm. Положите не из логики, где 0.

Подберите ampm от Variables и подключите его справа от нет. Это переключает наш 24-часовой формат на 12-часовой и обратно.


Сделайте отметку таймера

Часы действительно состоят из трех частей: дисплея, настроек и таймера. Нам нужен способ подсчета минут и часов в нужное время. Давайте закодировать таймер.


В Basic, получить вечный цикл в рабочую область. Также в Basic, взять паузу и положить его в цикл. Измените время со 100 на 60000. Время указывается в миллисекундах, поэтому мы хотим считать каждую минуту каждые 60000 миллисекунд. Под паузой вставьте блок if if else. Измените условие в if, чтобы использовать 0 <0. Замените 0 слева переменной минут. Измените 0 справа на 59. Поместите изменение в затем. Измените переменную на минуты. Получить набор и положить его в остальное. Снова измените переменную на минуты.

Продолжайте кодировать ... ¶

Теперь возьмите еще один, если потом еще, и поместите его чуть ниже набора внутри первого. Во втором случае, если в качестве условия укажите 0 <0. Замените левый 0 на переменную часов. Измените право с 0 на 23. Мы считаем часы до 23, пока не вернемся к 0 (полночь). Поместите изменения во второй тогда. Измените переменную на часы. Получить набор и положить его во второй. Снова измените переменную на часы. Хорошо, таймер готов к работе.


Встряхни и покажи ... время! ¶

Мы возвращаемся к коду отображения, который мы сделали ранее. Сейчас мы сделаем это, чтобы показать в реальном времени! Этот шаг будет занят, но мы сделаем это.


Во-первых, мы должны кодировать корректировку для количества часов, когда мы используем 12-часовой формат.


Найдите блок на встряске, который мы кодировали ранее. Вытащите и перетащите в мусор блоки внутри. Мы начинаем с нуля.

Вытащите набор, чтобы положить его внутрь на встряхивание. Измените переменную для настройки. Измените 0 справа на переменную часов.

Получите тогда if и поместите его в набор. Замените условие переменной ampm.

Возьмите if if else и поместите его в тогдашнюю часть первого if тогда. Измените условие на 0 <0. Замените 0 слева переменной часов. Измените 0 справа на 12. Переключите <в>.

Идите, получите другой набор и поместите его в то из второго, если тогда еще. Измените переменную для настройки. В математике возьмите 0 - 0 и замените 0 в наборе на. Измените 0 слева на переменную часов, а 0 справа на 12.

Возьмите еще одно, если потом, и положите в другое. Измените его условие на 0 = 0. Поместите переменную часов вместо 0 слева.

Внутри этого последнего, если затем поместите набор в. Измените имя переменной для настройки и установите значение 12.

Продолжайте кодировать ... ¶

Теперь нам нужно объединить часы и минуты, чтобы создать текст, который будет отображаться на часах.


Внизу встряхните, вставьте набор в. Измените имя переменной на время. Подключите его к объединению из текста.

Сделайте 3 копии этого последнего набора, используя опцию «Дублировать» в меню, если щелкнуть правой кнопкой мыши блок. Положите копии друг под другом, чтобы все 4 были сложены вместе.

В первом наборе заменить второе «» в соединении на переменную Adjust.

Со второй копией измените первое "" в соединении на переменное время. Измените вторую строку в соединении на «:».

В третьей копии замените первое «» в соединении на переменное время. Измените вторую строку в соединении на оператор деления из Math. Установите левую 0 на переменную минут, а правую 0 на 10.

В четвертой копии замените первое «» в соединении на переменное время. Измените вторую строку в соединении на остаток от Math. Установите левую 0 на переменную минут, а правую 0 на 10.

Продолжайте кодировать ... ¶

Хорошо, мы приближаемся к завершению. Здесь нам нужно добавить «AM» или «PM», если мы в 12-часовом формате. Затем, наконец, отобразите полную строку времени.


Положите если затем блок в конце на встряхнуть. Замените истинное условие переменной ampm.

Вставьте если тогда еще в это, если тогда. Используйте 0 <0 в качестве условия. Измените левый 0 на переменную часов. Измените право с 0 на 11. Переключите <на>.

Поместите набор в тогда. Измените переменную на время и присоедините соединение. Сделайте, чтобы первая часть соединения была переменной времени, а вторая часть - текстом «PM».

Сделайте то же самое, что и в последнем шаге, но поместите набор для блокировки в остальное внизу. Сделайте вторую часть объединения "AM" на этот раз.

Наконец, в самом низу встряхивания, возьмите шоу-строку из Basic и поместите ее туда. Измените строку "Привет!" к переменной времени.

скриншот программы


Вы получили свои часы и готовы попробовать. Перейдите, нажмите кнопку «Загрузить» и поместите ваш код в микро: бит. Когда вы встряхиваете, он показывает текущее время.


Прямо сейчас он показывает 24-часовой формат: часы переходят от 0 до 23 и возвращаются к 0. Нажмите кнопки A + B вместе, чтобы перейти к 12-часовому формату: часы переходят с 12 на 12 с интервалом от 1 до 11. Он имеет либо «AM» или «PM» в конце.


Чтобы установить текущее время, используйте кнопки A и B. Кнопка A перемещает текущий час на единицу при каждом нажатии. Кнопка B перемещает минуты на единицу при каждом нажатии.


Теперь, когда вы можете сказать время на вашем микро: бит, кто знает, что вы будете делать дальше. Время покажет!

ссылка на этот проект в makecode открой и можешь загрузить

как использовать программу Makecode и работать с выложенным здесь hex файлом , подробно описано в статье НАЧАЛО

используя выложенный здесь скриншот программы вы можете ее набрать самостоятельно и доработать по вашему желанию)

и загрузить на микробит )

ссылка на первоисточник


Report Page