当サイトは2020年小学生のプログラミング必修化に関して、関連する情報を纏めています。

Micro:bit(マイクロビット)で学ぶ 29

Micro:bit(マイクロビット)で学ぶ 29

前の記事でMicropythonとmicrobit_ssd1306ライブラリーを使ってMicro:bitからOLED有機ELディスプレイにテキストメッセージを表示する例を紹介しました。今回は、カタカナをテキストで表示するライブラリーを追加しましたので紹介します。

当記事は、シリーズでマイクロビット(Micro:bit)のプログラミングについて紹介しています。初めての方はこちらをご覧ください。

以下の項目については前回の記事を参照してください。

・使用するOLED有機ELディスプレイについて
・Micro:bitとOLED有機ELディスプレイの接続

2021/9/15更新:当記事はMicro:bit V1.5 、Mu Editor V1.0.2 の時点でテストして問題ない事を確認していますが、最近Mu Editor V1.1.0b5 と Micro:bit V2でテストしたところ表示が崩れる事が判明しました。まだ問題判別中ですが、カタカナストリングをindexで何番目にあるか調べているのですが、2文字目にあるにも関わらず3が返されます。3文字目は6、4文字目は9、、、、です。半角英文字ストリングでは問題ないので、2byte文字の問題か私のコーディング問題の可能性があります。原因はさておき、kana_prt関数を書き直して問題なくカタカナが表示できるようになりましたので、記事を更新しました。
当記事はMicro:bit V2 と Mu V1.1.0b5で動作確認していますので他の組み合わせでは動作しない可能性があります。

1.実際にカタカナを表示してみる

Githubに私のブランチを作成しました。こちらからオリジナルのライブラリーと私の追加したライブラリーが入手できます。すでにオリジナルを入手済みの方は、以下からkana_sample.zipをダウンロードして下さい。以下の手順はすでにssd_1306のライブラリーを導入しテキストをディスプレイに表示できる方用です。まだの方は、こちらの記事を参照してください。

1-1.ダウンロードしたkana_sample.zipを解凍してください。kana_sampleフォルダーが作成され、フォルダー内にkana1.py、kana_sample.py、kana_help.txtのファイルが解凍されますので、mu_codeフォルダーにkana1.pyとkana_sample.pyをコピーしてください。

kana1.py : ssd1306_px.pyを利用して、カタカナ文字列を表示するプログラム。
kana_sample.py:カタカナを表示するサンプルプログラム

kana_prt(keta, gyo, km )の使い方(kana_help.txtと同じ内容です)
カタカナだけであれば、4行10文字表示できます。但し、英文字は4行12文字ですので、混在させる場合は調整してください。行については英文字と合わせてあります。kmに10文字以上指定しても10文字しか表示しません。また、ketaによって自動的に表示文字数を変えています。例えば、ketaが9であればkmに何文字指定しても1文字しか表示されません。gyoも4以上指定しても3に強制的にしています。

関数の引数について

keta:1行10文字で何文字目から表示するか0~9で指定します。改行はサポートしていません。仮に9を指定した場合はkmに何文字指定しても最初の1文字のみ表示されます。

gyo:何行目に表示するか0~3で指定します。0~3以外を指定した場合は3になります。

km : Ver 1.0ではカタカナを直接指定していましたが、Ver 2.0 ではローマ字もどきの指定です。もし、以下の例にない文字を指定した場合は表示は■になります。

アイウエオ :a@i@u@e@o@
カキクケコ :kakikukeko
サシスセソ :sasisuseso
タチツテト :tatituteto
ナニヌネノ :naninuneno
ハヒフヘホ :hahihuheho
マミムメモ :mamimumemo
ヤユヨワン :yayuyowann

半濁音、濁音フォント(ガ、ポなど)はサポートしていません。半濁音は『O@』(英大文字オー@)、濁音は『’@』(シングルクォーテーション@)、長音は『-@』(ダッシュ@)。例えば、『ガッコウ』は”ka’@tukou@”、『パイプ』は”haO@iihuO@”と指定してください。

Ver 1.0から 2.0 への更新理由はMu1.1.0b5でVer 1.0は正しく表示ができなくなってしまったためです。私のコーディングの問題かもしれませんが、引数でカタカナがうまくkana_prt関数に渡せなくなってしまったためです。

1-2.Muを開始して、kana_sample.pyを開いてください。

 

1-3.必要なライブラリーをMicro:bitにコピーするためにmicrobit10-9をクリックすると、以下の様な画面になりMicro:bit内とコンピューター内のmu_codeフォルダーが表示されます。
microbit27-7

1-4.必要なライブラリーをコンピューターのファイル:からドラッグして、Micro:bitのファイルにドロップしてコピーします。kana1.py、ssd1306.py、ssd1306_px.py、ssd1306_text.pyをMicro:bitにコピーします。

1-6.file操作を止めるために再度microbit10-9をクリックします。これをしないと転送できません。その後、転送をクリックしてプログラムをMicro:bitにコピーします。

1-7.転送が終わるとプログラムが実行され、カタカナと英文字が以下のように表示されます。

2.カタカナ表示を利用したプログラムの作成例

以下は、ブロックエディターで作成した『マジック8ボール』をカタカナ表示を利用してMicropythonで作成した例です。

Micro:bit V2でメモリーが増えたため、上のサンプルプログラムでも問題無く動きます。Magic8ballでは占い結果が20ありますので、サンプルプログラムに追加してみてください。

最後まで記事をお読みいただきありがとうございます。
記事の改善に役立てたいと思いますので、よろしければアンケートにご協力ください。

記事内容についてお伺い


良く解る解る解りにくい部分がある解りにくい 



今回の記事に使用したMicro:bit以外の製品は以下になります。

クロームブラウザーをご使用の方へ

当サイトへの訪問ありがとうございます。その際、グーグルクロームブラウザーをお使いの方にお知らせです。グーグルクロームブラウザーでは、2018年7月から、サイトにより以下の表示がブラウザーのアドレスバーに表示されます。当サイトでも表示されますが、心配ありませんのでご安心ください。
SSL案内1
これは、SSLと呼ばれるWebサイトとそのサイトを閲覧しているユーザとのやり取り(通信)を暗号化するための仕組みを使用していないためです。ネットショッピング、銀行サイトではパスワードやクレジットカードの情報を扱いますので、必須の仕組みです。当サイトでは、そのような情報を扱っておりませんので、暗号化は必須ではありませんが、訪問される方により安心していただけるように、SSL化を予定しております。このメッセージはSSL化完了まで念のため表示します。

マイクロビットカテゴリの最新記事