ESP32で秋月ACM1602NIを使う (3)

ACM162NIの命令について調べていましたが,何となく理解できましたが,カーソルの移動について,いま
いちでしたが,またまた諸兄のHPにて理解が進みました。ACM1602NIの制御では,

COMMMANDを送るときは,0X00 を送信して,
data を送るときは,0x80を送信します。

マニュアルを読んでいるとDDRAMのアドレスを送ればいいとありましたが,その方法がわかりませんでした。

それぞれアドレスが表示位置をあらわしていますので,1行目の3文字めにカーソルを移動するには,

   0x80+0x02

を送ってやればいいようです。このことを諸兄のHPのサブルーチンを見ていてやっと理解できました。
スケッチでは,orをとって実現すればいいようです。諸兄のHPにはサブルーチンが下記のようにありました。

void setCursor(byte col, byte row)
{
    byte row_offsets[] = { 0x00, 0x40 };
 
    if ( row > 1 ) {
        row = 1;
    }
    writeCmd( 0x80 | (col + row_offsets[row]) );
}

ACM1602NIの制御を理解するのに,熊谷研修室というHPが役にたちました。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA