FFT アナライザ このプログラムの説明は,CQ出版社「トランジスタ技術」の2021年10月号から開始された連載記事「STM32マイコンではじめるPC計測」の中にあります.このプログラムといっしょに使うPC側のプログラムについても同誌を参照してください.

Dependencies:   Array_Matrix mbed SerialTxRxIntr DSP_ADDA UIT_FFT_Real Window

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers MSeq16.hpp Source File

MSeq16.hpp

00001 //---------------------------------------------------------
00002 //  M 系列信号発生器(N = 16)
00003 //
00004 //  2021/09/28, Copyright (c) 2021 MIKAMI, Naoki
00005 //---------------------------------------------------------
00006 
00007 #include "mbed.h"
00008 
00009 #ifndef MSEQ16_HPP
00010 #define MSEQ16_HPP
00011 
00012 namespace Mikami
00013 {
00014     class MSeq16
00015     {
00016     public:
00017         MSeq16() : reg_(1) {}
00018 
00019         // 戻り値: 0 => -0.5, 1 => 0.5
00020         float Execute()
00021         {
00022             msb_ = reg_ >> 15;
00023             reg_ = ((reg_ ^ XOR_[msb_]) << 1) | msb_;
00024             return RET_[msb_];
00025         }
00026     private:
00027         static const uint16_t XOR_[2];  // XOR の一方の入力
00028         static const float RET_[2];     // 戻り値として使用
00029         uint16_t reg_;  // 16 段の D フリップ・フロップに対応
00030         uint16_t msb_;  // 16 段目に相当するビット
00031     };
00032     const uint16_t MSeq16::XOR_[2] = { 0, 0x16 };
00033     const float MSeq16::RET_[2] = { -0.5f, 0.5f };  
00034 }
00035 #endif  // MSEQ16_HPP