Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
products:laboratory_iot_c:exp50 [2024/12/13 17:08] – [Программный код эксперимента] labuser30products:laboratory_iot_c:exp50 [2024/12/13 17:12] (текущий) – [Программный код эксперимента] labuser30
Строка 222: Строка 222:
 }; };
  
-class Button { 
-  private: 
-    int pin; 
-    bool pressState; 
-    bool oldState; 
-  
-  public:  
-    Button(int _pin, bool _pressState) { 
-      pin = _pin; 
-      pinMode(pin, INPUT); 
-      pressState = _pressState; 
-      oldState = not _pressState; 
-    } 
-  
-    bool onPress() { 
-      bool state = digitalRead(pin); 
-      if (state != oldState){ 
-        oldState = state; 
-        if (state == pressState) return true; 
-      } 
-      return false; 
-    } 
-};  
-  
 Stopwatch stopwatch; Stopwatch stopwatch;
  
Строка 253: Строка 229:
   tft.initR(INITR_BLACKTAB);   tft.initR(INITR_BLACKTAB);
   tft.setRotation(2);    tft.setRotation(2); 
 +  
   stopwatch.init();   stopwatch.init();
   stopwatch.startStop();   stopwatch.startStop();
Строка 262: Строка 239:
 </file> </file>
  
-Код эксперимента должен быть понятен. Сначала как обычно подключаем библиотеки, настраиваем SPI и дисплей. Потом код класса секундомера и в конце мы создаем объект секундомера +Код эксперимента должен быть понятен. Сначала как обычно подключаем библиотеки и дисплей. Потом код класса секундомера и в конце мы создаем объект секундомера. 
-<code python[enable_line_numbers="2", start_line_numbers_at="98"]> +<code arduino[enable_line_numbers="2", start_line_numbers_at="88"]> 
-stopwatch = Stopwatch()+Stopwatch stopwatch;
 </code> </code>
  
-Запускаем его +Инициализируем и запускаем его. 
-<code python[enable_line_numbers="2", start_line_numbers_at="99"]> +<code arduino[enable_line_numbers="2", start_line_numbers_at="96"]> 
-stopwatch.start_stop()+  stopwatch.init(); 
 +  stopwatch.startStop();
 </code> </code>
  
-И в бесконечном цикле вызываем его метод ''tick()''. В нем он занимается отслеживаем времени и отображением изменений на дисплее +И в бесконечном цикле вызываем его метод ''tick()''. В нем он занимается отслеживаем времени и отображением изменений на дисплее. 
-<code python[enable_line_numbers="2", start_line_numbers_at="101"]> +<code arduino[enable_line_numbers="2", start_line_numbers_at="101"]> 
-while True: +  stopwatch.tick();
-    stopwatch.tick()+
 </code> </code>
  
 Теперь наш секундомер умеет считать время. Но еще не слушается управления. В следующем эксперименте мы добавим управление с помощью кнопки и получим полноценный секундомер. Теперь наш секундомер умеет считать время. Но еще не слушается управления. В следующем эксперименте мы добавим управление с помощью кнопки и получим полноценный секундомер.