Итак, нам понадобятся:
среда программирования Scratch версии не ниже 1.3 (мы возьмем 1.4.0), плата Arduino (подойдет любая совместимая; у нас была Arduino Duemilanove), светодиоды трех цветов, кнопка, резисторы на 1 кОм (есть в любом магазине радиотоваров) и провода.
Не помешают макетная плата или паяльник, хотя можно собрать все, просто скрутив детали (конечно, это не так красиво и надежно). Все будет описано для дистрибутивов Linux.
Мы не станем заниматься «настоящим» программированием – взамен, будем управлять платой Arduino напрямую из Scratch, не загружая в нее скетчи. И в этом нам поможет проект Catenary (http://scratchconnections.wik.is/User:Chalkmarrow/Catenary). Распакуйте архив с программой в вашу домашнюю директорию и действуйте по приведенной инструкции.
После всех настроек наконец, появится окно, изображенное выше. Первый слева голубой квадрат – цифровой контакт 2, последний – 13. Серыми квадратиками обозначены аналоговые контакты 0–5 (в нумерации Scratch – 14–19).
Теперь вернитесь к Scratch и попробуйте запустить проект. Если все пойдет нормально, вы увидите мигающий светодиод.
Разберем, как устроена программа. Второй персонаж (Catenary) нужен для обеспечения работы переменных, и трогать его не нужно. Программа пишется в спрайте «кота». Все передаваемые команды начинаются с ^. Сперва идут блоки инициализации платы – задания порта (^arduinoPort) и сброса состояния (^reset).
Далее мы переключаем цифровой контакт 13 на вывод (^pinMode 13 output).
После этого начинаем мигать светодиодом, переводя состояние цифрового канала из выключенного (low) в включенное (high).
Ниже приведена модификация программы, передающая азбукой Морзе сигнал SOS (три коротких, три длинных, три коротких). Чтобы добавить новый текст в блок Передать, щелкните на стрелочке сбоку, выберите Новый, и введите нужный текст.
Скорая помощь
После нажатия кнопки сброса на плате и других подобных действий нужно действовать по алгоритму:
Материал взят из раздела "Школа Linux Format" №132
© 2006-2011 «ТЫРНЕТ» — Детский Интернет» — некоммерческий проект ЗАО «ТЫРНЕТ».
Использование любых материалов сайта разрешено при условии наличия ссылки на сайт tirnets.ru.