Поиск по этому блогу

31 окт. 2016 г.

Библиотека кнопки для Arduino



Всем привет!

Делаем не большой проект на Arduino и пришлось написать собственную библиотеку для работы с кнопкой.

Казалось бы - такая банальщина! Масса примеров в нете для работы с кнопкой, а вот именно того функционала, что нужен нам не нашел ни в одном из них. В итоге пришлось сесть и написать собственную библиотеку для кнопки. Библиотека умеет гасить дребезг контактов, при чем без задержки основной программы (т.е. без использования delay и подобных функций), считает количество нажатий, так же имеется триггер и импульсный флажок (для каждой итерации цикла) на нажатие и отпускание кнопки. При создании экземпляра кнопки указывается пин к которому подключена кнопка, способ подключения кнопки (нормально замкнутая/разомкнутая), время задержки для гашения дребезга.

Подавляем дребезг кнопки с библиотекой Arduino Bounce


Дребезг контактов - крайне неприятная вещь, от которой нужно избавляться. Можно это делать софтверно. К счастью, нам не придется самостоятельно ручками писать алгоритм в Arduino IDE, поскольку для нас разработчики уже написали библиотеку. Знакомимся с Bounce.

Дребезг

Когда мы нажимаем на кнопку, мы ожидаем от нее, что она нам что-то включит, и это будет радостно работать. То есть сигнал будет вести себя так:



Но все далеко не так радужно. Из-за дребезга при нажатии кнопки сигнал ведет себя вот так:


22 окт. 2016 г.

ASCII таблица

ASCII — American Standard Code for Information Interchange.


ASCII была разработана (1963 год) для кодирования символов, коды которых помещались в 7 бит (128 символов). Со временем кодировка была расширена до 8-ми бит (256 символов), коды первых 128-и символов не изменились.

NRF24L01 - Arduino

Подключение к ардуине

14 февр. 2016 г.

Превращаем аналоговые входы Arduino в цифровые

Кому-то может не хватить тринадцати цифровых входов Arduino, и для таких людей сегодня я расскажу, как превратить шесть аналоговых входов в цифровые. Нам опять потребуется немного низкоуровневой магии, но пусть вас это не пугает.

PORTC

Пока АЦП не работает, доступны другие функции ног процессора, занятых под преобразование. 


Восстанавливаем bootloader у Arduino Pro mini

Бывает так, что вы сломали bootloader у своей Arduino. Например, перезаписали его своей программой или просто попортили. При попытке залить в плату новую программу через USB-converter, аплоад зависает и вылезает вот такая ошибка:
avrdude: stk500_recv(): programmer is not responding
Не стоит выкидывать Arduino, сейчас мы разберемся, как это поправить.

Программируем Arduino Pro mini через USBasp

В прошлый раз мы разобрались, как программировать Arduino Pro mini через USB conveter, а сегодня воспользуемся другой, более универсальной штукой - программатором USBasp. USBasp стоит намного дешевле и позволяет программировать вообще все AVR микроконтроллеры, а не только Arduino. В общем, полезная в хозяйстве вещь.


Нам сильно повезло. До выхода Arduino IDE 1.0 для работы с внешними программаторами приходилось лезть в папку Arduino и ручками править файл boards.txt, подглядывая в programmers.txt. Теперь все изменилось в сторону ничегонеделания.

13 февр. 2016 г.

Мод USB-COM переходника, который сэкономит вам нервы при прошивке Arduino Pro Mini и не только



Зачастую с первого раза не всегда получается, и приходится вылавливать тот момент- между компилированием и загрузкой.
Так давайте Мы это исправим.
Кокой бы ни был у вас переходник, IDE при прошивке всегда посылает сигнал сброса. Вопрос в том есть ли вывод у нас на переходнике.
Существуют разные переходники: