Страница 8 из 8 ПерваяПервая ... 2345678
Показано с 71 по 73 из 73
  1. #71
    Продвинутый
    Регистрация
    15.12.2008
    Возраст
    38
    Сообщений
    229
    Вес репутации
    400

    По умолчанию Re: Прерывания в Arduino.

    1. unsigned int ledValue = 0; возможно глюк эмуляции, но знаковая переменная не может принять значение 60000.
    2. это можно сделать без отдельного таймера, воспользовавшись millis. вот пример. там как бы все расписано. delay(led1Value) по-моему вполне допустим - 60мс не так много.
    вот код. ставится в цикл.
    PHP код:
      unsigned long currentMillis millis();
      if(
    currentMillis previousMillis ledValue
      {
        
    previousMillis currentMillis;  
        
    digitalWrite(ledPinHIGH);
        
    delay(led1Value);
        
    digitalWrite(ledPinLOW);
      } 
    3. если хочется сделать через отдельный таймер, можно так. громоздко. да и таймер с периодом 1мс и так есть.
    PHP код:
    MsTimer2::set(1flash);
    void flash() 
    {
      if(
    digitalRead(ledPin)==HIGH)
      {
        
    time1++;
        if(
    time1>=led1Value)
        {
          
    digitalWrite(ledPin,LOW);
          
    time2=0;
        }
      }
      if(
    digitalRead(ledPin)==LOW)
      {
        
    time2++;
        if(
    time2>=ledValue)
        {
          
    digitalWrite(ledPin,HIGH);
          
    time1=0;
        }
      }

    оба варианта рабочие

  2. #72
    Новичок
    Регистрация
    18.06.2012
    Сообщений
    6
    Вес репутации
    155

    По умолчанию Re: Прерывания в Arduino.

    Цитата Сообщение от manu_245 Посмотреть сообщение
    оба варианта рабочие
    спасибо огромное ща попробую....
    upd...
    применил первый вариант всё отлично заработало, ещё раз огромное спасибо за подсказку...
    Последний раз редактировалось kapitan76; 05.08.2013 в 16:52.

  3. #73
    Новичок
    Регистрация
    26.09.2013
    Сообщений
    1
    Вес репутации
    0

    По умолчанию Re: Прерывания в Arduino.

    Всем привет. Я новичёк на этом форуме, поэтому тему создать не могу... мало сообщений. Поэтому вопрос: собственно у меня есть желание сделать автоматическую горелку на отработанном масле, для отопления бокса. Сам занимаюсь ремонтом авто... диагностика и тд. Есть атмега 2050, ЛСД- дисплей 20Х4 с I2C протоколом, датчики температуры и релейный блок с опторазвязкой. Вроде всё, что нужно есть. Теперь самое интересное... Как организовать опрос клавиатуры? На данный момент реализовал на Timer01 с самой маленькой частотой опроса ~ 50 Гц. Как часто опрашивать датчики температуры, это которые однопроводные, у меня по плану их будет 4-8 шт. и стоит ли их опрашивать в цикле прерывания? Как организовать структурное меню, типа текущие параметры, установки, аварийная сигнализация и тд... в смысле линейного или векторного программирования? Стоит ли выводить ШИМ на масляный насос и нагреватель масла или можно просто реле поставить? Корохе много вопросов...

Страница 8 из 8 ПерваяПервая ... 2345678

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 2 (пользователей: 0 , гостей: 2)

Ваши права

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