今回はPythonの勉強しながらデザインパターンのVisitorをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 Visitorとは 直訳すると「訪問者」ですね。 wikiには「 アルゴリズムをオブジェクトの構造から分離するためのデザイ…
今回はPythonの勉強しながらデザインパターンのDecoratorをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 Decoratorとは 直訳すると「飾り付けをする人」ですかね。 wikiには「既存のオブジェクトに新しい機能や振る舞い…
今回はPythonの勉強しながらデザインパターンのCompositeをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 Compositeパターンとは 直訳すると「複合物」や「混合物」みたいな意味でしょうか。 wikiには「ディレクトリとフ…
今回はPythonの勉強しながらデザインパターンのStrategyをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 Strategyとは 直訳すると「戦略」ですね。 wikiには「アルゴリズムを使用者から独立したまま様々に変化させること…
今回はPythonの勉強しながらデザインパターンのBridgeをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 Bridgeとは 直訳すると「橋」ですね。 wikiには「"橋渡し"のクラスを用意することによって、クラスを複数の方向に拡…
今回はPythonの勉強しながらデザインパターンのAbstractFactoryをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 AbstractFactoryとは 直訳すると「抽象的な工場」になります。 wikiには「関連するインスタンス群を生成す…
今回はPythonの勉強しながらデザインパターンのBuilderをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 Builderとは 直訳すると「建築者」という意味になります。 wikiには「 オブジェクトの生成過程を抽象化することによ…
今回はPythonの勉強しながらデザインパターンのPrototypeをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 Prototypeとは 直訳すると「原型」や「模範」という意味になります。 wikiには「生成されるオブジェクトの種別が…
今回はPythonの勉強しながらデザインパターンのSingletonをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 Singletonとは 直訳すると「単一要素」みたいな意味になります。 wikiには「そのクラスのインスタンスが1つしか生…
今回はPythonの勉強しながらデザインパターンのFactoryMethodをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 FactoryMethodとは 直訳すると「工場手続き」みたいな意味になります。 wikiには「他のクラスのコンストラク…
今回はPythonの勉強しながらデザインパターンのTemplateMethodをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 TemplateMethodとは 直訳すると「型板手続き」みたいな意味になります。 wikiには「ある処理のおおまかなア…
今回はPythonの勉強しながらデザインパターンのAdapterをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 Adapterとは 直訳すると「適合させるもの」という意味になりますが、 直訳だと少しわかりにくいですね(;´Д`) wiki…
今回はPythonの勉強目的でデザインパターンのIteratorをやってみました。 他のパターンにつきましては、以下の目次記事をご参照ください。 Iteratorとは 直訳だと「繰り返す」や「反復」という意味になります。 wikiには「コンテナオブジェクトの要素を列挙…
最近、Pythonの勉強を始めてみました。 私は新しい言語を覚えるとき、とにかく真似てもいいから色んなコードを書いて、その言語の雰囲気を味わうようにしています。 そんな勉強方法が良いかはさておき(・`ω´・;) 今回も色んなコードを書いてみるところか…
会社の若い子たちがPhysonで機械学習とかやっているようなので自分も勉強してみることにしました。 基本的な文法はなんとなくわかる気がするので、Pythonにおけるクラスの使い方とスコープから初めてみたいと思います。 自分のお勉強目的の備忘録なのでわか…
前回までは、Cortex-M4でCMSISライブラリを使わずにGPIO制御してみました。 今回は、Cortex-M4でCMSISライブラリを使わずにSysTickを制御してみたいと思います。 SysTickとは ARMマイコンが周辺機器とは別に持っている24ビットのシステム・タイマです。 特徴…
前回は、Cortex-M4でCMSISライブラリを使わずにGPIO制御してみました。 今回は、その延長で複数のGPIOを制御してLチカさせます。 内容は前回やったことに毛が生えたような感じですが、今後やりたいことがあり、そのデバッグ目的のためにやります。 User LED…
前回は、eclipse Embedded CDTでSTM32F407VG(Cortex-M4)のベアメタルをデバッグしました。 今回は、CMSISライブラリを使わずにGPIOを制御してUser LED(green)をLチカさせてみたいと思います。 User LED(green)の接続先 まずはUser LED(green)の接続先を探し…
前回はeclipse Embedded CDTをインストールしてWidnowsだけで動くAMR用のベアメタル開発環境を構築してみました。 今回はeclipse Embedded CDTを使用してAMR用のベアメタルをデバッグしてみました。 備忘録として残します。 プロジェクトを作成する eclipse…
eclipseを使用したARMの開発環境 eclipse Embedded CDT が便利だという話を小耳にはさみました。 eclipse Embedded CDT はeclipseにクロスツールチェーンやプラグインを追加して使うような開発環境のようです。 今回は、Windows 10 64bitマシンにeclipse Emb…
Raspberry pi のベアメタル開発環境構築の続編です。 以前、Crosstool-NGでRPiのベアメタル開発環境を作るときに、newlibも一緒にインストールしました。 今回は、システムコールを実装してnewlibのprintf()を使えるようにしてみようと思います。 printfがな…
前回は、MATLABとC#で共有メモリを使ったプロセス間通信をさせてみました。 今回は、SimulinkとC#で共有メモリを使ったプロセス間通信をさせてみたいと思います。 SimulinkからCコードを呼び出すにはS-Functionブロックというものがあります。 また、S-Funct…
今回はMATLABとC#で共有メモリを使ったプロセス間通信を試みたいと思います。 MATLAB同士で共有メモリを使ったプロセス間通信としてmemmapfileを使う例があります。 しかし、memmapfileはページファイル内のメモリマップの読み書きはできません。 また、メモ…
前回は、MEX関数を使ってMATLABからCコードを呼び出してみました。 今回は、すこしだけ発展させて、MEX関数をライブラリ化してMATLABから呼び出してみたいと思います。 https://jp.mathworks.com/help/matlab/call-c-library-functions.html MATLABが呼び出…
MATLABではコマンドラインからユーザー独自のC/C++プログラムを組み込み関数のように呼び出すことができ、 これらのプログラムはMEX関数と呼ばれているようです。 https://jp.mathworks.com/help/matlab/call-mex-files-1.html MEX関数はMATLABを高速化させ…
ちょっとCとC#で共有メモリを使ったプロセス間通信が必要になったので調べてみました。 共有メモリを使用したプロセス間通信は昔からあるので、ネットで探せばやり方がたくさん出てきます。 今回は特にわかりやすかった以下のサイトを参考にさせていただき、…
DeskMiniを購入してみた 最近、開発専用のマシンが欲しくなりました(´・ω・`) なにかちょっと試したいとき、巨大なデスクトップを起動させるほどでもないけどRaspberry Piみたいなシングルボードだとパワー不足で心もとない。 そんなとき、小さくて気軽に…
今回は、Crosstool-NGで作ったRPiのベアメタル開発環境を使用して、Raspberry Pi(以降、RPi)でAMPシステムを作ってみたいと思います(・`ω´・)b AMPシステムとは Raspberry Pi OSをインストールしてみる Raspberry Pi OSが使用するメモリとCPUコア数を制限…
前回は、Crosstool-NGでtoolchainを構築して、RPi3のチュートリアルをビルドしてみました。 今回は、ビルドしたカーネルを動かしてみたいと思います(・`ω´・)b ・・・が、ビルドするたびにカーネルをSDカードにコピーするのも手間なのでQEMUというエミュ…
前回、格安でRasperry Piを手に入れたのでこれらを使ってベアメタルプログラミングをしてみようと思います。 まずは開発環境の構築から(・`ω´・)b 開発環境の構築にはCrosstool-NGを使います。 Crosstool-NGは、toolchain(コンパイラ、アセンブラ、リン…