M5Unit-KEYBOARD 0.1.0 git rev:b58d024
Loading...
Searching...
No Matches
unit_Keyboard.hpp File Reference

Base class for units. More...

#include <M5UnitComponent.hpp>
#include <vector>
#include "../utility/bitwise_state.hpp"

Go to the source code of this file.

Classes

class  m5::unit::UnitKeyboard
 Base class of the Keyboard Unit. More...
 
class  m5::unit::UnitKeyboardBitwise
 Class supporting keyboard state acquisition by key press bits. More...
 

Namespaces

namespace  m5
 Top level namespace of M5Stack.
 
namespace  keyboard
 For keyboard.
 

Typedefs

using m5::unit::keyboard::key_index_t = uint8_t
 Key index (Not character)
 
using m5::unit::keyboard::key_status_bits_t = uint64_t
 key state bits [56...63]:modifier, bits [0...55]:key bits
 

Enumerations

enum class  m5::unit::keyboard::Mode : uint8_t { Conventional , M5UnitUnified }
 Operation mode for M5Unit-KEYBOARD firmware. More...
 

Functions

constexpr key_status_bits_t m5::unit::keyboard::modifier_bits (const key_status_bits_t kbs)
 Gets the modifier bits from key_status_bits_t.
 

Variables

constexpr uint8_t m5::unit::keyboard::command::CMD_SCAN_REG {0x10}
 
constexpr uint8_t m5::unit::keyboard::command::CMD_MODE_REG {0x20}
 
constexpr uint8_t m5::unit::keyboard::command::CMD_FIRMWARE_VERSION_REG {0xFE}
 
Modifier's bit [56...63]
constexpr key_status_bits_t m5::unit::keyboard::MODIFIER_SHIFT_BIT {0x0100000000000000}
 Shift.
 
constexpr key_status_bits_t m5::unit::keyboard::MODIFIER_SYMBOL_BIT {0x0200000000000000}
 Symbol.
 
constexpr key_status_bits_t m5::unit::keyboard::MODIFIER_FUNCTION_BIT {0x0400000000000000}
 Function.
 
constexpr key_status_bits_t m5::unit::keyboard::MODIFIER_ALT_BIT {0x0800000000000000}
 Alt.
 
constexpr key_status_bits_t m5::unit::keyboard::MODIFIER_CONTROL_BIT {0x1000000000000000}
 Control.
 
constexpr key_status_bits_t m5::unit::keyboard::MODIFIER_OPTION_BIT {0x2000000000000000}
 Option.
 
constexpr key_status_bits_t m5::unit::keyboard::MODIFIER_MASK
 Shift.
 

Detailed Description

Base class for units.

Enumeration Type Documentation

◆ Mode

enum class m5::unit::keyboard::Mode : uint8_t
strong

Operation mode for M5Unit-KEYBOARD firmware.

Enumerator
Conventional 

Conventional behavior

CardKB,FacesQWERTY:Gets the released key

M5UnitUnified 

M5Unit-KEYBOARD mode behavior

CardKB, FacesQWERTY:Gets the pressed key status

Warning
M5Unit-KEYBOARD firmware must be written

Function Documentation

◆ modifier_bits()

key_status_bits_t m5::unit::keyboard::modifier_bits ( const key_status_bits_t kbs)
inlineconstexpr

Gets the modifier bits from key_status_bits_t.

Parameters
kbsKey status bits
Returns
Bits with only the modifier flags set

Variable Documentation

◆ MODIFIER_MASK

key_status_bits_t m5::unit::keyboard::MODIFIER_MASK
constexpr
Initial value:
constexpr key_status_bits_t MODIFIER_ALT_BIT
Alt.
Definition unit_Keyboard.hpp:35
constexpr key_status_bits_t MODIFIER_SYMBOL_BIT
Symbol.
Definition unit_Keyboard.hpp:33
constexpr key_status_bits_t MODIFIER_CONTROL_BIT
Control.
Definition unit_Keyboard.hpp:36
constexpr key_status_bits_t MODIFIER_FUNCTION_BIT
Function.
Definition unit_Keyboard.hpp:34
constexpr key_status_bits_t MODIFIER_SHIFT_BIT
Shift.
Definition unit_Keyboard.hpp:32
constexpr key_status_bits_t MODIFIER_OPTION_BIT
Option.
Definition unit_Keyboard.hpp:37

Shift.