Запитання з тегом «timers»

3
Використання millis () та micros () всередині програми переривання
Документація для attachInterrupt(): ... millis()покладається на переривання для перерахунку, тому він ніколи не збільшуватиметься в межах ISR. Оскільки delay()для роботи потрібні переривання, вона не працюватиме, якщо викликати всередині ISR. micros()працює спочатку, але почне поводитися нестабільно через 1-2 мс. ... Чим micros()відрізняється від millis()(крім, звичайно, їх точності)? Чи означає вищезазначене попередження, …

2
Чи є атрибутні функції вказівника в Arduino?
Наступні фрагменти з вихідного коду бібліотеки TimerOne : // TimerOne.h: void (*isrCallback)(); // TimerOne.cpp: ISR(TIMER1_OVF_vect) // interrupt service routine that wraps a user defined function supplied by attachInterrupt { Timer1.isrCallback(); } // TimerOne.cpp: void TimerOne::attachInterrupt(void (*isr)(), long microseconds) { if(microseconds > 0) setPeriod(microseconds); isrCallback = isr; // register the user's …

1
Встановлення таймера3 в режимі CTC - конфлікт із сервісною бібліотекою
Я хотів би встановити таймер, щоб викликати функцію 800 разів за секунду. Я використовую Arduino Mega і Timer3 з дозволом 1024. Для вибору фактора дозволення я розглянув наступні кроки: Частота процесора: 16 МГц Дозвіл таймера: 65536 (16 біт) Розділити частоту процесора обраного предделителя: 16x10 ^ 6 / тисячі двадцять чотири …

3
Чи може хтось пояснити цей дивний код, який використовується для налаштування таймерів?
Переглядаючи ескізи, написані іншими людьми, я час від часу стикаюся з кодом, який виглядає приблизно так: TCCR1A = 0; TCCR1B = 0; TCNT1 = 34286; TCCR1B |= (1 << CS12); TIMSK1 |= (1 << TOIE1); Все, що я знаю, це те, що має щось із тимчасовими / таймерами (я думаю). …

4
Увімкніть Arduino таймером кожні 24 години
Зараз я працюю над проектом Arduino, який раз на день посилає заряд акумулятора мого автомобіля через ESP8266. Взимку я не воджу автомобіль, і хотілося б повідомити, коли акумулятор опуститься понад критичне значення, тому можу зарядити його та запобігти пошкодженням. Тому енергоефективність важлива для проекту, тому він не розряджає акумулятор сам. …
9 power  timers  relay 

6
Можлива дуже довга затримка ()?
Я намагаюся зробити маленькі двері, що відкриваються та закриваються, які повинні відкриватися чи закриватися кожні 12 годин. Мені було цікаво, чи можу я просто зробити невеликий цикл циклу із затримкою () на 12 годин, затримкою (43 200 000 000); Я вважаю? Однак я не маю уявлення, чи це можливо та …

1
Чи потрібна мінливість при доступі до змінної з> 1 ISR, але не поділяється за межами ISR?
Це чітко задокументовані , що , коли глобальні дані спільно з ISR і основною програмою, то дані повинні бути оголошені volatileдля того , щоб видимість гарантії пам'яті (і , що досить тільки для даних 1 байт, потрібно будь або велике спеціальні заходи , щоб гарантувати також атомарность) . Тут ми …
9 interrupt  timers  isr 


5
Як Arduino може вивести конкретну (тобто 56 кГц) несучу частоту?
Я працюю над проектом вільної космічної оптики для бездротового надсилання даних між двома точками. Для цього я використовую ІЧ-світлодіод, підключений до Arduino Uno, який імпульсує з несучою частотою 56 кГц для передавача, і другий Arduino з модулем ІЧ-детектора 56 кГц для приймача. Я спробував використати delayMicroseconds () між командами високих …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.