/**** Includes ****/
#include "utils/utils.h"

#include "dccd/dccd_hw.h"
#include "dccd/dccd.h"

/**** Private definitions ****/
/**** Private constants ****/
/**** Private variables ****/
static dccd::DccdHw dccd_hw;
static dccd::DccdApp app;

/**** Private function declarations ****/
/**** Public function definitions ****/
int main(void)
{
	// Setup
	dccd::DccdHw::dccdHwCfg_t cfg;
	cfg.handbrake_pull_up = 1;
	cfg.pwm_f_khz = 16;
	cfg.speed_hall = 0;
	cfg.counter_step_us = 2000;
	dccd_hw.init(&cfg);
	
	app.init(&dccd_hw);
	
	// Super loop
	while(1)
	{	
		// Do stuff
		app.process();
		// End of super loop
		continue; 
	}
	
	// Escape the matrix
	return 0;
}

/**** Private function definitions ***/