Home

Awesome

Arduino-misakiSJIS

Arduino用 美咲フォントライブラリ 教育漢字・内部フラッシュメモリ乗せ版

概要

Arduino用の美咲フォントドライバライブラリのシフトJISバージョンです。

※ 美咲フォントは、Little Limitさんが開発し、配布しているフォントです。
  8×8 ドット日本語フォント「美咲フォント」
   http://littlelimit.net/misaki.htm

フォントを教育漢字1,006字(小学校で習う漢字)+ひらがな・カタカナ・記号・半角等の1,710字に絞って Arduino Uno(Atmega328)のフラッシュメモリ上に格納しました。

※Arduino IDEでは文字コードにUTF-8を利用しています。スケッチ内で直接日本語を含む文字列を扱いたい場合は、Arduino-misakiUTF16をお使い下さい。

収録文字
対応フォント

仕様

利用可能API

半角コード(記号英数字、カナ)をSJIS全角コードに変換する

SJISに対応するフォントデータ(8バイト)取得

文字列に対応する先頭文字のフォントデータ取得

フォントデータテーブル先頭アドレス取得

■ 利用可能フォントの検索

サンプルスケッチ

banner

//
// 美咲フォントライブラリサンプルプログラム by たま吉さん
//  2018/01/31 作成
//

#include <misakiSJIS.h>

//
// フォントパターンをコンソールに表示する
// 引数
//  pSJIS 表示する文字列
//  fore  ドットに使用するキャラクタ
//  back  空白に使用するキャラクタ
//
// ※半角文字は全角文字に置き換えを行う
//
void banner(char * pSJIS, char* fore, char* back) {
  int n=0;
  byte buf[20][8];  //160x8ドットのバナー表示パターン

  // バナー用パターン作成
  while(*pSJIS)
    pSJIS = getFontData(&buf[n++][0], pSJIS,0);  // フォントデータの取得

  // バナー表示
  for (byte i=0; i < 8; i++) {
    for (byte j=0; j < n; j++)
        for (byte k=0; k<8;k++)
          Serial.print(bitRead(buf[j][i],7-k) ? fore: back);
    Serial.println();
  }
  Serial.println();
}

void setup() {
  char str[] = {0x7a,0x7b,0x7c,0x7d,0x7e,0xa2,0xb1,0xb2,0xb3,0};// z{|}~「アイウ
  Serial.begin(115200);
  banner("Z[\\]^_`abc","$"," ");
  banner(str,"$"," ");
  banner("\x82\xa0\x82\xa2\x82\xa4\x82\xa6\x82\xa8","##","  "); //あいうえお
  banner("\x8d\xe9\x8B\xCA\x81\x99\x82\xB3\x82\xA2\x82\xBD\x82\xDC","[]","  "); // 埼玉☆さいたま  
}

void loop() {
}

banner

ライセンスについて

本フォントライブラリは、「美咲フォント」と同様にフリー(自由な)ソフトウエアです。
あらゆる改変の有無に関わらず、また商業的な利用であっても、
自由にご利用、複製、再配布することができます。
ただし、全て無保証とさせていただきます。