POTを並べたコントロール・パネルもつなげてみた。入力にはAnalogInの読み取り値を移動平均する自作のAverageInクラス(「mbedのAnalogInでPotentiometerの読み取り値のふらつきを抑える。」)を使った。
配線図
BaseMachine_Sequencer(mbed):
https://developer.mbed.org/users/ryood/code/BaseMachine_Sequencer_Test/
Github:
https://github.com/ryood/BaseMachine_Sequencer
これでつなぐ予定のユーザー・インターフェイス用のデバイスは全部つなげた(^q^/
メモ:
順番に機能を追加して行ったら、実行時にmbed assertation failed: _ptr == (T *)&_data, file: C:/Jenkins/workspace/mbed-2-build-library/.build/mbed/SingletonPtr.h, line 84というエラーが出るようになってしまった。
プロジェクト内でいろいろやったが、RTOSを使いつつAnalogInとst7567を同時使用するとこのエラーが出る。シンプルな状態にしてもこのエラーが出る。(プロジェクト内から不要なライブラリも削除)
#include "mbed.h" #include "rtos.h" #include "st7565LCD.h" //ST7565(PinName mosi, PinName sclk, PinName cs, PinName rst, PinName a0); ST7565 gLCD(PB_15, PB_13, PB_12, PB_2, PB_1); AnalogIn Ain(A4); int main() { printf("\r\n*** st7567 & AnalogIn Test ***\r\n"); gLCD.begin(0x10); while (true) { char buff[32]; sprintf(buff, "Ain: %6u", Ain.read_u16()); gLCD.drawstring(0, 0, buff); gLCD.display(); wait(0.1); } }
プロジェクトを一から作りなおしたら動作した(@@;
0 件のコメント:
コメントを投稿