フォト
2017年6月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  
無料ブログはココログ

« Arduino用美咲フォントライブラリを作成しました | トップページ | Arduino - TV出力(TVoutLibrary使用)で漢字表示 »

2016年3月16日 (水)

Arduino用美咲フォントライブラリを作成しました(2)

先日作成したライブラリを、以前試してみたTV出力(TVoutLibrary使用)で利用してみました。

TVout Library の入手先等の情報
  ・The Arduino Playground - TVout Libraty http://playground.arduino.cc/Main/TVout
  ・GitHub Arduino-TVout - https://github.com/Avamander/arduino-tvout
  ・arduino-tvout  - https://code.google.com/archive/p/arduino-tvout

スケッチは表示する文字列を直接指定出来ます。
(スケッチはライブラリのサンプルスケッチとして添付しています)

01

使用する部品は抵抗2本とAV端子のみです。お手軽に表示出来ます。
(下記の写真のブレッドボード上の黒いのは別目的で利用している圧電スピーカーです)

Dscn5014

画面解像度は120x96ドットです。
やはり8x8ドット フォントは文字が少々粗いですね。表示は鮮明で綺麗です。

Dscn5011

このTVout、RAMを結構消費します(120x96ドットで1,440バイト使います)。
シリアルライブラリ(Serial)を使おうとすると、メモリが足らないようで実行できませんでした。

フォントライブラリもちょっとダイエット(RAMの消費を抑える)しないとダメそうです。
ちょっと処理を見直したいと思います。

スケッチ(プログラムソース) 2016/07/10 修正しました

#include <misakiUTF16.h>
#include <TVout.h>

TVout TV;

// 指定位置に1文字表示
void mputc(uint8_t x, uint8_t y, uint16_t code) {
  int16_t pos; // フォントデータテーブルコード
  if ( (pos = findcode(code)) < 0) 
    return;
  TV.bitmap(x,y, getFontTableAddress()+pos*8 ,0,8,8); 
}

// 指定位置に文字列表示
void mprint(uint8_t x, uint8_t y, char* str) {
  uint16_t utf16;
  int8_t   len;
  
  while(1) {
    len = charUFT8toUTF16(str, &utf16); // 先頭文字のutf16コードの取得
    if (!len) 
      break;  // コードエラー   
    mputc(x, y, utf16); // 1文字表示
    x+=8;
    if (x >= 120) {
      x = 0; y+=8;
    }
    str+=len;
    if (!*str)
      break; // 文末に達した
  }
}

void setup() {
  TV.begin(NTSC, 120, 96);
  mprint(0,0,"【みさきフォント表示テスト】");
  mprint(15,14,"今日は3月16日です。");
  mprint(5,30,"ねこにコ・ン・バ・ン・ワ");  
  mprint(0,45,"ArduinoでTV出力です。");  
  mprint(0,60,"TVOUTライブラリ使用です。");
  mprint(0,75,"そこそこ読めますね!");  
}

void loop() {
}

TVout libraryのフォントとして組み込みこもうとも思ったのですが、標準フォントは
の文字コードが1バイトなので無理っぽいです。

« Arduino用美咲フォントライブラリを作成しました | トップページ | Arduino - TV出力(TVoutLibrary使用)で漢字表示 »

arduino」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/571408/63355078

この記事へのトラックバック一覧です: Arduino用美咲フォントライブラリを作成しました(2):

« Arduino用美咲フォントライブラリを作成しました | トップページ | Arduino - TV出力(TVoutLibrary使用)で漢字表示 »