C/C++
前回までは、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#で共有メモリを使ったプロセス間通信が必要になったので調べてみました。 共有メモリを使用したプロセス間通信は昔からあるので、ネットで探せばやり方がたくさん出てきます。 今回は特にわかりやすかった以下のサイトを参考にさせていただき、…