1

(9 ответов, оставленных в Технические вопросы)

Весело у Вас тут :)
2 Сергей & Илья:

  • Висящие в воздухе ноги действительно у оригинальной Nano имеются (по крайней мере на схеме).

  • Стабилизатор на 9 В у кардуинщиков я думаю не в схеме заложен был, а при монтаже китайцы перепутали, или кто там другой у них такой секретный производитель, что никому они его не называют, а сами не признаются [где-то там у них я на форуме пытался выяснить - без толку] :)

  • Ребята они там веселые в хорошем смысле слова. Даже название улыбнуло - на плате написано cArduino (именно с маленькой буквы), что всколыхнуло в памяти образы кроссовок Reebuk, Abibas и телевизоров PanasoniG, покупаемых на барахолке в начале-середине 90-х

  • Обе версии платы появлялись в хронологическом порядке сначала на neotoy.ru, там ребята еще веселее, опять таки в хорошем смысле слова ;). Чего стоят только упоминаемые там "конденцаторы", "спащий режим" и "Напряжение нагрузки в 40 мА"

  • В руки кАрдуина мне не попадалась, но из фото я только одного не понял - зачем заменили оригинальный 500мА стабилизатор с теплоотводящим контактом UA78M05 на стабилизатор в заведомо хуже отводящем тепло корпусе SOT-8, подозрительно похожий по распиновке на обычный L78L05 с током всего 100мА?

А вообще, по моему пониманию, я близок к высказанной Сергеем в первом посте мысли, что не столь велика разница между всеми вариациями вокруг Arduino, как кому-то может показаться.
Даешь больше интересных задумок, реализованных хоть на ардуине на куске картона! :)

2

(6 ответов, оставленных в Технические вопросы)

Admin пишет:

Несмотря на то, что сложится это при компиляции в память программ, чтобы работать с этими данными их нужно будет перекинуть в ОЗУ. ОЗУ у нас 1024 байта.

...skipped...

Путь к нормальному решению проблемы - хранить один столбец символа не в 10 байтах, а в 2х (используя каждый бит),
либо перейти на 8-строковые знаки - тогда хватит 1 байта.

Интересно, а никаких warning'ов при этом не выдается? Может GCC надо какие-то ключи передавать? Он же по идее мог сообразить, что памяти не хватит, и нам ругнуться?

...когда-то давно я на PIC'ах мелкие задачки решал - там был такой метод - таблицы данных прямо в секции кода. И хитрым образом к этой таблице можно было обратиться.
А то даже если сделать знакогенератор 8x8 пикселей (по 8 байт на символ), 26 англ. мелких букв, 26 заглавных, 10 чисел, еще пару всяких знаков, то выйдет 8*(26+26+10+2) = 512 байт - как раз половина ОЗУ. Много. А под код у нас 16к - куча места. У AVR такой метод тоже должен быть наверняка. Надо пошукать по докам.

3

(4 ответов, оставленных в Технические вопросы)

realist пишет:

Я программирую на c#, переходить на более низкий уровень пока не хочется,
...skipped...
Напрашивается разделение(string.Split(" ")) входящей строки на команду и аргументы,

Все-таки у нас микроконтроллер, и работать в стиле C# не всегда получится. Немного пониже опуститься придется, а то Вам может скоро 2Гб виртуальной памяти захочется :)
Всякими разборами, на мой взгляд, лучше всего заниматься с помощью конечных автоматов.
Универсальных решений не посоветую - обычно под конкретную задачу на месте парсер и пишу.
Вот здесь: http://habrahabr.ru/blogs/arduino/55401/ у меня есть пример библиотеки для Arduino  - в ней как раз сделан ввод чисел с последовательного порта.

realist пишет:

Программка совсем простая, но как на языке Arduino работать со строками не ясно.

А зачем делать сложный протокол? Ну, с переменной длиной команд?
Пусть посылается первые к примеру 4 символа - код команды, пусть даже буквами, а потом еще сколько-то символов - значение.
И не надо со строками заморачиваться - сами байты и сравнивай.

...пока писал вспомнил - я по весне делал немного похожую штуку - там правда ответа от Arduino не требовалось. Глянь если интересно: http://arduino-ru.blogspot.com/2009/02/arduino.html. Исходники прилагаются.

...и еще вспомнил - на офф. сайте видел библиотеку под твои требования сильно похожую. Вот: http://www.arduino.cc/playground/Code/Messenger. Как раз она читает строку (до CRLF) и потом вроде даже парсит ее (пробел - разделитель), если я верно из описания понял.

4

(6 ответов, оставленных в Технические вопросы)

Dmitry пишет:

Добрый день! А как обстоит ситуация с датчиками и исполнительными устройствами (управление AC 220, диммирование) ? Есть ли готовые блоки или схемы?

Я собирал управление 220В на симисторах BT136 и опторазвяке MOC3061.
Подробно одисано у меня на блоге: тут описание, тут демонстрация
Еще можно купить так называемое твердотельное реле - это то же самое (симистор+опторазвязка) в одном корпусе.
Вот например Sharp S202T02 подойдет.
Насчет регулирования напряжения я пока не думал - можно попробовать синхронизироваться по переходу через 0, и с некоторой паузой открывать тот же самый симистор (не факт, что получится - там у него внутри какая-то своя схема ловли перехода через 0 стоит). ...еще можно выпрямлять, и делать ШИМ.