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

Dependencies:   Array_Matrix mbed SerialTxRxIntr DSP_ADDA UIT_FFT_Real Window

MSeq16.hpp

Committer:
MikamiUitOpen
Date:
2021-11-03
Revision:
1:d9dbfbe95c8d
Parent:
0:e5fc70976c00

File content as of revision 1:d9dbfbe95c8d:

//---------------------------------------------------------
//	M 系列信号発生器(N = 16)
//
//	2021/09/28, Copyright (c) 2021 MIKAMI, Naoki
//---------------------------------------------------------

#include "mbed.h"

#ifndef MSEQ16_HPP
#define MSEQ16_HPP

namespace Mikami
{
	class MSeq16
	{
	public:
		MSeq16() : reg_(1) {}

		// 戻り値: 0 => -0.5, 1 => 0.5
		float Execute()
		{
			msb_ = reg_ >> 15;
			reg_ = ((reg_ ^ XOR_[msb_]) << 1) | msb_;
			return RET_[msb_];
		}
	private:
		static const uint16_t XOR_[2];	// XOR の一方の入力
		static const float RET_[2];		// 戻り値として使用
		uint16_t reg_;	// 16 段の D フリップ・フロップに対応
		uint16_t msb_;	// 16 段目に相当するビット
	};
	const uint16_t MSeq16::XOR_[2] = { 0, 0x16 };
	const float MSeq16::RET_[2] = { -0.5f, 0.5f };	
}
#endif	// MSEQ16_HPP