目次
ダウンロードページ | Arduinoで2Dグラフィックを扱う

キャンバスは以下のページからダウンロードできます.

状態リスト | タスク管理

それぞれのタスクにはそのタスクの状態というものがあります. 今回のOSでは, このタスクの状態を状態リストを用いて判別することにします. 以下から, タスク状態の種類, 状態リストの構造, リストを用いたタスク状態の切り替え方法を詳しく見ていきます.

Heap4.c | スクリプティング

各タスクごとに割り当てられるメモリの管理

TerminalPro4アプリケーション例 | 端末第四世代(TerminalPro4)

TerminalPro4用のアプリケーション例を挙げていきます.

  • NON: 何もしないプログラム
  • GLCDTest: GLCD動作確認プログラム(fps表示)
  • CtrlTest: コントローラ動作確認プログラム
  • SerialMonitor: シリアルモニター
  • MediaPlyer: 音楽プレイヤー
  • Bullet: シューティングゲーム(東方風)
  • NadekoAdventure: 千石撫子(化物語)横スクロールゲーム
  • Notes: 音ゲー

これらアプリケーションはダウンロードページ から取得したフォルダ内にある’Exapmle’フォルダに存在します.

ダウンロードページ | 端末第四世代(TerminalPro4)

TerminalPro4開発セットをダウンロードすることができます. TerminalPro4用サンプルアプリケーション, TerminalPro用Bootプログラムなどが含まれます.

WARNING

一部のサンプルプログラムは音楽ファイルを使用します. 音楽ファイルが存在しないときプログラムは正しく動作しません. ただ, 筆者は著作権の問題より音楽ファイルをアップロードすることができません. 各音楽ファイルを用意していただく必要があります.

ライブラリ, PHP, デバッガ
Debugツール | PHPライブラリ

PHPでWebアプリケーションを作るとき, 必ずデバックを行う必要があります. Debugの方法として, "echo"関数などを使用したプログラムの状態を画面に出力するなどがありますが, ファイルとしてそのようなデバック情報が保存されないのが難点です.

このDebugツールは以下の目的で作られました.

  • 簡単にDebugできるように
  • 外部ファイルとしてデバック情報を保存
Web
TranslatePreprocessor: 段落を保持するグーグル翻訳ペースト前処理機 | Webツール

英語論文PDF内の英文をグーグル翻訳にペーストする際, 同じ段落にもかかわらず改行が含まれており, 正しく翻訳できません.

これまで多くの方法が提案されています[1][2][3]が, 基本的に改行を削除しているだけで, 複数の段落が一つの段落になる問題があります.

そこで, 段落を保持したまま改行を取り除く前処理機を紹介します. 入力した文章を行ごとに処理し, 行文字が他と比べて少ない場合は, 改行をそのままにします.

英語PDFからの文字列を対象としていますが, 処理としては, 文字数と改行コードを見ているだけなので, 日本語などほかの言語にも対応しています.

QR-Universal Scanner: ブラウザで動作するQRコード読み取りウェブアプリ | Webツール

QR-Universal Scanner は, ブラウザ上で動作する, インストール不要多くの入力方法(カメラとクリップボード)に対応したQRコード[注 1]読み取りWebアプリです. PWAに対応しておりオフラインでも動作します.

QRコードを標準で読み取れるデバイスがありますが, 主にモバイル端末に多く[1][2], PC上でQRコードを読み込むためにはアプリをインストールする必要があります[3][4][5][6][7].

インストール不要のQRコード読み取りアプリもあります[8][9][10][11][12]が, ファイルのみ, もしくはカメラのみからの読み込みであったりと, 入力方法が限定されています.

本稿では, インストール不要で多くの入力方法に対応したQRコード読み取りWebアプリ QR-Universal Scanner を紹介します. PWAに対応しており, オフラインでも動作します.

ウェブアプリ, QRコード, PWA
QR-Universal Scanner: ブラウザで動作するQRコード読み取りウェブアプリ | Webツール

QR-Universal Scanner は, ブラウザ上で動作する, インストール不要多くの入力方法(カメラとクリップボード)に対応したQRコード[注 1]読み取りWebアプリです. PWAに対応しておりオフラインでも動作します.

QRコードを標準で読み取れるデバイスがありますが, 主にモバイル端末に多く[1][2], PC上でQRコードを読み込むためにはアプリをインストールする必要があります[3][4][5][6][7].

インストール不要のQRコード読み取りアプリもあります[8][9][10][11][12]が, ファイルのみ, もしくはカメラのみからの読み込みであったりと, 入力方法が限定されています.

本稿では, インストール不要で多くの入力方法に対応したQRコード読み取りWebアプリ QR-Universal Scanner を紹介します. PWAに対応しており, オフラインでも動作します.

OS
仕組み | Arduino上で走るOSの作り方

ここには, OSの仕組みに関する情報が書かれます. OSは非常に多くのことが関わっているため以下のように分けていきます.

  • メモリ管理
  • タスク管理
  • OSの設定
  • Arduino標準機能との融合
スクリプティング | Arduino上で走るOSの作り方

ここから, OSのソースファイル, ヘッダファイルを順番に実装していきます.

実装するファイルは次のとおりです.

  • Heap4.c
  • List.c
  • List.h
  • ArduinOS.h
  • ArduinOSConfig.h
  • ArduinOSConfigAtmega328P.h
  • ArduinOSConfigAtmega2560.h
  • Port.c
  • Portable.h
  • PortMacro.h
  • ProjDefs.h
  • Queue.c
  • Queue.h
  • Semaphore.h
  • StackMacros.h
  • Task.c
  • Task.h

変更を加えるファイルは以下のとおりです.

  • Arduino.h
  • wiring.c
  • main.cpp

基本的な製作の流れを踏まえつつ, 各ファイルごとに説明を行っていきます.

OSの設定 | 仕組み

ここでは, OSの設定方法について説明します.

設定ファイルは,ArduinOSConfig.hです. このファイル内にOSの設定を書きます. また, 設定ではハードウェアの基本構成に加え, 各機能の有効化, システムフックを行うか, などといった設定を行えます.

使用方法 | Arduino上で走るOSの作り方

ここでは, ArduinOSの使用方法を説明します.

C言語
Port.c | スクリプティング

PortMacro.hで宣言されているOSコア部分の関数をここで定義します. このファイルはAVRマイコン専用です.

「https://contentsviewer.work/Master/:tagmap/編集中,ダウンロード,アプリ/ツール,Arduino?layer=ja」から取得