月曜日, 11月 11, 2019

PIC16F1619 w/Curiosity OLEDを試す

XPress Boardの件は返事待ちで悲しいけど,とりあえず先に進む。あまり活用していなかったCuriosityでOLEDを使ってみる。

 うん,とってもいい感じ(自画自賛)

バッファ領域が取れない件,バッファなしにして,キャラクターデータをそのまま書くように修正した。ついでに,xは横ドット数で良くて,yは行数 0 から 3 までの指定とした。

void OLED_char6(char character, short x, short y) {
    short table_offset = (character-0x20)*5;
    OLED_command(0x20); // Set memory addressing mode
    OLED_command(0x02); // Page addressing mode
    OLED_command(y+0xB0); // Set page start address
    OLED_command(x & 0x0F);// Set lower column start address
    OLED_command(0x10 + (x >> 4)); // Set higher column start address
    I2CStart();
    I2CSend(_address);
    I2CSend(0x40);
    char i = 0;
    for(; i < 5; i++) { I2CSend(OLED_characters[i+table_offset]); }
    I2CStop();
}

xとyの範囲チェックをあまり厳密にしていない。無茶するとOLEDが固まり,PIC側も道連れにするようだ。要注意。

派手なグラフィックとかは苦手だけど,ちょっと情報を書き出すには充分な感じ!

0 件のコメント: