* ToolBox: add manchester-decoder and manchester-encoder * SubGhz: add new FM config cc1101 * Subghz: add protocol Kia * SubGhz: fix receiving the last packet Nero Radio * SubGhz: app protocol CAME Twin (TW2EE/TW4EE) * SubGhz: add protocol CAME Atomo (AT03EV/ AT04EV) * F7: sync with F6 * SubGhz: add frequency analyzer * SubGhz: remove space from file name * SubGhz: frequency analyzer add filter and fix view * [FL-1939] GubGhz: Frequency analyzer redesign * SubGhz: fix incorrect subghz api call sequence in frequency analyzer worker Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
		
			
				
	
	
		
			22 lines
		
	
	
		
			464 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			464 B
		
	
	
	
		
			C++
		
	
	
	
	
	
#pragma once
 | 
						|
#include <stdint.h>
 | 
						|
#include <atomic>
 | 
						|
#include <lib/toolbox/manchester-decoder.h>
 | 
						|
#include "protocols/protocol-emmarin.h"
 | 
						|
class DecoderEMMarin {
 | 
						|
public:
 | 
						|
    bool read(uint8_t* data, uint8_t data_size);
 | 
						|
    void process_front(bool polarity, uint32_t time);
 | 
						|
 | 
						|
    DecoderEMMarin();
 | 
						|
 | 
						|
private:
 | 
						|
    void reset_state();
 | 
						|
 | 
						|
    uint64_t readed_data = 0;
 | 
						|
    std::atomic<bool> ready;
 | 
						|
 | 
						|
    ManchesterState manchester_saved_state;
 | 
						|
    ProtocolEMMarin em_marin;
 | 
						|
};
 |