Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.02.2015, 19:05   #441
Arduino
Junior Member
 
Регистрация: 25.02.2015
Адрес: Санкт-Петербург
Сообщений: 5
Вес репутации: 0
Arduino is an unknown quantity at this point
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Цитата:
Сообщение от Bulatovor Посмотреть сообщение
TimerThree поддерживает 328-ые камни, в том числе и нано
Странно. Мне выдает подобные ошибки при компиляции:
PHP код:
'TCCR3A' was not declared in this scope
'TCCR3B' was not declared in this scope 
Судя по этой статье, в 328 камне поддерживаются Timer0, Timer1, Timer2

Последний раз редактировалось Arduino; 26.02.2015 в 19:31.
Arduino вне форума   Ответить с цитированием
Старый 26.02.2015, 19:35   #442
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Цитата:
Судя по этой статье, в 328 камне поддерживаются Timer0, Timer1, Timer2
Все верно, но что бы понять ошибку нужно Ваш код видеть
Admin вне форума   Ответить с цитированием
Старый 26.02.2015, 22:09   #443
Bulatovor
Senior Member
 
Регистрация: 20.01.2013
Адрес: Уфа
Сообщений: 444
Вес репутации: 799
Bulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond repute
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Судя по всему не поддерживает -у меня даже примеры не компилирует
Bulatovor вне форума   Ответить с цитированием
Старый 26.02.2015, 22:23   #444
Arduino
Junior Member
 
Регистрация: 25.02.2015
Адрес: Санкт-Петербург
Сообщений: 5
Вес репутации: 0
Arduino is an unknown quantity at this point
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Цитата:
Сообщение от Admin Посмотреть сообщение
Все верно, но что бы понять ошибку нужно Ваш код видеть
Цитата:
Сообщение от Bulatovor Посмотреть сообщение
Судя по всему не поддерживает -у меня даже примеры не компилирует
Да, стандартный пример не компилируется:
PHP код:
#include <TimerThree.h>

// This example uses the timer interrupt to blink an LED
// and also demonstrates how to share a variable between
// the interrupt and the main program.


const int led LED_BUILTIN;  // the pin with a LED

void setup(void)
{
  
pinMode(ledOUTPUT);
  
Timer3.initialize(150000);
  
Timer3.attachInterrupt(blinkLED); // blinkLED to run every 0.15 seconds
  
Serial.begin(9600);
}


// The interrupt will blink the LED, and keep
// track of how many times it has blinked.
int ledState LOW;
volatile unsigned long blinkCount 0// use volatile for shared variables

void blinkLED(void)
{
  if (
ledState == LOW) {
    
ledState HIGH;
    
blinkCount blinkCount 1;  // increase when LED turns on
  
} else {
    
ledState LOW;
  }
  
digitalWrite(ledledState);
}


