俺言語。

自分にしか理解できない言語で書かれた備忘録

【Arduino】【MCP_CAN】Seeed CAN BUS Sheild 古いライブラリ

最新のSeeed MCP CAN Shield (MCP2515) のライブラリを導入したところ下記のエラーが発生。cannot declare variable 'CAN' to be of abstract type 'MCP_CAN' 調べたところライブラリが大きくアップデートされているようで、インポートする側のプログラムも…

【wxPython】長いTextCtrlの中身の末尾を表示する方法

ファイルのパスなどを短いTextCtrlに表示する時など、ファイル名が表示されるように右揃え?にしたい場合。下記のようにTextCtrlのstyleで右揃えを指定しますが、TextCtrlを操作した後などに無効になっていることがある。この場合はTextCtrl内のテキストを全…

畳み込み積分の確認

畳み込み積分がいまいちイメージしづらかったので実際にプログラムを書いて確認してみた。 畳み込み積分の式 伝達関数 1自由度振動系にt=0でインパルス入力した応答を伝達関数として使う。 インパルス入力は周波数領域で全周波数で大きさ1のスペクトルを持つ…

【Android】バータイプのインジケータ -> ProgressBarクラスの応用

以前書いた円形のプログレスバーで値に応じで色をグラデーションさせる方法のバータイプのプログレスバーへの応用。 oregengo.hatenablog.com 設定は全てxml側で完結できて、 Layout Drawable こちらを参考にさせて頂きました。 gist.github.com

【Android】apkをadb経由でインストールする際のトラブルシュート

apkでAndroidのアプリを配布する場合,gmailでは.apkが添付できなかったので仕方なくadbのコマンドでインストール. その際,すんなりいかなかったのでハマりポイントの覚え書き.インストールは adb install -r (apkのパス) うまくいかない場合は下記を試す…

【Arduino】Hexでの配布とFlash方法

ArduinoのプログラムをHexで配布し,Flashするまでの備忘録. Arduinoのメニューから”コンパイルしたバイナリを出力”を選択.スケッチと同じフォルダにHexファイルが生成される. avrdude.exeのパスを調べておく.パスを通しておいた方が便利かも.e.g.)C:\P…

【Android,Java】メソッドの呼び出し元の確認

実行中のメソッドがどこから呼ばれているかチェックする方法. StackTraceElement ste = Thread.currentThread().getStackTrace()[3]; これにより「クラス名」「メソッド名」「行数」が確認可能.こちらを参考にさせて頂きました. accelebiz.hatenablog.com

【Android, Java】Mapのstaticな宣言

Pythonのdictの様な連想配列を定数クラス内で定義しておきたいと思ったときに使用. 通常mapはmapを宣言した後,addで一つずつキーとデータを追加していくが,定数として使用したいのでコンストラクタ内でのaddは出来ない.(定数クラスなので使用先でインス…

【Android】複数行のテキストボックスの最終行を表示

自作のコンソール画面を作っている際に, 複数行の文字表示 文字列が追加されたら最後の行を自動表示 文字表示が変わらないときは自由にスクロールアップして過去の文字が見れるように という機能を実装.ポイントは スクロールさせたいTextViewをScrollView…

【Android, Spinner】Spinnerの文字色を動的に変化させる方法

スピナーで選択した文字が条件に一致したときに通常の白から緑に変化させて,選択した文字のstatusを明示できるようにしたもの.流れは, SpinnerにセットするArrayAdapterを自作する. 自作ArrayAdapterにテキストカラーを保持するメンバを追加 getView()の…

【C,ポインタ】改めてCのポインタ 個人的まとめ

あっているかわからないけど,ポインタは結局は組み込みなどメモリ容量が制限される環境と,戻り値が2以上の関数でグローバル関数を使いたくない場合に有効な手段. 裏を返すと,メモリに余裕があって,動けば良くて,ポインタで躓いて時間を食うくらいなら…

【C】2byte以上のデータを1byteずつ送信する方法

例えば65535(0xFFFF)のような2byteのデータをシリアル通信で送信する場合、1) 文字列のまま送る→ 0x54 0x53 0x53 0x51 0x53 で5byte必要 2) バイナリデータで送信 → 0xFF 0xFF で2byteとバイナリデータで送信する方が効率がよい.2byteデータをバイナリデー…

【Arduino】シリアル通信の送受信バッファサイズ変更

Arduino Micoroのシリアル送受信バッファサイズ、初期設定は64byteらしい(RAMサイズによっては16byte).SPIで受信したCANデータをシリアルで送信する際に,IDあたり12byte(ID 2byte, data 8byte, start/end時にend符号で各1byte)に加えて, SLIPフォーマット…

【CANUSB】CANUSBをwindows11で使用

LAWICEL製のCANUSBデバイスをWindows11で使用するまでの覚え書き ドライバのインストールと、CANUSBをWindows11で認識できるようにするための2ステップが必要 ドライバのインストール Windowsをテストモードに設定するために、BIOSからSecure bootをdisable…

【論文】Matplotlibでのグラフ出力 トラブル&解決方法

