1 2 3 4 5 6 7 8 9 10 10/10 10,00оценок: 8

Arduino Mega. Контроллер теплицы. Хроники - 2

Тема в разделе "Теплицы и парники", создана пользователем DIYMan, 06.06.16.

Статус темы:
Закрыта.
  1. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Да, пожалуй стоит заказать у китайцев парочку Pro Mini на 8 МГц, а то действительно - плату планируем на 8 Мгц, а я под эту частоту ничего не тестировал.

    Пойду в корзину кину что-ль.
     
  2. evgeny1241
    Регистрация:
    07.07.16
    Сообщения:
    472
    Благодарности:
    46

    evgeny1241

    Живу здесь

    evgeny1241

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    472
    Благодарности:
    46
    Попробывал 2 шт ATmega168 3.3v 8mhz не регистрируются, на 16 без проблем ... засада однако
     
  3. evgeny1241
    Регистрация:
    07.07.16
    Сообщения:
    472
    Благодарности:
    46

    evgeny1241

    Живу здесь

    evgeny1241

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    472
    Благодарности:
    46
    Двумя проводам это сигнальный и земля
     
  4. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Тут кстати подумалось - уровни-то разные у плат. Не пробовали через конвертер уровней подключать?
     
  5. HANTER333
    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156

    HANTER333

    Живу здесь

    HANTER333

    Живу здесь

    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156
    А тайминги 1-Wire как организованы
     
  6. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Таймер + прерывания. Инициализация:

    Код:
    TIMSK1  |= (1<<TOIE1);
      TIFR1|=(1<<TOV1);
    
    Установка таймаута:
    Код:
    inline void TimerSetTimeout(uint8_t tmio)
    {
      TCNT1 = ~tmio;
    }
    Всякие настройки перед стартом:
    Код:
    #define GIMSK EIMSK
    #define GIFR EIFR
    inline void PreInit()
    {
    //Initializations of AVR
      CLKPR=(1<<CLKPCE);
      CLKPR=0;/*9.6Mhz*/
      TIMSK1=0;
      GIMSK=(1<<INT0);/*set direct GIMSK register*/
      TCCR1A = 0;
      TCCR1B = 0;
      TCCR1B = (1 << CS10) | (1 << CS11);
    }
    Может, здесь где собака окопалась? Честно сказать, я пока плаваю в низком уровне.
     
  7. HANTER333
    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156

    HANTER333

    Живу здесь

    HANTER333

    Живу здесь

    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156
    Так от частоты задающего генератора должны зависить?
     
  8. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Я чуть выше привёл код, поправил сообщение. Думаю, реально где-то прокосячил, т. к. код брался из открытых источников и правился под свои нужды. Буду рыть щас.
     
  9. evgeny1241
    Регистрация:
    07.07.16
    Сообщения:
    472
    Благодарности:
    46

    evgeny1241

    Живу здесь

    evgeny1241

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    472
    Благодарности:
    46
    Вот с кодом я пока не помощник ..увы
     
  10. YRA26
    Регистрация:
    09.01.16
    Сообщения:
    160
    Благодарности:
    71

    YRA26

    Живу здесь

    YRA26

    Живу здесь

    Регистрация:
    09.01.16
    Сообщения:
    160
    Благодарности:
    71
    @АлкН1, да както по молодости в ЗабВО на охоту первоначально так и ходили, на уку 5-ка, на зайчшку 5-6, на косулю (коза в прстонародии) картечь, но с годами пришли к выводу _ на все кроме утки- картечь. Даже Чипа и Дейла в голову картечью, он же, балбес, из-за ствола сосны только бошку и выставляет. Я для себя решил _ ProMIini бужу юзать. а до телевышки у меня 2-3 км по прямой.
     
  11. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    @HANTER333, просмотрел код, вроде блох не видно: таймер запускается асинхронно, с тактированием от кварца, предделитель устанавливается в 0, делитель таймера - в 64, один тик должен быть в 1/4 микросекунды.

    @evgeny1241, что за кварц стоит на плате?

    Надо собирать инфу и ковыряться, в чём дело. Видимо, что-то за чем-то не успевает, если дело, конечно, не в уровнях.
     
  12. evgeny1241
    Регистрация:
    07.07.16
    Сообщения:
    472
    Благодарности:
    46

    evgeny1241

    Живу здесь

    evgeny1241

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    472
    Благодарности:
    46
  13. HANTER333
    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156

    HANTER333

    Живу здесь

    HANTER333

    Живу здесь

    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156
    В программировании я практически 0, но evgeny1241 написал, что при 8мГц не регистрируется, а при 16, без проблем, Вы же частоту задающего делите?[/QUOTE]
     
  14. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Вот шляпа, кажется, начинаю понимать, в чём дело: таймер-то настраивается на частоту генератора, с делителем 64. На 16 МГц это даст один тик в 1/4 микросекунды. На 8 МГц - в 1/2 микросекунды, все тайминги бьются к чертям.

    Пойду рыть, как в зависимости от частоты в настройках платы в Arduino IDE подстроить таймер.
     
  15. evgeny1241
    Регистрация:
    07.07.16
    Сообщения:
    472
    Благодарности:
    46

    evgeny1241

    Живу здесь

    evgeny1241

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    472
    Благодарности:
    46
    С уровнями завтра посмотрю - все конвертеры на работе ...а городить огород не охота
     
Статус темы:
Закрыта.