Simplified oscilloscope using DISCO-F746. Input: MEMS microphone. DISCO-F746 による簡易オシロスコープ.入力:MEMS マイク.
Dependencies: F746_GUI F746_SAI_IO mbed
Diff: WaveformDisplay.cpp
- Revision:
- 2:1fa4647505bf
- Parent:
- 1:a53d220362d4
- Child:
- 3:dc29fbcf1b48
diff -r a53d220362d4 -r 1fa4647505bf WaveformDisplay.cpp --- a/WaveformDisplay.cpp Wed Mar 15 02:03:39 2017 +0000 +++ b/WaveformDisplay.cpp Thu Mar 16 00:09:03 2017 +0000 @@ -10,28 +10,28 @@ void WaveformDisplay::Execute() { // 以前の波形を消去 - lcd_->SetTextColor(BACK_COLOR_); - lcd_->FillRect(X0_, Y0_-LIMIT_, N_DATA_, LIMIT_*2+1); + lcd_.SetTextColor(BACK_COLOR_); + lcd_.FillRect(X0_, Y0_-LIMIT_, N_DATA_, LIMIT_*2+1); // 横軸の描画 - lcd_->SetTextColor(LCD_COLOR_CYAN); - lcd_->DrawLine(X0_-5, Y0_, X0_+N_DATA_+5, Y0_); + lcd_.SetTextColor(LCD_COLOR_CYAN); + lcd_.DrawLine(X0_-5, Y0_, X0_+N_DATA_+5, Y0_); // 波形の描画 - lcd_->SetTextColor(LCD_COLOR_WHITE); + lcd_.SetTextColor(LCD_COLOR_WHITE); uint16_t x1 = X0_; uint16_t y1 = Clip(xn_[0]); for (int n=1; n<N_DATA_; n++) { uint16_t x2 = X0_ + n; uint16_t y2 = Clip(xn_[n]); - lcd_->DrawLine(x1, y1, x2, y2); + lcd_.DrawLine(x1, y1, x2, y2); x1 = x2; y1 = y2; } } -// 縦方向のクリッピングとと縦方向の位置の移動 +// 縦方向のクリッピングと縦方向の位置の移動 uint16_t WaveformDisplay::Clip(int16_t xn) { int16_t x = xn >> R_SHIFT_; // スケーリング