EMIR - Ekvitermní mikroprocesorová regulace https://code.google.com/p/emir/ https://code.google.com/p/emir/wiki/DesignV3

Dependencies:   ConfigFile DS1307 OneWire SDFileSystem USBDeviceLite mbed-rtos mbed

Committer:
alpov
Date:
Wed May 28 13:58:06 2014 +0000
Revision:
5:5c8e97742751
Parent:
4:9065e9ccb078
SD card access, logging, configuration files

Who changed what in which revision?

UserRevisionLine numberNew contents of line
alpov 3:ede67e9b60eb 1 #include "mbed.h"
alpov 5:5c8e97742751 2 #include "mbed_debug.h"
alpov 3:ede67e9b60eb 3 #include "rtos.h"
alpov 3:ede67e9b60eb 4 #include "sensor.h"
alpov 3:ede67e9b60eb 5 #include "comm.h"
alpov 5:5c8e97742751 6 #include "sd.h"
alpov 3:ede67e9b60eb 7
alpov 3:ede67e9b60eb 8 DigitalOut ledR(LED_RED, 1);
alpov 3:ede67e9b60eb 9 DigitalOut ledG(LED_GREEN, 1);
alpov 3:ede67e9b60eb 10 //DigitalOut ledB(LED_BLUE, 1);
alpov 3:ede67e9b60eb 11
alpov 3:ede67e9b60eb 12 DigitalOut OUT1(D2, 0);
alpov 3:ede67e9b60eb 13 DigitalOut OUT2(D3, 0);
alpov 3:ede67e9b60eb 14 DigitalOut OUT3(D4, 0);
alpov 3:ede67e9b60eb 15 DigitalOut OUT4(D5, 0);
alpov 3:ede67e9b60eb 16
alpov 3:ede67e9b60eb 17 DigitalIn IN1(D8, PullUp);
alpov 3:ede67e9b60eb 18 DigitalIn IN2(D9, PullUp);
alpov 3:ede67e9b60eb 19
alpov 3:ede67e9b60eb 20 extern "C" void HardFault_Handler()
alpov 3:ede67e9b60eb 21 {
alpov 3:ede67e9b60eb 22 mbed_die();
alpov 3:ede67e9b60eb 23 }
alpov 3:ede67e9b60eb 24
alpov 3:ede67e9b60eb 25 int main(void)
alpov 3:ede67e9b60eb 26 {
alpov 5:5c8e97742751 27 debug("\n\n\nEMIRv2 compiled " __DATE__ " " __TIME__ "\n");
alpov 4:9065e9ccb078 28
alpov 5:5c8e97742751 29 debug("Initializing SD... ");
alpov 5:5c8e97742751 30 sd_init();
alpov 5:5c8e97742751 31
alpov 5:5c8e97742751 32 debug("Starting threads... ");
alpov 3:ede67e9b60eb 33 Thread sensor(sensor_thread, NULL, osPriorityNormal, DEFAULT_STACK_SIZE);
alpov 3:ede67e9b60eb 34 Thread comm(comm_thread, NULL, osPriorityNormal, DEFAULT_STACK_SIZE);
alpov 5:5c8e97742751 35 debug("done\n");
alpov 3:ede67e9b60eb 36
alpov 3:ede67e9b60eb 37 OUT1 = 1;
alpov 3:ede67e9b60eb 38 OUT2 = 1;
alpov 3:ede67e9b60eb 39 OUT3 = 1;
alpov 3:ede67e9b60eb 40 OUT4 = 1;
alpov 5:5c8e97742751 41 wait(0.5);
alpov 3:ede67e9b60eb 42 OUT1 = 0;
alpov 3:ede67e9b60eb 43 OUT2 = 0;
alpov 3:ede67e9b60eb 44 OUT3 = 0;
alpov 3:ede67e9b60eb 45 OUT4 = 0;
alpov 3:ede67e9b60eb 46
alpov 5:5c8e97742751 47 int i = 0;
alpov 3:ede67e9b60eb 48 while (1)
alpov 3:ede67e9b60eb 49 {
alpov 3:ede67e9b60eb 50 ledG = !ledG;
alpov 5:5c8e97742751 51 Thread::wait(100);
alpov 5:5c8e97742751 52
alpov 5:5c8e97742751 53 if (i++ >= 100) {
alpov 5:5c8e97742751 54 write_config();
alpov 5:5c8e97742751 55 i = 0;
alpov 5:5c8e97742751 56 }
alpov 3:ede67e9b60eb 57 }
alpov 3:ede67e9b60eb 58
alpov 3:ede67e9b60eb 59 }
alpov 3:ede67e9b60eb 60