ESPHome 2026.5.0b1
Loading...
Searching...
No Matches
hal.h
Go to the documentation of this file.
1#pragma once
2
3#ifdef USE_HOST
4
5#include <cstdint>
6#include <sched.h>
7
8#define IRAM_ATTR
9#define PROGMEM
10
11namespace esphome::host {}
12
13namespace esphome {
14
17__attribute__((always_inline)) inline bool in_isr_context() { return false; }
18
19__attribute__((always_inline)) inline void yield() { ::sched_yield(); }
20
21void delay(uint32_t ms);
24uint64_t millis_64();
25void delayMicroseconds(uint32_t us); // NOLINT(readability-identifier-naming)
27
28__attribute__((always_inline)) inline void arch_init() {}
29__attribute__((always_inline)) inline void arch_feed_wdt() {}
30__attribute__((always_inline)) inline uint32_t arch_get_cpu_freq_hz() { return 1000000000U; }
31
32} // namespace esphome
33
34#endif // USE_HOST
struct @65::@66 __attribute__
Wake the main loop task from an ISR. ISR-safe.
Definition main_task.h:32
void yield(void)
uint32_t arch_get_cpu_cycle_count()
Definition hal.cpp:71
void arch_init()
Definition hal.cpp:47
void IRAM_ATTR HOT delayMicroseconds(uint32_t us)
Definition hal.cpp:48
uint32_t arch_get_cpu_freq_hz()
Definition hal.cpp:63
uint64_t millis_64()
Definition hal.cpp:29
uint32_t IRAM_ATTR HOT micros()
Definition hal.cpp:43
void arch_feed_wdt()
Definition hal.cpp:53
void HOT delay(uint32_t ms)
Definition hal.cpp:82
uint32_t IRAM_ATTR HOT millis()
Definition hal.cpp:28
static void uint32_t