FRDM_wahadlo_torsyjne

Dependencies:   mbed BufferedSerial

Fork of FRDM_wahadlo_torsyjne by Wojciech M

main.cpp

Committer:
Pawel_13
Date:
2014-06-10
Revision:
6:9414a292d7f2
Parent:
5:1e2e73ac4bed
Child:
7:4720c7891ba4
Child:
8:434d613f0929

File content as of revision 6:9414a292d7f2:

#include "mbed.h"

int motor_PWM_period_us = 300;         //deklaracja zmiennych

DigitalOut direction(PTC7);     //wyjście PTC7 jako kierunek obrotów
DigitalOut myled(LED_GREEN);    //dioda zielona jako wizualizacja PWM
AnalogIn ain0(PTB0);            //deklaracja wejść analogowych
//AnalogIn ain1(PTB1);

PwmOut motor(PTA5);             //sygnał PWM do sterowania sterownikiem silnika krokowego
Serial pc(USBTX,USBRX);         // komunikacja z PC

float get_voltage_in(AnalogIn analog_in) {
    return analog_in.read() * 2.9035; // kalibracja -0.01% wartości odczytanej
}

int main() {
    
    motor.period_us(motor_PWM_period_us);
    motor = 0.5f;               //wypełnienie zawsze 50%
    pc.baud(115200);

    int i_start = 0;
    int SWITCH_DIR = 120;
    
    while (true) {        
        wait_us(motor_PWM_period_us);
        pc.printf("%.4f\n", get_voltage_in(ain0));        
        
//        pc.printf("a1:%d\n",ain1.read_u16());
        i_start += 1;
        if (i_start == SWITCH_DIR) {
            i_start = 0;
            myled = !myled;
            direction = !direction;
            if (SWITCH_DIR == 120) {
                SWITCH_DIR = 240;
                }            
            }
        
        
        //zmiana czestotliwosci ifami tutaj
        

    }
}