Nucleo ボードの USB コネクタに対応するシリアルポート受送信割込みで,複数のキャラクタ受送信をサポ-トするクラス.   このライブラリを登録した際のプログラム: Demo_F446_AD_DA_Ctrl.

Dependents:   F446_FunctionGenerator F446_UpSampling_GraphicEqualizer F446_UpSampling_ReverbSystem F446_UpSampling_FrqShifter_Weaver ... more

Committer:
MikamiUitOpen
Date:
Mon Jun 11 10:38:25 2018 +0000
Revision:
0:6b652858f92d
Child:
2:f6e15c19dd75
1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:6b652858f92d 1 //-------------------------------------------------------------
MikamiUitOpen 0:6b652858f92d 2 // Nucleo ボードの USB コネクタに対応するシリアルポート受送信割込みで
MikamiUitOpen 0:6b652858f92d 3 // 複数のキャラクタ受送信をサポ-トするクラス
MikamiUitOpen 0:6b652858f92d 4 //
MikamiUitOpen 0:6b652858f92d 5 // "\r" を受信した場合に,複数キャラクタの受信の終了とする
MikamiUitOpen 0:6b652858f92d 6 // キャラクタの数はデフォルトで 32 まで
MikamiUitOpen 0:6b652858f92d 7 //
MikamiUitOpen 0:6b652858f92d 8 // ボーレートのデフォルト値は 9,600 boud
MikamiUitOpen 0:6b652858f92d 9 // Nucleo-F446RE の場合,ファームウェアの更新をしなくても
MikamiUitOpen 0:6b652858f92d 10 // 115,200 boud までは動作可能
MikamiUitOpen 0:6b652858f92d 11 //
MikamiUitOpen 0:6b652858f92d 12 // 2018/06/09, Copyright (c) 2018 MIKAMI, Naoki
MikamiUitOpen 0:6b652858f92d 13 //-------------------------------------------------------------
MikamiUitOpen 0:6b652858f92d 14
MikamiUitOpen 0:6b652858f92d 15 #include "mbed.h"
MikamiUitOpen 0:6b652858f92d 16 #include <string>
MikamiUitOpen 0:6b652858f92d 17 #include "SerialTxIntr.hpp"
MikamiUitOpen 0:6b652858f92d 18
MikamiUitOpen 0:6b652858f92d 19 class SerialRxTxIntr
MikamiUitOpen 0:6b652858f92d 20 {
MikamiUitOpen 0:6b652858f92d 21 public:
MikamiUitOpen 0:6b652858f92d 22 SerialRxTxIntr(int maxChar = 32, int baud = 9600);
MikamiUitOpen 0:6b652858f92d 23
MikamiUitOpen 0:6b652858f92d 24 // メッセージの終了であればそのメッセージを保存し true を返す
MikamiUitOpen 0:6b652858f92d 25 bool IsEol();
MikamiUitOpen 0:6b652858f92d 26 // バッファの内容を取得
MikamiUitOpen 0:6b652858f92d 27 string GetBuffer() { return buffer2_; }
MikamiUitOpen 0:6b652858f92d 28 // 文字列の送信
MikamiUitOpen 0:6b652858f92d 29 void Tx(string str);
MikamiUitOpen 0:6b652858f92d 30
MikamiUitOpen 0:6b652858f92d 31 private:
MikamiUitOpen 0:6b652858f92d 32 Serial pc_;
MikamiUitOpen 0:6b652858f92d 33 SerialTxIntr tx_;
MikamiUitOpen 0:6b652858f92d 34
MikamiUitOpen 0:6b652858f92d 35 static int rxMax_; // 受信バッファのサイズ
MikamiUitOpen 0:6b652858f92d 36 static __IO bool eol_; // "\r" を受信した場合に true
MikamiUitOpen 0:6b652858f92d 37 static string rxBuffer_; // 受信バッファ
MikamiUitOpen 0:6b652858f92d 38 string buffer2_; // 受信バッファの内容を保存しておくバッファ
MikamiUitOpen 0:6b652858f92d 39
MikamiUitOpen 0:6b652858f92d 40 // シリアル・ポートの受信割り込みに対する割り込みサービス・ルーチン
MikamiUitOpen 0:6b652858f92d 41 void RxIsr();
MikamiUitOpen 0:6b652858f92d 42 };