Skip to content

Latest commit

 

History

History
107 lines (97 loc) · 2.57 KB

FixedSevenSegment.md

File metadata and controls

107 lines (97 loc) · 2.57 KB

FixedSevenSegment

目次

CubeMX

PinOut: GPIO_Output

コンストラクタ

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

flip に応じて GPIO_PIN_SET, GPIO_PIN_RESET が逆になります
外部で7セグデコーダがついている場合に使ってください

//
FixedSevenSegment sevenSegment;
FixedSevenSegment sevenSegment(true);

関数

FixedSevenSegment::add(GPIO)
FixedSevenSegment& add(
    GPIO gpio
) noexcept override;

セグメントのピンを追加します 登録順は 0ビット → 1 → 2 → 3 → point

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

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

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

下位4ビットが数字。その上位ビットを小数点として点灯します

sevenSegment.setLight(0b10011);
sevenSegment.setLight(0b01001);
FixedSevenSegment::set(int8_t, bool)
bool set(
    int8_t hex,
    bool point = false
) const noexcept override;

hex の下位4ビットが数字。point を小数点として点灯します

sevenSegment.set(0b0011, true);
sevenSegment.set(0b1001, false);
FixedSevenSegment::clear()
bool clear() const noexcept override;

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

sevenSegment.clear();
FixedSevenSegment::isAvailable()
bool isAvailable() const noexcept override;

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

sevenSegment.isAvailable();

<< 戻る