01.03.2021

LiquidCrystalRus - небольшое обновление

Недавно в проект LiquidCrystalRus на GitHub пришло issue по поводу того, что функция print при попытке выводить некоторые неалфавитно-цифровые символы из знакогенератора дисплеев на основе HD44780U, несправедливо их калечит. И я решил скорректировать алгоритм трансляции - чтобы он применялся строго к символам русского алфавита. Чуть больше кода из-за проверок, но зато можно так:

lcd.print("Дисковод 5\xf0");

На экране мы увидим:  Дисковод 5¼

Плюс добавил пример DumpCharacters, выводящий построчно весь знакогенератор дисплея, что снимает вопросы по поводу того, есть ли там кириллица в принципе. 

Надеюсь, кому-то пригодится )

30.03.2015

LiquidCrystalRus для 1.6.1

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

В частности, перестала компилироваться библиотека поддержки вывода русского языка LiquidCrystalRus, из-за неверного (с точки зрения gcc) использования директивы PROGMEM, о чем ко мне посыпались сообщения от уважаемых пользователей (за что им хочу выразить особую благодарность).

Изменения там совсем крошечные, но если после установки новой ArduinoIDE ваш проект с LiquidCrystalRus в составе перестал компилироваться, не паникуйте, а скачайте и установите LiquidCrystalRus-1.6.0.zip.

Напоминаю, что проект также доступен на GitHub: https://github.com/mk90/LiquidCrystalRus.

UPDATE: подобно оригинальному LiquidCrystal, LiquidCrystalRus не умеет работать с дисплеями, подключенными как-то иначе, чем к пинам Arduino (например, по I2C), но зато и не требует для работы дополнительных библиотек: и в результате поддержка русского языка обходится дополнительно в 500 байт flash и 7 байт SRAM. 

09.05.2014

Книжная полка

Недавно издательство БХВ порадовало нас книгой Виктора Петина "Проекты с использованием контроллера Arduino"



К сожалению, полноценной рецензии выдать не могу, доступно только оглавление:
  • краткий обзор плат Arduino;
  • описание всех операторов языка Wiring;
  • описание встроенной библиотеки Serial;
  • описание встроенной библиотеки LiquidCrystal и даже пара слов про LiquidCrystalRus;
  • описание встроенных библиотек EEPROM, Ethernet, OneWire, SD, Stepper;
  • разбор подключения мыши и клавиатуры PS/2 - библиотека ps2dev;
  • работа с датчиками iButton, DS18B20, DHT11 и DHT12;
  • подключение к светодиодным матрицам;
  • примеры стыковки с RFID-приемниками, купюроприемниками, датчиками расстояния HC-SR04;
  • освещается вопрос обмена данными с помощью ИК, в том числе различные типы кодирования;
  • работа с ходовой частью робота через микросхему L293D;
  • использование приемопередатчика Bluetooth HC-05, а также NRF24L01 с помощью библиотеки Mirf;
  • вывод на экран телевизора с помощью библиотеки TVOut, с примерами игровых программ;
  • работа с USB через USB Host Shield;
  • немного про ROS (распределенная операционная система для роботов) и X10 (умный дом).
Приятно, что книги про Arduino на русском все-таки выходят - даже оглавление само по себе указывает путь к практическим решениям. Я специально сопроводил его ссылками на соответствующие статьи (в первую очередь на русском языке).

Будет ли достаточно этой книги именно для вашего проекта? Лично я ожидал хоть что-то про использование Arduino Due и Leonardo (они упоминаются в обзоре), изменение прошивок ATmega16u2 (на последних Uno и Mega), про использование программатора - в реальности рано или поздно этот вопрос возникает (хотя на тему программирования ATMEL недостатка в литературе нет, например книга Ревича). Стоило бы посвятить больше места шилд-платам.... Хотя, стоп! Надо сказать автору "большое спасибо" уже за это издание (лучшее "спасибо" - это легально купленный экземпляр книги, особенно если хотите продолжения ;).

Если кто-то прочел и хочет оставить отзыв - милости прошу в комменты, расскажите ;) Еще лучше, если будет сравнение с предыдущей книгой Соммера.

А примеры из книги можно скачать здесь.

30.04.2014

Raspberry PI. С чего начать?

Феномен Raspberry Pi трудно отрицать. Тем круче было мое удивление, когда коллеги проявили о нем практически нулевую осведомленность. На мой невинный вопрос "а не пора ли открывать ветку совместимости с Debian 7, а то на ней даже Raspberry Pi бегает" получил в ответ "а что это за разберри такой?".


Честно говоря, стало немного досадно. Я бегло просмотрел поисковый вывод и понял, что сейчас материалов на русском по Raspberry Pi на порядок меньше, чем про тот же Arduino. Традиционно, впереди всех выступает LinuxFormat, подписка платная (доступна и электронная версия, но все равно - она стоит денег), материалы выкладываются у них на wiki, с задержкой на один год.

И тогда я подумал, что стоит сделать пару статей - тем более, что последнее время мне крайне интересна связка Arduino+RaspberryPi.

30.03.2014

А все-таки она вертится!

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