mirror of
https://github.com/esp8266/Arduino.git
synced 2025-04-21 10:26:06 +03:00
Move micros, delayMicroseconds, millis to IRAM (#1326)
This commit is contained in:
parent
297bb17c53
commit
652703ef41
@ -59,17 +59,17 @@ void micros_overflow_tick(void* arg) {
|
|||||||
micros_at_last_overflow_tick = m;
|
micros_at_last_overflow_tick = m;
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned long millis() {
|
unsigned long ICACHE_RAM_ATTR millis() {
|
||||||
uint32_t m = system_get_time();
|
uint32_t m = system_get_time();
|
||||||
uint32_t c = micros_overflow_count + ((m < micros_at_last_overflow_tick) ? 1 : 0);
|
uint32_t c = micros_overflow_count + ((m < micros_at_last_overflow_tick) ? 1 : 0);
|
||||||
return c * 4294967 + m / 1000;
|
return c * 4294967 + m / 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned long micros() {
|
unsigned long ICACHE_RAM_ATTR micros() {
|
||||||
return system_get_time();
|
return system_get_time();
|
||||||
}
|
}
|
||||||
|
|
||||||
void delayMicroseconds(unsigned int us) {
|
void ICACHE_RAM_ATTR delayMicroseconds(unsigned int us) {
|
||||||
os_delay_us(us);
|
os_delay_us(us);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user