Программирование

Вопросы по программированию Arduino.

Считывание данных с Arduino Mega в Delphi

Здравствуйте.

Возникла такая проблемка, не могу разобраться, как мне в Делфи считывать данные с Ардуинки.

Задача состоит в том, у меня на Ардуино собран датчик температуры на базе DS18b20, их 8 штук.

С них считывается температура и мне нужно в Делфи, закидывать эти значения в таблицу. Главное хотябы сделать с одним датчиком, с остальными разберусь как.

Последовательное выполнение команд.

Не понял, куда-то пропала тема. Спрошу еще раз.

Здравствуйте! Помогите разобраться. Есть набор кнопок и набор команд, которые контроллер выдает при нажатии соответствующей кнопки.

Не полностью работает прерывание

Захотелось к новому году сделать герлянду в офис. Имеется лед пиксели 50 шт на WS2801. Переключение режимов организавал через прерывание. Переключение происхоид с брелка и приемника. Проблема в следующем, запускается все хорошо, одно переключение проходит четко и на этом все, не какой реакции нет. Пробывал разные виды прерываний, не помогло. Ардуиной балуюсь не шибко много.

Пример кода

volatile int vol;

void setup() {

1 проводной интефейс для тиньки

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

с одного из свободных выводов отсылать инфу по 1 проводному интерфейсу. 1wire библиотека здесь не подойдет изза ограниченного размера флеша. отсылать инфу не проблема. например отправка 2 байт например значений с АЦП

Готовая библиотека программного ШИМ

Добрый день

Требуется реализация 9-канального ШИМ на ArduinoUNO. Частота дискретизация - какую потянет контроллер.

Нет ли готовой библиотеки для данной задачи?

 

digitalRead(), замена, работа через порт

добрый день

- Atmega328P
- на 3м порту (PD3/INT1) висит кнопка
- порт сконфигурирован на вход, подтяжка установлена
- дребезг контактов давится программно

попытался заменить ардуиновскую функцию digitalRead() на более низкоуровневую:

#define _L( BIT) ( _BV( BIT ) ) 
#define _R(PORT,BIT) ( PORT >> BIT ) 
#define PORTD_GET(BIT) ( _R ( ( PIND & _L(BIT) ) , (BIT) ) ) 
#define D03_GET (PORTD_GET (3))
#define PORT_GET_BTN ( D03_GET )

таьмер не работает как надо помогите

#define stop_timer1 TCCR1B=0
#define start_timer1 TCCR1B = (0<<CS12)|(1<<CS11)|(1<<CS10)  //частота/64  4mkc

volatile unsigned int periodspeed ;  // период
volatile boolean we_stend = true ;  //стоим
volatile boolean period_speed = false ;  // период загружен ??????


ISR(TIMER1_OVF_vect) //прерывание по таймеру1
{   
 stop_timer1;    //остановка таймера
 we_stend = true ; //импульсов небыло больше 1 сек установлен флаг стоим
}
void setup() 
{
  //TIM_Init();//инициализация таймера
  
  pinMode(11,OUTPUT);

Создание приложений под ардуино

Здравствуйте.
У меня такой вопрос: можно ли создать приложение под ардуино?
Дело в том что я строю принтер и хочу что бы было что то вроде:
Запускаешь его, открывается например голая консоль, вводишь текст, на основе этого строится код и заливается в ардуино.
Я примерно представляю как написать такое например в visual studio и из неё скопировать сгенерированый код в ардуино IDE, но это как то не очень изящно.
P.s. заранее благодарен

VirtualBreadboard 4.2.9

Запускал ликто-нибудь VirtualBreadboard 4.2.9 под виндовс 8? Скачивал программу по ссылкам из ветки http://arduino.ru/forum/obshchii/pomogite-s-virtualbreadboard Пробовал различные режимы совместимости со старыми версиями виндовс - все равно каждый раз вылезает одно и тоже окно с ошибкой. Если кто-то знает о бесплатных (крякнутых) версиях VBB пожалуйста напишите!