目次
海外の検索エンジン | Tips

インターネット上で調べものをするとき, 検索エンジンを使用してインターネット上にある膨大なコンテンツを絞り込みます. ただし, 日本国内で検索エンジンのサービスを利用すると, 日本を対象としたコンテンツが検索対象になります. そのため, 英語で書かれた最新の技術情報や, 論文, 公式のリファレンスがヒットしずらい問題があります.

本稿では, 日本国内にいながらも, 海外の検索エンジンサービスを利用できる方法を提示します.

グラフィック液晶 | Arduino

グラフィック液晶に関する情報をあつかいます. 扱うグラフィック液晶は’SG12864ASLB-GB’です.

グラフィック液晶外観
グラフィック液晶外観
グラフィック液晶の操作方法 | グラフィック液晶

ここでは, グラフィック液晶’SG12864ASLB-GB’の操作方法を説明します. これは, いわゆるライブラリの説明ではなく, ハードウェアそのものに対する操作方法です. この内容から, 自作のライブラリなどを製作することが可能です.

説明項目は以下のとおりです.

  • 入手方法
  • ピン配置
  • 名称
  • 実際に使ってみる
  • 参考文献
Heap4.c | スクリプティング

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

状態リスト | タスク管理

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

あいまい検索, ダウンロード
PHPで動くあいまい検索エンジン | PHPライブラリ

データベースを使わないで, あいまい検索を実現するPHPライブラリ

ライブラリ
PHPで動くあいまい検索エンジン | PHPライブラリ

データベースを使わないで, あいまい検索を実現するPHPライブラリ

GLCDControllerの紹介 | グラフィック液晶
フレームレート測定画面
フレームレート測定画面

GLCDControllerとは、グラフィック液晶SG12864ASLB-GBを操作するものです. GLCDControllerの特徴は以下の通りです.

  • 2Dグラフィック操作ライブラリCanvasの利点を受け継ぎ
  • 高いフレームレート

このGLCDControllerのメンバ変数としてCanvasがあるのですが, このCanvasが2Dグラフィック操作を簡単にします. Canvasについての特徴はCanvasの特徴を参照してください.

画面の更新速度ですが,最高60fps以上(最高fps85fps, 平均60fps, 全画面更新15fps)まで出せます(ArduinoUno 16Mhzで検証).

GLCDControllerを改良、強化、何でもしてください(;´∀`)

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

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

仕組み | 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の設定を書きます. また, 設定ではハードウェアの基本構成に加え, 各機能の有効化, システムフックを行うか, などといった設定を行えます.

メモリの構造 | タスク管理

ここでは, 実際にタスクが作成されたときのメモリの構造を示していきたいと思います. メモリでの各領域の説明, この構造によるmallocの問題を示します.

メモリ
メモリの構造 | タスク管理

ここでは, 実際にタスクが作成されたときのメモリの構造を示していきたいと思います. メモリでの各領域の説明, この構造によるmallocの問題を示します.

C言語
メモリの構造 | タスク管理

ここでは, 実際にタスクが作成されたときのメモリの構造を示していきたいと思います. メモリでの各領域の説明, この構造によるmallocの問題を示します.

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

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

「https://contentsviewer.work/Master/:tagmap/Tips,PHP,GitHub-Actions,Unity,液晶,CUDA,CI-CD,Cpp,FTP,GPU,編集中,Stack/検索エンジン,Arduino?layer=ja」から取得