Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

NeoPixel Clock - San Francisco

Автор:   •  Апрель 30, 2020  •  Задача  •  522 Слов (3 Страниц)  •  289 Просмотры

Страница 1 из 3

 NeoPixel Clock - San Francisco

Керекті құралдар [pic 1]

Құрылған модельдік макет

Модельдің  мақсаты  Ардуино аппаратын қосқанда жарық шам сағат тілімен жанады

[pic 2]

        

Результат

[pic 3]

Мына кодты ардуиноның сайтынан алдым

[pic 4]

[pic 5][pic 6][pic 7][pic 8]

void updateClock(void) {

  // This gets called 24 times per second.

  static int count = 0;

 

  if (++count == 24) {

    count = 0;

    // Update the time display

    if (++second >= 60) {

      // Update the minute

      if (++minute >= 60) {

        minute = 0;

        if (++hour >= 24) {

          hour = 0;

        }

      }

      second = 0;

     

      // Draw the minute hand

      drawMinuteHand();

    }

  }

  if (!(count & 3)) {

    drawHourHand(count >> 1);

    // Update AM/PM

    digitalWrite(AM_PM_PIN0, LOW);

    digitalWrite(AM_PM_PIN1, (hour >= 12) ? HIGH : LOW);

  }

}

ISR(TIMER2_COMPA_vect) {

  static unsigned char count = 0;

  // This interrupt is being called 125 times per second.

  // Trigger a function call exactly 24 times per second using math:

  count += 24;

  if (count >= 125) {

    count -= 125;

    updateClock();

  }

}

void setup() {

  digitalWrite(AM_PM_PIN0, HIGH);

  pinMode(AM_PM_PIN0, OUTPUT);

  digitalWrite(AM_PM_PIN1, HIGH);

  pinMode(AM_PM_PIN1, OUTPUT);

 

  stripMinute.begin();

  stripHour.begin();

  stripMinute.show(); // Initialize all pixels to 'off'

  stripHour.show(); // Initialize all pixels to 'off'

 

  setupESP8266();

  sychronizeTime();

  drawMinuteHand();

    // Set up timer2 to interrupt 125 times per second

  TCCR2B = 0x00;        //Disbale Timer2 while we set it up

...

Скачать:   txt (2.4 Kb)   pdf (517.8 Kb)   docx (332.3 Kb)  
Продолжить читать еще 2 страниц(ы) »
Доступно только на Essays.club