Архив рубрики: Программирование

Как устроена библиотека Servo (Управляем севомашинкой. Часть 2)

В первой части коротко рассмотрели принципы работы аналоговой сервомашинки.sg90_1

В скетче использовалась библиотека Servo, входящая в состав Arduino IDE. Чрезвычайно любопытно: а что там внутри?.. Читать далее Как устроена библиотека Servo (Управляем севомашинкой. Часть 2) →

Реанимация Digispark

Как-то «играясь» с «чудом польской мысли в китайском воплощении», при очередном подключении Digispark-а к компьютеру,dgsp1 получил завораживающее сообщение:t85_notusb

Все попытки исправить ситуацию подстановкой различных драверов Digispark… не увенчались успехом. Невольно подумалось: «Вот мы и получили очередной кирпич» Читать далее Реанимация Digispark →

ИК-передатчик из Arduino

В предыдущей статье про ИК канал обмена данными был рассмотрен приемник. Это наиболее востребованная задача, т.к. излучателем являются, как правило, пульты ДУ от различной бытовой радиоаппаратуры. Вместе с тем интересно посмотреть как в библиотеке IRremote реализована передача сигнала. Читать далее ИК-передатчик из Arduino →

Процедура tone() — что там внутри…

В статье про формирование звука с помощью Arduino было отмечено удобство использования функции tone() для генерации сигнала. Интересно было покопаться в библиотеке Brett Hagman — каким образом реализована эта функция? Читать далее Процедура tone() — что там внутри… →

Что происходит после нажатия кнопки «Загрузить»

Вроде бы ничего экстраордиинарного после тыкания в кнопку не происходит… Все знают, что будет идти компиляция текста скетча и полученный исполняемый код загрузится в подключенную к компьютеру плату Arduino. Но, все-таки, интересно, а какие внутренние процессы совершаются в Arduino IDE…ld_1 Читать далее Что происходит после нажатия кнопки «Загрузить» →

Как работает процедура analogWrite()

В статье про работу таймеров в Arduino было отмечено, что все три (имеем ввиду микроконтроллер ATmega328) таймера принимают участие в формировании «аналогового» сигнала на некоторых выходах платы Arduino. На самом деле, конечно, никакого аналогового сигнала не формируется, некоторые пины выводят ШИМ сигнал, который, при желании, с помощью интегрирующей цепочки можно преобразовать в «нормальный аналоговый уровень». Пример ШИМ и его «аналогового аналога»:acp_2

Разберем работу процедуры формирования ШИМ импульсов в платформе Arduino Читать далее Как работает процедура analogWrite() →