// The main program will print the blink count
// to the Arduino Serial Monitor
void loop(void)
{
  
unsigned long blinkCopy;  // holds a copy of the blinkCount

  // to read a variable which the interrupt code writes, we
  // must temporarily disable interrupts, to be sure it will
  // not change while we are reading.  To minimize the time
  // with interrupts off, just quickly make a copy, and then
  // use the copy while allowing the interrupt to keep working.
  
noInterrupts();
  
blinkCopy blinkCount;
  
interrupts();

  
Serial.print("blinkCount = ");
  
Serial.println(blinkCopy);
  
delay(100);

Возможно есть библиотека для нулевого таймера, но его вроде не советуют использовать.
Arduino вне форума   Ответить с цитированием
Старый 22.03.2015, 18:13   #445
jjm.cp
Junior Member
 
Регистрация: 22.03.2015
Сообщений: 1
Вес репутации: 0
jjm.cp is an unknown quantity at this point
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Всем добра!
Уважаемый Admin, подскажите пожалуйста, возможно ли использовать диммер-модуль управляя им с компьютера с подключённой к нему Arduino, например используя Firmata? У меня Arduino megа 2560, тут вроде пишут, что с ней не работает, это грустно... Но можно и на UNO, если это вообще возможно.
В качестве управляющей программы использую vvvv, а оно работает через Firmata.
Есть ли шансы заставить диммер работать и, если есть, то как?
jjm.cp вне форума   Ответить с цитированием
Старый 22.03.2015, 18:56   #446
Bulatovor
Senior Member
 
Регистрация: 20.01.2013
Адрес: Уфа
Сообщений: 444
Вес репутации: 799
Bulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond repute
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Я не админ, но отвечу. На меге работает, просто Вы до сороковой страницы не дочитали. И через Firmata будет работать если скетч написать и превращать значения полученные с комппьюера в значение DIMMER

а чтоб конкретно помочь со скетчем -выложите текущий свой скетч меги с фирмдатой

Последний раз редактировалось Bulatovor; 22.03.2015 в 20:07.
Bulatovor вне форума   Ответить с цитированием
Старый 15.04.2015, 20:11   #447
AppleJAM
Junior Member
 
Регистрация: 11.09.2014
Сообщений: 8
Вес репутации: 0
AppleJAM is an unknown quantity at this point
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Доброго времени суток всем формучанам!

Наконец руки дошли до реализации проекта на данном устройстве. (С момента последнего поста прошло немногим более 3-4 дней ).

Итак:

Данный девайс на Меге РАБОТАЕТ, только с другими библиотеками.
Ниже скетч, яркость выбирается произвольно и меняется от старой к новой с задержкой, тем самым исключается мигание!!

PHP код:
#include <cyberpins.h> //быстрое управление пинами
#include <TimerOne.h> //использует Timer1
volatile uint8_t ticDimmer1

  
int DimRandom//Переменная для хранения произвольного значения Диммера
  
int DimRandomOld 0//Переменная для хранения предыдущнго значения Диммера

void setup() 
{
  
D4_Out//Настраиваем порт на выход Dimmer1
  
D4_LOW//установить на выходах низкий уровень сигнала
  
D2_In//настраиваем порт на вход для отслеживания прохождения сигнала через ноль  
   
  
attachInterrupt(0detect_upFALLING);  // настроить срабатывание прерывания int0 на pin 2 

  
Timer1.initialize(40);              // Интервал срабатывания таймера в мкс 
  
Timer1.attachInterrupt(halfcycle);   //будет вызыватся каждый раз при отсчете заданого времени
  
Timer1.stop();
  

  
}
//********************обработчики прерываний*******************************
void halfcycle()  //прерывания таймера

  
tic++;  //счетчик  
  
if(Dimmer1 tic D4_HIGH//управляем выходом
}

void  detect_up()  // обработка внешнего прерывания. Сработает по переднему фронту синусоиды
{  
 
tic=0;             //обнулить счетчик
 
Timer1.resume();   //запустить таймер
 
attachInterrupt(0detect_downRISING);  //перепрограммировать прерывание на другой обработчик
}  

void  detect_down()  // обработка внешнего прерывания. Сработает по заднему фронту синусоиды
{   
 
Timer1.stop(); //остановить таймер
 
D4_LOW;        //логический ноль на выходы
 
tic=0;       //обнулить счетчик
 
attachInterrupt(0detect_upFALLING); //перепрограммировать прерывание на другой обработчик

//*************************************************************************
void loop() 
{
 
DimRandom random(0200);
 if (
DimRandom DimRandomOld)
 {
  for (
int i DimRandomOldDimRandom+1i++)
  {
    
Dimmer1 i;
    
delay (10);
  }
 }
 if (
DimRandom DimRandomOld)
 {
  for (
int i DimRandomOldDimRandom-1i--)
  {
    
Dimmer1 i;
    
delay (10);
  }
 } 
 
DimRandomOld DimRandom;

AppleJAM вне форума   Ответить с цитированием
Старый 16.04.2015, 10:55   #448
Bulatovor
Senior Member
 
Регистрация: 20.01.2013
Адрес: Уфа
Сообщений: 444
Вес репутации: 799
Bulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond repute
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Цитата:
Данный девайс на Меге РАБОТАЕТ, только с другими библиотеками.
Ниже скетч, яркость выбирается произвольно и меняется от старой к новой с задержкой, тем самым исключается мигание!!
Данный скетч на меге работает или на 328?
Bulatovor вне форума   Ответить с цитированием
Старый 17.04.2015, 11:33   #449
AppleJAM
Junior Member
 
Регистрация: 11.09.2014
Сообщений: 8
Вес репутации: 0
AppleJAM is an unknown quantity at this point
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Добрый день!
На Меге, которая на ATMega 2560.
AppleJAM вне форума   Ответить с цитированием
Старый 26.04.2015, 13:52   #450
DAP
Junior Member
 
Регистрация: 26.04.2015
Сообщений: 8
Вес репутации: 0
DAP is an unknown quantity at this point
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Возможно ли использовать сдвиговый регистр для управления 8ю диммерами одновременно? Все диммеры на одной фазе.
DAP вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 38 (пользователей: 0 , гостей: 38)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 20:47. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика