LPC1114のA/Dコンバータ

LPC1114のA/Dコンバータでちょっとつまづいたのでメモ。 LPC1114のA/Dコンバータには以下の2つのモードがある。 (1) ソフトウェア制御モード A/D制御レジスタ(AD0CR)のBURST=0とするとこのモードとなる。 AD0CRのSELでチャンネルを選択し、AD0CRのSTART=001…

Visual Studio CodeでArduino

Arduino IDEはなにかと不便なのでVisual Studio Code (VSCode) を使ってArduinoの開発をするメモ。 VSCodeとArduino IDEをインストール 当然ながら、まずVSCodeをインストールしておくこと。また、VSCodeでArduinoの開発をするといっても、内部ではArduino I…

SW4STM32のデバッガ設定の注意点 (リセットモード)

System Workbench for STM32 (SW4STM32) でハマったのでメモ。ST-Linkをマイコンボードに接続してデバッグしようと思ったら、下記のようなエラーが発生した。 Error: timed out while waiting for target halted どうも SWCLK と SWDIO だけを接続して RESET…

秀丸おじさんのVSCode入門

※この記事はかなり偏った思想にもとづいて書かれています。20年以上も秀丸を使い続けてきたおじさんだけど、ついにVSCodeへの移行をはじめている。VSCodeはたしかにすごく便利なのだけど、長年秀丸を使ってきた者にとっては痒いところが多々あるのも事実。と…

ラズパイのユーザ名/パスワード変更

手順をメモする。 (1) piユーザでログイン 仮ユーザ(tmp)を作成し、sudoグループに追加し、パスワードを設定する。 sudo useradd -M tmp sudo gpasswd -a tmp sudo sudo passwd tmp exit (2) tmpユーザでログイン piユーザのユーザ名(ここではnewnameとする)…

ArduinoやラズパイでEtherCAT

ArduinoやラズパイでカジュアルにEtherCATを組むまとめ。 EtherCATマスターとEtherCATスレーブ EtherCATスレーブ : EasyCAT + Arduino Uno EtherCATマスター(1) : Rasoberry Pi EtherCATマスター(2) : Ethernet Shield 2 + Arduino DUE EtherCATマスター(3) …

NeoPixel Ringでイヤリング

NeoPixel Ring (12連フルカラーシリアルLED)でイヤリングを作ってみました。点灯パターンは青と白を基調として「ゆらゆら」「ぐるぐる」「ちかちか」の3パターンを繰り返します。かなり重いので耳掛け式(イヤーフック)です。ピアスではありません。マイコン…

MbedからLPCXpressoへのエクスポート

やりたいこと Mbedのオンラインコンパイラで作成したLPCマイコンのプロジェクトをエクスポートしてLPCXpressoにインポートしたい。以前はエクスポート時の選択肢にLPCXpressoがあったのだけど、今はなくなっている。代替手段を見つけるのに手間取ったのでメ…

6軸IMUセンサBMI160

6軸IMUセンサ(3軸加速度+3軸ジャイロセンサ)と言えば、InvenSense(現TDK)のMPU-6050やSTマイクロのLSM6DS3が電子工作界隈ではメジャーですが、BOSCHのBMI160もがなかなか良いです。BOSCHといえば気圧・温湿度センサBMP280/BME280がすごく流行りましたが、こ…

PSoC注意点メモ

PSoC 5LP Prototyping Kitの注意点 PSoC 5LP Prototyping KitのP0_2, P0_3, P0_4, P3_2にはでかいコンデンサ(1uF)がついてるので要注意。とくにOPアンプで使うときに不都合。(不都合なときはC12, C13, C9, C7をはずす。) P1_0, P1_1もデバッガ用ピンなので使…

BME280とBMP280の仕様の違い

BOSCHの気圧・温度センサBME280とBMP280の差は、基本的には湿度センサの有無ですが、configレジスタのt_sbビットの解釈も一部異なっているので要注意。t_sbビットはセンサ測定値の更新周期に影響する tstandby を設定します。 tstandby[msec]の設定 t_sb[2:0…

PSoC CreaterでVerilogのコンポーネント作成

手順メモ。 ワークスペースにライブラリプロジェクトを追加 左ペインのWorkSpace ExploerでWorkspaceを右クリックして「Add」>「New Project」 Select project typeで「Library project」を選択 ライブラリの場所と名前を指定。ここではプロジェクト名を「M…

gitのベアリポジトリ、ノンベアリポジトリとは?

ベアリポジトリ(bare repository) = 作業コピーを含まないリポジトリ ノンベアリポジトリ(non-bare repository) = 作業コピーを含むリポジトリ ベアリポジトリは集中管理用 つまり、リモートリポジトリはベア、ローカルリポジトリがノンベアが基本 ノンベア…

今さらLPCXpressoメモ (2)

割り込み待ち 割り込み待ち命令の組込み関数は、__WFI() クロック出力 LPC812 Xpressoの場合、P0_1ピンにクロック出力が設定されている。 設定箇所は、lpc_board_nxp_lpcxpresso_812(ボードライブラリのプロジェクト) の board_sysinit.c の Board_SetupMuxi…

固定小数点計算ふたたび

前回の 固定小数点の再発明 - 滴了庵日録 ではROMサイズがかえって増えるという残念な結果になったので、C++でクラス化することはあきらめてC言語で書きなおした。 fixed24.h #ifndef _FIXED24_H #define _FIXED24_H #include<stdint.h> typedef int32_t fixed24; #def</stdint.h>…

今さらLPCXpressoメモ

ひさしぶりにLPCXpresso使ったら、使い方忘れてたのでメモ。 IDEのインストール 最新版のLPCXpresso IDE (今日現在でv8.2.2_650) をダウンロードしてインストールする。 Windowsでは、通常は C:\nxp\LPCXpresso_8.2.2_650 にインストールされる。 IDEの起動 …

固定小数点の再発明

Adafruit TrinketのようなROMが数キロバイトしかないマイコンでは、float型を用いると浮動小数点のライブラリがROM容量を圧迫してしまう。そこで固定小数点クラスを作ってみた。【2019/05/24 追記】 Arduino IDEでビルドしてみたところ、AVRマイコンではfloa…

日本語の「ん」には何種類の発音があるか?

日本語の「ん」にはじつは何種類もの発音があり、無意識に使い分けています。というより、発音しやすいように自然に発音が変化します。 [n] : 歯茎鼻音 タ行、ダ行、ナ行、ザ行、ラ行に続く場合 舌の先が上あごの前歯の歯ぐきに触れる 例: 安泰(アンタイ)、…

Arduinoのしょうもない落とし穴

踏んでしまったのでメモ。操作ミスまたは一時的なバックアップのつもりでうっかり下図のようなファイルコピーをおこなったとする。このとき、test.ino を開いてもArduino IDE上に test - コピー.ino は表示されない。空白や日本語を含むファイル名のソースは…

パーソナルEEGデバイス(脳波計)の選び方?

手軽なヘッドセットで測定した脳波データをスマホに送って、分析したりアプリ開発したりできるやつ欲しい。どれを選んだらいいのか調べていたら↓の動画を見つけた。以下に要約する。(※内容の妥当性は僕には保証できません。) 今はMuseとEmotivが双璧 NeuroSk…

Arduino系マイコンで超いいかげんなprintf

Arduino系のマイコンでprintfをシリアルに出力するためのいいかげんなマクロ static char print_buff[256]; // ←メモリが許すなら十分大きくとる #define printf(...) sprintf(print_buff, __VA_ARGS__), Serial.print(print_buff) sprintf()とSerial.print(…

ハッコーのイベント限定品レビュー

Maker Faire Kyotoで限定販売されたハッコーのキャップセットと折りたたみこて台をゲットしました。プロトタイプ段階のもので今のところ一般販売は未定のようです。 キャップセット ハッコーの温調はんだごてFX-600にキャップを取り付けるためのアダプタとキ…

ちかごろのマンガ20選

マンガをKindleで読むようになった2012年以降に読んだマンガ(続刊含む)から20作品を選ぶ。 (カテゴリー分けは便宜的・主観的なものである。) 評価基準 カテゴリー1 人間以外の事物を主題とし、かつ人間の内面に深く立ち入らないもの ただしその事物は現代…

ラズパイのセットアップメモ (ヘッドレス運用)

ヘッドレスでのセットアップと運用 ラズパイをヘッドレス(ディスプレイ、キーボード、マウスを接続しない)で使うためのセットアップ手順を以下にメモする。 母艦: Windows 10 の PC ラズパイ: Raspberry Pi 3B OS: Raspbian Stretch Lite SDカード: 16GB O…

CMakeメモ

CMakeとは? 簡単な設定ファイル( CMakeLists.txt )を書くだけで Makefile を生成してくれるツール Linux, Windows, Macなど各々のビルド環境のしきたりに沿った Makefile がおまかせで生成される。 コマンドラインベースのツール CMakeの使い方 CMakeLists.…

ゲージ表示用の.NETフォーム コントロール

ゲージ表示用のコントロールをProgressBarをベースに作った。ProgressBarからの変更点は、 アニメーション表示しない バーの色はForeColorで設定できる ニュートラルの値(Neutral)を基準にプラスマイナスの表示 using System; using System.Drawing; using S…

Windows 10でのWinPcap代替 = Npcap

Windows版の pcap (パケットキャプチャ) ライブラリとして有名な WinPcap ですが、Windows 10では安定して動作しません。Windows 10では WinPcap の代わりに Npcap を使いましょう。 (Win10Pcap というのもありますが保守されてないようなのでスルーで。)ち…

メモ: VirtualBoxにUbuntu18.04をセットアップ

基本的にビルド環境として使うので、無用のトラブルを避けるために日本語Remix版は使わず、言語も「English」でインストールする。ただし、キーボードは日本語キーボードを使用するのでその点を注意する。 VirtualBox 6.0.4 ホストOS: Windows 10 Home 1809 …

マイコンでTensorFlow!? (4)

今回はいよいよTensorFlow Liteのサンプルコードをビルドしてボードに書き込んでみます。 サンプルコードの内容 SparkFun Edgeボードの2つのマイクに入力される音声から「Yes」と「No」という単語を検出します。これには畳み込みニューラルネットワークによ…

マイコンでTensorFlow!? (3)

今回はサンプルコードのビルドとボードへの書き込みをやってみます。以下の2つを試します。 Edge Test:GPIO、UART、ADC、I2Cなどのハードウェア機能のデモ。 Makefile Project Template : 自分でプロジェクトを作るためのテンプレート。 (1) Edge Test 4つ…