* nfc: add emv decoder * api-hal-nfc: add data exchange api * nfc_worker: add read emv routine * nfc: add emv reader view * nfc: add support for Mastercard reading * api-hal-nfc: fix incorrect merge changes * nfc_worker: set to zero emv app object on each cycle * api-hal-nfc: add api for f6 target * nfc: move emv_decoder to lib folder Co-authored-by: あく <alleteam@gmail.com>
		
			
				
	
	
		
			42 lines
		
	
	
		
			739 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			739 B
		
	
	
	
		
			C
		
	
	
	
	
	
#pragma once
 | 
						|
 | 
						|
#include "nfc.h"
 | 
						|
#include "nfc_types.h"
 | 
						|
#include "nfc_views.h"
 | 
						|
#include "nfc_worker.h"
 | 
						|
 | 
						|
#include <furi.h>
 | 
						|
 | 
						|
#include <gui/gui.h>
 | 
						|
#include <gui/view.h>
 | 
						|
#include <gui/view_dispatcher.h>
 | 
						|
#include <assets_icons.h>
 | 
						|
#include <cli/cli.h>
 | 
						|
 | 
						|
#include <menu/menu.h>
 | 
						|
#include <menu/menu_item.h>
 | 
						|
#include <gui/modules/submenu.h>
 | 
						|
 | 
						|
struct Nfc {
 | 
						|
    osMessageQueueId_t message_queue;
 | 
						|
 | 
						|
    NfcWorker* worker;
 | 
						|
 | 
						|
    Gui* gui;
 | 
						|
 | 
						|
    Submenu* submenu;
 | 
						|
 | 
						|
    View* view_detect;
 | 
						|
    View* view_read_emv;
 | 
						|
    View* view_emulate;
 | 
						|
    View* view_field;
 | 
						|
    View* view_cli;
 | 
						|
    View* view_error;
 | 
						|
    ViewDispatcher* view_dispatcher;
 | 
						|
};
 | 
						|
 | 
						|
Nfc* nfc_alloc();
 | 
						|
 | 
						|
void nfc_start(Nfc* nfc, NfcView view_id, NfcWorkerState worker_state);
 | 
						|
 | 
						|
int32_t nfc_task(void* p); |