ユーザ用ツール

サイト用ツール


ja-jp_commands:reference:iclcdcreatechar

文書の過去の版を表示しています。


IclcdCreateChar()

IclcdCreateChar()はユーザー定義文字を登録します。

IclcdCreateChar コマンドの動作フロー

bool IclcdCreateChar(uint8_t location, const uint8_t charmap[8], uint8_t device = 0)

コマンド

コマンド 引数 戻り値 動作
IclcdCreateChar(location, charmap, device) uint8_t location
const uint8_t charmap[8]
uint8_t device = 0
bool ユーザー定義文字を登録します。

使用例

const uint8_t LCD_DEVICE = 0;
const uint8_t degreeChar[8] = {0x0C, 0x12, 0x12, 0x0C, 0, 0, 0, 0};
 
void setup() {
  if (!IclcdBegin(0x27, 20, 4, true, LCD_DEVICE)) return;  // PCF8574文字LCDのアドレスと画面サイズを設定します。
  IclcdCreateChar(0, degreeChar, LCD_DEVICE);  // ユーザー定義文字を登録します。
  IclcdClear(LCD_DEVICE);  // LCD画面を消去します。
  IclcdHome(LCD_DEVICE);  // カーソルを先頭位置に移動します。
  IclcdDisplay(true, LCD_DEVICE);  // LCD表示をオン/オフにします。
  IclcdCursor(false, LCD_DEVICE);  // カーソル表示をオン/オフにします。
  IclcdBlink(false, LCD_DEVICE);  // カーソル点滅を有効/無効にします。
  IclcdBacklight(true, LCD_DEVICE);  // LCDバックライトをオン/オフにします。
  IclcdTextDirection(true, LCD_DEVICE);  // 文字の入力方向を設定します。
  IclcdAutoscroll(false, LCD_DEVICE);  // 自動スクロールを有効/無効にします。
}
 
void loop() {
  const float temperature = ntcReadf(0);  // NTC 3950 10kΩセンサの温度を℃単位の浮動小数点値で返します。
  IclcdSetCursor(0, 0, LCD_DEVICE);  // カーソルを指定の列と行に移動します。
  IclcdPrint(F("Temperature"), LCD_DEVICE);  // 文字列または数値をLCDに出力します。
  IclcdSetCursor(0, 1, LCD_DEVICE);  // カーソルを指定の列と行に移動します。
  IclcdPrint(temperature, 1, LCD_DEVICE);  // 文字列または数値をLCDに出力します。
  IclcdWrite(0, LCD_DEVICE);  // 文字コードまたはユーザー定義文字を出力します。
  IclcdPrint('C', LCD_DEVICE);  // 文字列または数値をLCDに出力します。
 
  if (Iup(0, IdigitalRead(0, 5))) IclcdScrollLeft(LCD_DEVICE);  // 表示内容を左に1桁移動します。 / 入力を連続して複数回読み、すべて一致した場合のみ状態を更新します。HIGHとLOWが混在する場合は前の安定状態を保持します。 / 入力がOFFからONに変わる瞬間だけtrueを返します。
  if (Iup(1, IdigitalRead(1, 5))) IclcdScrollRight(LCD_DEVICE);  // 表示内容を右に1桁移動します。 / 入力を連続して複数回読み、すべて一致した場合のみ状態を更新します。HIGHとLOWが混在する場合は前の安定状態を保持します。 / 入力がOFFからONに変わる瞬間だけtrueを返します。
  if (Iup(2, IdigitalRead(2, 5))) IclcdCommand(0x02, LCD_DEVICE);  // 入力を連続して複数回読み、すべて一致した場合のみ状態を更新します。HIGHとLOWが混在する場合は前の安定状態を保持します。 / LCD制御コマンドを直接送信します。 / 入力がOFFからONに変わる瞬間だけtrueを返します。
}

注意事項

  • PCF8574接続は従来のCLCDライブラリと同じマッピングを使用します:P0=RS、P1=R/W、P2=Enable、P3=バックライト、P4~P7=LCD D4~D7。
  • LCDモジュールの実際のI²Cアドレスは、モジュール設定とI²Cスキャン結果で確認してください。
  • SDA/SCLは他のI²C機器とバスを共有できますが、アドレスの重複は禁止です。
  • Iclcd…()の実行中にWire転送やI²Cスレーブコールバックを同時実行しないでください。Iclcd転送は100 kHzで実行した後、元のTWI設定を復元します。
  • MPAINOでD20/D21を外部割り込みに使用する場合、I²Cとは同時使用できません。
  • IclcdCommand()はLCD状態を直接変更できるため、HD44780コマンドを理解している場合だけ使用してください。

同じカテゴリの内蔵コマンド

ja-jp_commands/reference/iclcdcreatechar.1788796397.txt.gz · 最終更新: by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki