non vorrei lavorare

昔はおもにプログラミングやガジェット系、今は?

cordovaでwindowsアプリを作るにはMSBuild ToolではなくVSのIDE環境が必要だった件

この記事は、@kjunichiの2018年パーソナルアドベントカレンダーの24日目の記事です。

npmで入れたVS環境だとダメっぽい

Surface Goの128GBの環境だったので、IDEなしのVSを入れていたので、これにハマった。

まずは、MSBuildのバージョンに文句言われて

MSBuild v4.0 is not supported, aborting. 

で、これは、

set MSBUILDDIR=C:\Program Files (x86)\Microsoft Visual Studio\2017\MSBuild\15.0\Bin\amd64

で先に進めるものの、

"C:\Program Files (86)\MSBuild\Microsoft\VisualStudio\v14.0\JavaScript\Micros oft.VisualStudio.WJProject.Default.props"

がないと文句言われて、ビルドできない。

結局これを簡単に解決するにはIDE付きのVSを入れる必要があった。

関連記事

4年前の記事

1年前の記事

ArduinoのLCDに¥ではなく\を表示するのは大変だった

この記事は、@kjunichiの2018年パーソナルアドベントカレンダーの23日目の記事です。

日本にいるから?

dev.to

の記事のBASICのコードをArduinoで実装しようとして、バックスラッシュのつもりで表示した \が¥マーク表示、ひょっとして、日本向けのArduinoなのか?と一瞬思ったが、いやいや、 英語マニュアルしかない製品だし、そんな訳ないかとなった。

独自ビットマップ文字を定義しないとダメみたい

どうやらバックスラッシュは英語圏だろうが、なんだろうがLCDに内蔵の文字パターンは¥マークが 割り当てられている模様。ちなみに、なぜか、カタカナもどこかのコードに割り当てられていた。

forum.arduino.cc

いくつか独自のキャラクタ定義が可能

lcd#createCharで、8個の独自の文字を定義できるので、これを利用することでバックスラッシュを 表示できるようにする。

uint8_t SpecialChar [8]= { 0x00, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00, 0x00 };

void setup()
{
  lcd.begin(16,2);   // initialize the lcd for 16 chars 2 lines, turn on backlight 
  lcd.backlight(); // finish with backlight on 
  lcd.createChar(0, SpecialChar);
}

と、定義して、

void loop()
{
  lcd.write(0);
}

といった感じで、文字列に埋め込んではうまく表示できなかった。 char型の配列を作って原始的に以下のように自作のコードでは実装してみた。

 for(i=0;i<16;i++) {
    lcd.write(buf[i]);
}

関連資料

Arduino - LiquidCrystalCreateChar

関連記事

4年前の記事

3年前の記事

1年前の記事

ArduinoにLCDつけてシリアル通信出来た

この記事は、@kjunichiの2018年パーソナルアドベントカレンダーの22日目の記事です。

できてること

  • screenコマンドで繋いで、入力された文字の表示
View this post on Instagram

Is this real hello world?

Junichi Kajiwaraさん(@kjunichi)がシェアした投稿 -

見えてきた課題

  • いい感じのスクロール
  • 複数行の入力の受け取り方

使ってるArduino

関連記事

7年前の記事

4年前の記事

3年前の記事

1年前の記事