Matplotlibで論文用のグラフを出力した際に起こったトラブルと解決方法覚え書き 1. epsで出力した画像がLaTex上でうまく表示されない (グラフが画像の枠からはみ出る) これはmatplotlibがepsを出力する際のbouding box値にバグがあるためらしく、下記のサイ…

【Android】Error: missing feature: WATCH

コードを実行しようとすると上記エラーが発生.直前でAndroid studioをアップデートしたことと関連しているようで、Manifest内の設定が変わってしまった模様.Target deviceの位置にも”Missing...”と表示される.リンク先を参考に下記を削除すると解決しまし…

【Android】【Spinner】プルダウンで項目を選択できるSpinner

ボタンをクリックするとアイテムのリストがプルダウンで表示されて、そこから項目を選ぶタイプのUI実装方法。 かなりわかりづらい。シェイプ等を変えず背景色とフォント色のみ設定する場合に必要になるファイルは ***.java : SpinnerインスタンスとSpinnerア…

【Python】Import問題

すごくわかりづらいので自分なりにまとめ。まだ合っている自信がない。 - 明示的相対Import from . import lib .(ドット)はimportを実行しようとしているモジュールが属している同一パッケージを示す。 - 絶対Import sys.pathやPYTHONPATHに登録されているパ…

【Android】【debug】 Wifi経由で接続&デバッグ

WifiでAndroid端末にアクセスし、デバッグする方法。 端末のUSBポートをPCと接続しなくて済むのでUSBデバイスを使ったAppのデバッグに最適。以下はadb.exeにパスが通っている前提。adb.exeは通常、\AppData\Local\Android\Sdk\platform-tools にある。1. And…

【Android】実機デバッグで端末をAndroid studioが認識しないとき

主に新しい端末をAndroid studioで認識するとき用。 1. ビルド番号を数回タッチして開発者向けオプションを表示させる2. USBデバッグをONにする3. USB設定をMTP(ファイル転送)モードに設定する4. SDK Managerから該当するAndroid SDKとGoogle USB Driverがイ…

【Python】【wxPython】TextCtrlで一部だけ文字の色を変える

WxPythonのTextCtrlで文字を扱う際、全体の文字色は m_textctrl.SetForegroundColour(色) で変更できるが、このメソッドでは一部の文字列だけ色を変えることは出来ない。 一部だけ変える場合には m_text.SetStyle(最初の文字位置, 終わりの文字位置, 色) で…

【MATLAB, C++, Python】C++(.dll)でMATLABエンジンを呼び出す際の落とし穴

落とし穴1 MATLAB R2017b以前と以降とでC++からMATLABを呼び出す方法が変わった模様。 engOpen(NULL) で呼び出す方法はR2017b以前まで。 C からの MATLAB の呼び出し - MATLAB & Simulink - MathWorks 日本 同方法で MATLAB R2020を呼び出すとMATLABのウィン…

【ロゴ】自動ロゴ作成サービス

Appを起動した直後に表示するSplash用の画像を作るために利用。 かなりかっこよくてデザインセンスのない当方には大変助かります…。hatchful.shopify.com

【Python】WxFormBuilder GenerateCodeのファイル名、書き出し方法覚え書き

WxFormBuilderで作ったGUIをファイルに書き出す際の設定/やり方を毎回忘れるので覚え書き。 親クラス名 Projectを選択した時のProperties内、 "name"がクラス名、"file"が書き出されるファイル名になる 個人的にはPrefixで”_”を(コードを直接編集することは…

【Android】見栄え良さそうなアイコンライブラリ ~Android Bootstrap

qiita.com

【Arduino】MicroでSPI通信を使用するときのCS(SS)ピン

Arduino MicorでSPI通信するときのCSピンの件。色々なところのピン配図を見ると#8がSSとなっている。 なのでそのように配線してプログラム上でのSPIピンを#8として コーディングしても一向にSPIが通信スタートせず。。どうやらMicroは通常のデジタルピンをC…

【Arduino】MCP2515で受信するCAN信号のフィルタ方法 ~MaskとFilterの使用方法

MCP2515というCANコントローラは 2個の受け入れマスク(2個受信バッファがあり、各バッファに1つずつ)と 6個の受け入れフィルタがあって、これをしっかり設定しないと意図したメッセージが取得できない。SeeedのCAN_BUS_Shieldを使う。READMEがわかりやすくて…

【Android】各ビューを重ね合わせて表示 ~FrameLayoutの使い方

FrameLayoutを使うと各ビューが重ねて表示できるので便利。下記は前の円形プログレスバーの中央にTextViewでプログレスバーの数値を表示したもの。

【Android】This view is not constrained というエラー

恐らくAndroidStudioでEmptyActivityを選択するとConstraintLayoutが自動的に使われるのが原因かと思われる。エラーは「This view is not constrained, it only has designtime positions, so it will jump to (0,0) unless you add constraints」 Constrain…

【Android】円形のインジケータ -> ProgressBarクラスの応用

最初はMPAndroidChartの円グラフを応用して作ろうと考えていたのだけど、 Androidのプログレスバーを応用すると簡単に作れそうなことが判明。円状プログレスバーのスタート地点を自由に選べたり、色をグラデーションにできたりと意外に自由度がある。 使い方…