Различия между кодом Arduino и Espruino

  1. Нет функции delay ()
  2. Время
  3. Там нет функции loop ()
  4. Аналоговый ввод-вывод

Вот некоторые распространенные «ошибки», с которыми вы можете столкнуться при переходе от написания кода Arduino к написанию кода Espruino. Это может быть особенно полезно при «портировании» существующего кода.

Нет функции delay ()

Это сделано намеренно, так как добавление задержки не даст Эспруино делать другие вещи. Вместо этого, для больших задержек (> 5 мс) используйте setTimeout для выполнения второго набора кода после периода времени:

Итак, следующее:

// некоторые команды 1 delay (500); // некоторые команды 2

становится:

// некоторые команды 1 setTimeout (function () {// некоторые команды 2}, 500);

Время

Эспруино не имеет миллис (). Он имеет getTime (), который сообщает текущее время в секундах как число с плавающей запятой.

В отличие от большинства Arduinos, Espruino содержит в реальном времени Часы что позволяет очень точно отслеживать время и дату. Это означает, что вам не нужен внешний RTC, и вы можете вместо этого использовать Дата класс ,

Там нет функции loop ()

Большая часть кода Arduino использует следующий шаблон:

void call_me_from_loop () {if (millis ()> last_time_called + 1000) {last_time_called = millis (); // делать вещи}}

В Эспруино это действительно неэффективно, потому что мешает Эспруино спать, когда он знает, что ему ничего не нужно делать. Это также излишне сложно.

Вместо этого используйте следующее:

setInterval (function () {// do stuff}, 1000);

Аналоговый ввод-вывод

  • analogWrite в Espruino принимает значение с плавающей запятой от 0 до 1, а не целое число от 0 до 255
  • analogRead в Espruino возвращает значение с плавающей запятой от 0 до 1, а не целое число от 0 до 1023
  • Espruino имеет напряжение 3,3 В (не 5 В), поэтому для получения напряжения от analogRead вам нужно умножить на 3,3, а не 5. Однако мы бы предложили умножить на E.getAnalogVRef (), который измеряет напряжение микросхемы на основе внутреннего напряжения. ссылка.
  • Если вы хотите прочитать или написать аудио, см. форма волны - Использование setInterval напрямую, вероятно, не будет работать.

Другое IO

  • digitalRead и digitalWrite могут принимать массив выводов, в этом случае значение обрабатывается как двоичное число
  • Нет необходимости разбивать SPI. Вы можете создать программный экземпляр SPI на любых выводах, используя новый SPI ()

Функции библиотеки

  • Строки могут быть добавлены вместе, а числа автоматически преобразуются в строки - поэтому нет необходимости иметь отдельный оператор печати для каждого значения
  • Если вы хотите вывести значение в 2 десятичных знака, просто используйте console.log (value.toFixed (2)) - console.log (x, 2) просто вернет значение x, а затем 2

язык

  • Обычные массивы редки, поэтому не очень эффективны. Лучше всего использовать Uint8Array или аналогичный.
  • Скорость выполнения кода не фантастическая, смотрите Спектакль , Вместо того, чтобы писать код, попробуйте и по возможности используйте библиотечные функции.
  • Вы не можете написать код, который выполняется внутри прерываний, и ваш код никогда не прерывается. Тем не менее, вы можете точно измерять импульсы, так как события из setWatch помечаются с точностью до ближайшей микросекунды.

Нашли что-то еще?

Пожалуйста, дайте нам знать в Форум ...

Эта страница генерируется автоматически из GitHub , Если вы видите какие-либо ошибки или у вас есть предложения, пожалуйста, дайте нам знать ,

Похожие

Обзор Samsung Galaxy Tab S 10.5: тонкий, легкий и очень впечатляющий
Samsung предлагает то, что может показаться ошеломляющим набором планшетов, включая стандартную Galaxy Tab, ориентированную на бизнес Galaxy Tab PRO и оснащенные стилусом линейки Galaxy Note. Теперь есть еще одна линейка - Galaxy Tab S, который доступен в размерах 8,4 и 10,5 дюймов, а также в вариантах с поддержкой Wi-Fi и Wi-Fi-Plus-LTE. 10,5-дюймовый Galaxy Tab S рассмотренный здесь предоставляет широкий набор функций
Ночная фотография
Ночная фотография - очень специфическая область фотографии, но у нее много поклонников. Снимки, сделанные после наступления темноты, содержат «что-то» и могут быть очень эффективными, но часто вызывают проблемы у начинающих фотографов. В этом тексте вы найдете несколько советов о том, как сделать спокойную ночную фотографию. Что нужно знать перед съемкой ночной фотографии? Отсутствие света является большой проблемой для камеры, в конце концов «фотография»
Язык R, для программистов
... время как S-PLUS использует статическую область видимости. Разница может быть незначительной, особенно при использовании затворов. Поскольку переменные не могут быть объявлены - они появляются при первом присваивании - не всегда легко определить область действия переменной. Вы не можете просто определить, глядя на исходный код функции, является ли переменная локальной для этой функции.
Оптимизировать время загрузки страницы
Почему важна оптимизация страницы? Требуется ли оптимизация вашего сайта, как это сделать и устранить потенциальные проблемы? Почему оптимизация важна? Время загрузки сайта является одним из наиболее важных элементов пользовательского опыта, а также одним из факторов, когда речь заходит о SEO. В настоящее время у пользователей нет терпения ждать долгой загрузки страницы. Более 40% пользователей покидают сайт, если он загружается 3 секунды или более (
Правописание: правильно написать дату и время
... нет? Вы должны установить ноль перед однозначными числами? В письмах, приглашениях или в часы работы - неопределенность велика. Если вы чувствуете то же самое, я могу вас утешить: это не из-за вашей неспособности, а из-за множества сосуществующих написаний, некоторые из которых неправильны, но многие одинаково действительны. Duden, DIN, разбросаны правила Две вещи добавляют к этому. С одной стороны, соответствующие правила в Duden не показаны в комплекте. Таким
Как начать работать с Linux: руководство для начинающих
Мир Linux готов приветствовать вас, предлагая бесплатное программное обеспечение с открытым исходным кодом, которое вы можете использовать на любом ПК: сотни активных дистрибутивов Linux и десятки различных настольных сред, которые вы можете использовать на них. Это далеко от единого подхода «все подходит для всех» с Windows. Однако все, от установки программного обеспечения до драйверов оборудования, работает в Linux по-разному, что может быть пугающим. Мужайтесь - вам даже не нужно
Импорт сообщений Gmail в Google Keep в виде заметок
Несколько недель назад мой друг попросил меня импортировать его заметки Apple в Google Keep. Кажется, что на сегодняшний день не существует простого и простого способа, поэтому я решил, что это прекрасная возможность сделать свое первое расширение для Chrome и создать моего собственного импортера. Это оказалось немного сложнее, чем я ожидал, поэтому плагин уже не существует. Причина в том, что Google на данный момент не предоставляет разработчикам открытый API для импорта сообщений, что
Термит: простой терминал RS232
... время поддерживаются клавиши с F1 по F12). ZIP-файл содержит скомпилированный фильтр, а также закомментированный исходный код. Фильтр «Автоматический ответ», включая исходный код (48 КиБ) Этот подключаемый фильтр проверяет входящий текст или данные на наличие ключевых слов или шаблонов. Когда он обнаруживает такой шаблон, он автоматически передает определенный пользователем ответ. «Шаблон», используемый для
Что такое 8К? Стоит ли покупать новый телевизор или ждать?
Суммирование, агрегирование и группировка данных в Python Pandas
... нет особых требований. Полный спектр базовая статистика которые быстро рассчитываются и встроены в базовый пакет Pandas: Функция Описание count Количество ненулевых наблюдений сумма Сумма средних значений Среднее значение безумных Среднее абсолютное отклонение медиана Средняя арифметическая значений минимум мин Минимальный максимум Максимальный режим Режим abs Абсолютное значение prod Продукт значений std Несмещенное
Трой Хант: Я только что запустил «Pwned Passwords» V2 с полмиллиардом паролей для скачивания
... функции SQL Server (Я обработал исходные данные в локальном экземпляре RDBMS). В отличие от оригинальной версии, здесь нет ограничения скорости. Это была конструкция, которая мне была нужна в первую очередь для защиты личных данных при поиске взломанной учетной записи (т. Е. При поиске вашего адреса электронной почты среди взломов данных), но я также расширил его до Pwned Passwords, чтобы помочь защитить инфраструктуру. Теперь, когда я работаю с бессерверными функциями Azure,

Комментарии

Разве там не только 3 шага?
Разве там не только 3 шага? Это на самом деле не шаг, но это нужно упомянуть. Примерно через 5-7 дней практики вернитесь и повторите шаги 1 - 3. например. (Пройдите новый тренировочный тест TOEFL, проанализируйте результаты и оттачивайте навыки, необходимые для улучшения. Делайте это до тех пор, пока ваш результат не превысит целевой показатель TOEFL.) Почему прохождение теста TOEFL так важно для достижения ваших целей. Так почему так важно сдавать
Или вы бьете себя как кушетка между кухней, гостиной и ванной в течение всей жизни?
Или вы бьете себя как кушетка между кухней, гостиной и ванной в течение всей жизни? Статьи по теме: Google Maps объединяет профили высоты для велосипедистов Новое приложение Google Maps с автономными картами
Увидим ли мы различия в рейтинге по сравнению с прошлым месяцем?
Увидим ли мы различия в рейтинге по сравнению с прошлым месяцем? Проверьте, сможете ли вы увидеть первые тенденции, которые будут доминировать на рынке беспроводных сетей в Польше в 2018 году. Первое изменение, о котором стоит упомянуть, это количество выполненных измерений. Мы подготовили февральский отчет на основе 22907 измерений . Таким образом, пользователи RFBenchmark сделали на 1301 больше измерений по сравнению с январем. Пользователи RFBenchmark
Я понимаю, что домашний попкорн ушел в прошлое, и его место заменило то, что сделано в микроволновке, но зачем есть химию, если вы можете приготовить все самостоятельно с нуля за короткое время?
Я понимаю, что домашний попкорн ушел в прошлое, и его место заменило то, что сделано в микроволновке, но зачем есть химию, если вы можете приготовить все самостоятельно с нуля за короткое время? Как приготовить попкорн? Нам нужно: Нагрейте в большой кастрюле с маслом - налейте его достаточно, чтобы покрыть дно примерно на 5 мм. Когда масло начнет гореть, вылейте его на дно горшочка с кукурузой, чтобы оно покрыло все дно. Накройте кастрюлю
Какой штрих заменяет слово «до», и в штрихе есть пробел или нет?
Какой штрих заменяет слово «до», и в штрихе есть пробел или нет? Вы должны установить ноль перед однозначными числами? В письмах, приглашениях или в часы работы - неопределенность велика. Если вы чувствуете то же самое, я могу вас утешить: это не из-за вашей неспособности, а из-за множества сосуществующих написаний, некоторые из которых неправильны, но многие одинаково действительны. Duden, DIN, разбросаны правила Две вещи добавляют к этому. С одной стороны, соответствующие
Почему нет?
Почему нет? Компания Instadruk решила сделать хороший подарок Macademian Girl и прислать ей самые интересные фотографии из ее Instagrama в виде распечатки. Фотографии в форме памятки оказались хитом, потому что благодаря присутствию влиятельного автора в блоге они помогли продвинуть бренд. Более того, после рекламной кампании появился красивый, красочный сувенир!
И - почему нет?
Почему нет? Компания Instadruk решила сделать хороший подарок Macademian Girl и прислать ей самые интересные фотографии из ее Instagrama в виде распечатки. Фотографии в форме памятки оказались хитом, потому что благодаря присутствию влиятельного автора в блоге они помогли продвинуть бренд. Более того, после рекламной кампании появился красивый, красочный сувенир!

Нашли что-то еще?
Что нужно знать перед съемкой ночной фотографии?
Требуется ли оптимизация вашего сайта, как это сделать и устранить потенциальные проблемы?
Почему оптимизация важна?
Нет?
Вы должны установить ноль перед однозначными числами?
Стоит ли покупать новый телевизор или ждать?
Разве там не только 3 шага?
Или вы бьете себя как кушетка между кухней, гостиной и ванной в течение всей жизни?
Увидим ли мы различия в рейтинге по сравнению с прошлым месяцем?

Добро пожаловать , Гость !

Мы настоятельно рекомендуем Вам зарегистрироваться, если вы ещё этого не сделали. регистрация откроет Вам новые функции.

Войти или Зарегистрироваться

www.silvio-berluskoni.ru © Все права защищены © 2016.