Skip to content

Latest commit

 

History

History
110 lines (100 loc) · 2.41 KB

SevenSegment.md

File metadata and controls

110 lines (100 loc) · 2.41 KB

SevenSegment

目次

CubeMX

PinOut: GPIO_Output

コンストラクタ

SevenSegment::SevenSegment(bool)
SevenSegment(
    bool flip = false
);

flip に応じて GPIO_PIN_SET, GPIO_PIN_RESET が逆になります

//
SevenSegment sevenSegment;
SevenSegment sevenSegment(true);

関数

SevenSegment::add(GPIO)
virtual SevenSegment& add(
    GPIO gpio
) noexcept;

セグメントのピンを追加します
登録順は a → b → ... f → g → point

//
sevenSegment.add(pa5)
            .add(pa6) // 以下省略
SevenSegment::add(GPIO_TypeDef*, uint16_t)
virtual SevenSegment& add(
    GPIO_TypeDef* GPIOx,
    uint16_t GPIO_Pin
) noexcept;

SevenSegment::add(GPIO) の結果を返します

//
sevenSegment.add(GPIOA, GPIO_PIN_5)
            .add(GPIOA, GPIO_PIN_6) // 以下省略
SevenSegment::setLight(uint8_t)
virtual bool setLight(
    uint8_t lightData
) const noexcept;

ビット単位で7セグの設定をします
各ビットに対応してセグメントが点灯します

//
sevenSegment.setLight(0b01101101);
SevenSegment::set(uint8_t, bool)
virtual bool set(
    int8_t hex,
    bool point = false
) const noexcept;

16進数で7セグの設定をします
point を true にすると小数点が光ります

//
sevenSegment.set(0xC); // false は省略可能
sevenSegment.set(0xC, true);
SevenSegment::clear()
virtual bool clear() const noexcept;

全てのセグメントを消灯します

//
sevenSegment.clear();
SevenSegment::isAvailable()
virtual bool isAvailable() const noexcept;

登録数が7個であれば true を返します

sevenSegment.isAvailable();

<< 戻る