init
This commit is contained in:
33
inc/hal_gpio.hpp
Normal file
33
inc/hal_gpio.hpp
Normal file
@ -0,0 +1,33 @@
|
||||
//
|
||||
// Created by Kurosu Chan on 2024/1/15.
|
||||
//
|
||||
|
||||
#ifndef B0AACD4A_5B6F_438C_B35C_C49E28A07356
|
||||
#define B0AACD4A_5B6F_438C_B35C_C49E28A07356
|
||||
|
||||
#include <driver/gpio.h>
|
||||
|
||||
namespace app::driver::hal::gpio {
|
||||
using pin_t = gpio_num_t;
|
||||
using mode_t = gpio_mode_t;
|
||||
|
||||
enum class Mode {
|
||||
INPUT = GPIO_MODE_INPUT,
|
||||
OUTPUT = GPIO_MODE_OUTPUT,
|
||||
};
|
||||
|
||||
constexpr bool HIGH = true;
|
||||
constexpr bool LOW = false;
|
||||
|
||||
inline void digital_write(const pin_t pin, const bool val) {
|
||||
gpio_set_level(pin, val);
|
||||
}
|
||||
|
||||
inline bool digital_read(const pin_t pin) { return gpio_get_level(pin); }
|
||||
|
||||
inline void set_mode(const pin_t pin, const Mode mode) {
|
||||
gpio_set_direction(pin, static_cast<gpio_mode_t>(mode));
|
||||
}
|
||||
} // namespace app::driver::hal::gpio
|
||||
|
||||
#endif /* B0AACD4A_5B6F_438C_B35C_C49E28A07356 */
|
||||
Reference in New Issue
Block a user