Программка для управления роботом через UART
Всем привет.
Давным-давно, года три назад, я прочитал серию статей на хабре «Строим гусеничного Bluetooth-робота с камерой». Мне тут же захотелось сделать похожую дистанционно управляемую тележку на гусеницах, буду далее называть ее робот, так короче и моднее =) В топике речь пойдет о написанной мной программе для управления подобными роботами с клавиатуры, надеюсь она пригодится кому-то еще.
Читать дальше
Давным-давно, года три назад, я прочитал серию статей на хабре «Строим гусеничного Bluetooth-робота с камерой». Мне тут же захотелось сделать похожую дистанционно управляемую тележку на гусеницах, буду далее называть ее робот, так короче и моднее =) В топике речь пойдет о написанной мной программе для управления подобными роботами с клавиатуры, надеюсь она пригодится кому-то еще.
Читать дальше
Марсоход2 + Matlab/Simulink

Читать дальше
Управление сервомашинкой из Cubieboard2

Читать дальше
Hello World для ядра Linux на Cubieboard2

Тематика ресурса обуславивает необходимость попытаться применить имеющийся одноплатник как очень жирный микроконтроллер, на котором можно реализовать кучу всего интересного. В сторону подобного применения движение тоже есть, тот же RaspberyPI в SO-DIMM.
Но у обычного RaspberryPI
Читать дальше
Подключаем 4 АЦП к Cubieboard по SPI
Как уже говорилось, модуль ядра — лучший путь для подключения специфического оборудования и использования его в собственном ПО. Продолжая тему программирования модулей ядра, сегодня решим уже реальную задачу: научимся инициализировать регистры ввода-вывода, использовать их и создадим интерфейс модуля.
Читать дальше
Читать дальше
Какая частота для FreeRTOS оптимальна?

#define configTICK_RATE_HZ ( ( TickType_t ) 1000 )
Это частота переключения между задачами.
Почему 1000? А почему не 10000 или 100? А если у меня STM32F4, настроенный на 168 MHz? Я могу выбрать другую, большую частоту? Ответы были какие-то туманные. Самый адекватный: «если будет слишком часто переключаться, то планировщик задач будет потреблять слишком много временного ресурса». Слишком много — это сколько? Решил разобраться. Под катом — ответ на вопрос «какая частота подходит для данной ситуации?».
UPD: существенное исправление: добавил количество потоков, изменились результаты!
Читать дальше
AVRASM: Диспетчер задач RTOS 2.0 (псевдо кооперативная ОС)
Отрефакторил код «Диспетчера задач RTOS» (псевдо кооперативной ОС), оптимизировал и универсализировал, добавил новые фичи, декларировал чёткое API, и опубликовал на GitHub… Фактически, весь код был переписан сызнова, по прототипу DI HALTа.

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

Читать дальше
AVRASM: Библиотека процедур для интеллектуальной обработки ВВОДА в МК: событий от Кнопок и Энкодеров (часть 2: порядок внедрения и использования)
Большинству микроконтроллерных устройств требуется поддерживать интерфейс с пользователем-человеком: для вывода используются светодиоды или дисплеи, а для ввода — обычно, традиционные Кнопки и Энкодеры.
Данная реализация «Библиотеки процедур для интеллектуальной обработки ВВОДА» написана на языке ассемблера, для компилятора AVRASM. Соответственно, она предназначена для разработки программных прошивок (firmware) на языке ассемблер, для микроконтроллеров Atmel AVR (8-bit).
Читать дальше
Данная реализация «Библиотеки процедур для интеллектуальной обработки ВВОДА» написана на языке ассемблера, для компилятора AVRASM. Соответственно, она предназначена для разработки программных прошивок (firmware) на языке ассемблер, для микроконтроллеров Atmel AVR (8-bit).
Читать дальше
- 0
- 12 декабря 2013, 03:14
- Celeron
- Оставить комментарий
AVRASM: Библиотека процедур для интеллектуальной обработки ВВОДА в МК: событий от Кнопок и Энкодеров (часть 1: авторская методика и реализация)
Микроконтроллерное устройство может работать исключительно в автономном режиме: получать сигналы с датчиков, и выдавать управляющие импульсы, иногда оно ещё взаимодействует с ЭВМ или другими микроконтроллерами… Но большинству микроконтроллерных устройств требуется поддерживать интерфейс с пользователем-человеком: для вывода используются светодиоды или дисплеи, а для ввода — традиционные Кнопки и Энкодеры, редко используются и другие экзотические устройства ввода…
В данной работе будут рассматриваться только традиционные инструменты ввода: «цифровые Кнопки / Клавиатуры» и «инкрементальные Энкодеры», поскольку именно они используются почти всегда.
Содержание:
Читать дальше
В данной работе будут рассматриваться только традиционные инструменты ввода: «цифровые Кнопки / Клавиатуры» и «инкрементальные Энкодеры», поскольку именно они используются почти всегда.
Содержание:
- Назначение
- Особенности
- Код и Зависимости
- Как это работает?
- Порядок внедрения библиотеки
- Методика проектирования прикладного кода (обработчики событий)
Читать дальше
- 0
- 07 декабря 2013, 17:07
- Celeron
- Оставить комментарий
AVRASM: Библиотека базовых Макроопределений "MACROBASELIB.INC"
Библиотека «базовых Макроопределений», расширяющая стандартный набор ассемблерных инструкций микроконтроллеров Atmel AVR (8-bit AVR Instruction Set), и рекомендующая парадигму программирования: с хранением «модели прикладных данных» в ОЗУ и использованием нескольких «временных регистров»…
Читать дальше
Читать дальше