CraftDuino v2.0
  • - это CraftDuino - наш вариант полностью Arduino-совместимой платы.
  • CraftDuino - настоящий конструктор, для очень быстрого прототипирования и реализации идей.
  • Любая возможность автоматизировать что-то с лёгкостью реализуется с CraftDuino!
Просто добавьте CraftDuino!
  
 

Переходим от Arduino к программированию ATtiny13 на C

ATtiny13
Программирование Arduino даёт не только огромный простор для фантазии и возможностей, но, как и любой фреймворк, одновременно навязывает свой стиль и ограничивает возможности.
Поэтому, если чувствуется, что Arduino становится тесноват — можно не только перейти на 32-битные контроллеры (например, STM32), но и попробовать более низкоуровневое программирование контроллеров.

Уходя ближе «к железу» — программировать придётся на более близком к железу уровне — и если это не ассемблер, то уж язык программирования Си — точно.
Пример подобного программирования уже приводился в статье Arduino/CraftDuino и WinAVR — программируем на чистом С.
У такого стандартного программирования микроконтроллеров есть существенное преимущество перед использованием Arduino-вских скетчей.
Однако, за низкоуровневый полный контроль и возможность использовать все ресурсы микроконтроллера, приходится расплачиваться долгим и внимательным изучением документации (datasheet-а) на микроконтроллер.
Т.е., если у вас ещё не было опыта работы с конкретным микроконтроллером — то вместо быстренького набрасывания скетча для решения своей задачи — вам придётся потратить дополнительное время на изучение мат. части.

Разумеется, не всегда это может быть оправдано и если задачу нужно и можно быстро решить при помощи Arduino — то почему бы и нет?
Однако, если решение задачи на Arduino невозможно, то придётся потратить время на получение ценных опыта и знаний, которые помогут открыть все возможности, которые под силу микроконтроллеру.

Для примера, возьмём меленький, простой и дешёвый контроллер ATtiny13.

( Читать дальше )

Класс-родитель для устройств на базе SPI, или веселый и удобный C++ для AVR

Мне всегда нравилась идея объектно-ориентированного программирования. Это очень удобно и легко, особенно, когда программа раздувается до больших размеров, или есть несколько очень похожих элементов, но с разными настройками. И меня всегда интересовали нестандартные, красивые решения и новинки языка — шаблоны, лямбда-функции, тернарные операторы… К сожалению, я все никак не мог к ним подобраться — то времени не было, то мозг был не готов. В общих чертах знал, что это, но сам никогда не пробовал. Но вдруг в одной из программ для AVR я увидел интересное использование шаблона, которое очень сильно облегчало работу. Мне стало интересно — и время нашлось, и желание… И вот родилась идея этой статьи. Результат — родительский класс для легкой работы с устройствами на базе SPI (сдвиговые регистры, трансиверы, Ethernet etc), в Hardware и Software реализации. Интересно — просьба под кат.

tl;dr — в конце все ссылки из статьи, в том числе готовый код и примеры.

WARNING 1: под катом много букв и о ужас ни одной картинки, а также огромная куча низкокачественного лапшеобразного замечательного кода.
WARNING 2: автор не крут в шаблонах, поэтому извиняется, если что-то реализовано ужасно.
WARNING 3: пока что — только Master, Slave-версия будет через год некоторое время.
WARNING 4: автор обожает варнинги и тег s неправда!!


( Читать дальше )

Оборудование для опытов с техническим зрением - web-камера Logitech HD Webcam C270

Оборудование предоставлено компанией Farnell, за что ей (и лично Ryan Gibson) большое спасибо!


Итак, мне в руки попала камера Logitech HD Webcam C270


( Читать дальше )
  • +1
  • 12 января 2012, 19:51
  • noonv
  • 1

ROS - Урок 15 - Написание простого Сервиса и Клиента (C++)


Содержание

1. Написание простого Сервиса и Клиента (Service and Client) (C++)

Описание: Этот урок описывает, как создавать узлы сервиса и клиента (Service and Client) на C++.

( Читать дальше )

ROS - Урок 12 - Написание простого publisher и subscriber (C++)


Содержание

1. Написание простого publisher и subscriber (C++)

Описание: На этом уроке рассказывается, как написать узлы издателя(publisher) и подписчика(subscriber) на C++.

( Читать дальше )

Arduino/CraftDuino и WinAVR - программируем на чистом С

Здесь упоминалось, что Arduino/CraftDuino/Freeduino можно программировать не только на Wiring-е, но и на других языках программирования.
Попробуем разобраться как это можно сделать — написать программу на обычном С/C++.
Для этого воспользуемся компилятором WinAVR.
WinAVR — это интегрированная среда разработки; она включает мощные компиляторы Си и ассемблера, программатор AVRDUDE, отладчик, симулятор и множество других вспомогательных программ и утилит.

Скачать WinAVR можно на странице проекта:
http://sourceforge.net/projects/winavr/
однако, в комплекте Arduino IDE уже идёт WinAVR (\hardware\tools\avr\), поэтому можно воспользоваться им.

( Читать дальше )
  • +2
  • 28 ноября 2009, 14:10
  • admin
  • 23

Программа для управления портами Arduino/CraftDuino

Программа для управления портами Arduino

Здесь уже рассматривалось как на разных языках программирования можно общаться с Arduino через COM-порт и даже приводился пример, что можно выдавать в COM-порт абсолютно разные данные – например сигнал о появлении ключевого слова в RSS-потоке ;)
Теперь же напишем программу для управления портами ардуины.


( Читать дальше )
  • +2
  • 12 ноября 2009, 10:15
  • admin
  • 2

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

12. Cоздание своей библиотеки.

На примере библиотеки для работы с PS/2-устройствами можно оценить как здорово работать через библиотеку :)
Раз подключил и готово :)
Разумеется, нужно ещё разобраться что к чему, но главное – библиотека – это очень удобно :) Поэтому, давайте научимся создавать собственную библиотеку для ардуино :)


( Читать дальше )
  • +2
  • 26 октября 2009, 12:45
  • admin
  • 4

Практическое программирование Arduino/CraftDuino - общение с Arduino - программирование работы с COM-портом

0. Начало
1. Цифровой ввод — кнопка
2. Аналоговый вывод — Fading
3. Аналоговый ввод – потенциометр
4. Аналоговый ввод – осциллограф
5. Генерация звука – пьезоизлучатель.
6. Фоторезистор
7. Сенсор на светодиоде

8. Общение с Arduino — программирование работы с COM-портом.

Правильным местом с которого стоит начать своё изучение написание программ для взаимодействия с Arduino/CraftDuino является официальный сайт:
http://www.arduino.cc/playground/Main/InterfacingWithSoftware
— там приведены примеры работы с последовательным портом из разных языков и сред программирования.

( Читать дальше )
  • +1
  • 27 августа 2009, 12:55
  • admin
  • 2

Программирование Arduino - введение

Начнём небольшую серию статей про программирование плат Arduino.

Для программирования используется Arduino IDE, которую можно скачать на официальном сайте.
Текущая версия, как здесь уже писали — Arduino 0016. Есть версии для Windows (70 Mb), MacOS и Linux.
Рассмотрим версию для Windows — после скачивания архива его нужно распаковать.
Например, в
С:\utils\arduino-0016\

( Читать дальше )
  • 0
  • 30 июня 2009, 19:03
  • admin
  • 2