a fork of priustroller

Dependencies:   mbed

Fork of priustroller_current by N K

main.cpp

Committer:
bwang
Date:
2015-03-15
Revision:
31:86b87913d8e1
Parent:
30:2b6d426f3bfc
Child:
32:4e1a223fad52

File content as of revision 31:86b87913d8e1:

#include "includes.h"
#include "transforms.h"
#include "filters.h"
#include "context.h"
#include "core.h"
#include "meta.h"
#include "sensors.h"
#include "callbacks.h"
#include "isr.h"

volatile unsigned short global_ib, global_ic;
uint32_t channel_ib, channel_ic;

int main() { 
    NVIC_EnableIRQ(TIM2_IRQn);
    NVIC_SetVector(TIM2_IRQn, (uint32_t)TIM2_IRQn_Handler);
        
    Context *context = new Context();
    context->ConfigureOutputs(D6, D13, D3, D8);
    context->ConfigurePositionSensor(A4, A5, 0.249f, 0.497f, 0.231f, 0.499f, 205.0f); 
    context->ConfigureIdPidController(0.0000f, 0.0f, 0.0f, 5.0f, -5.0f);
    context->ConfigureIqPidController(0.0001f, 0.1f, 0.0f, 5.0f, -5.0f);
    context->ConfigureThrottle(A0, 0.8f, 3.0f);
    context->ConfigureCurrentSensors(A1, A2, 0.01f, 0.7f);  // I guess this configures the ADCs or something 
    context->ConfigureReference(5.0f);
    context->ConfigureDebugger(2, 1000);
    context->AttachCallBack(&fast, 5000);
    context->AttachCallBack(&slow, 10);
    context->AttachCallBack(&debug, 10);
    context->AttachCallBack(&log, 500);
    context->InitData();
    context->Start();
}