School project.

Dependencies:   Timezone NTPClient BSP_DISCO_F746NG Grove_temperature

main.cpp

Committer:
tuxx0046
Date:
2021-01-15
Revision:
10:137cf2c92871
Parent:
9:fd1f07a4a0ff
Child:
11:f3e516401328

File content as of revision 10:137cf2c92871:

/**
******************************************************************************
@file    main.cpp
@author  Tu Tri Huynh
@date    January 13, 2021
@brief   Light Control System to automatically dimmer or increase light levels
@section Libraries used
 
BSP_DISCO_F746NG, revision 13:85dbcff by Team ST
 
@section Recommended hardware
STM32F746G-DISCOVERY
Grove Base Shield v2.1
Grove Light Sensor  v1.2    
Grove Rotary Angle Sensor v1.2
Grove LED Socket Kit v1.5
Grove LED diode
Grove Button v1.2
******************************************************************************
*/

#include "mbed.h"

AnalogIn light_sensor(A0);
AnalogIn rotary(A1);
PwmOut led(D3);

char building[31];
char room[31];

/** DigitalOut myled(LED1); */

#include "helper_functions.h"
#include "setup_functions.h"
#include "lcd_functions.h"
#include "led_functions.h"
#include "rotary_functions.h"
#include "sc_functions.h"


int main(){
    
    lcd_initialize();
    lcd_show_setup_screen();
    setup_run_setup();
    
    Thread serial_communication;
    serial_communication.start(&sc_run_service);
    
    float light_sensor_reading;
    float rotary_reading;
    while(1)
    {
        /** Code for testing that the rotary can control the LED light blinking 
            1/14/2021 Working
        */
        /*
        rotary_reading = rotary_reverse_read(rotary);
        printf("%1.2f\n",rotary_reading);
        led_set_blink_rate(rotary_reading);
        wait_us(2000000);
        */
        
        /** Code for testing if rotary has been turned or not 
            1/14/2021 Working
        */
        /**
        if (rotary_is_on(rotary))
        {
            printf("Rotary is on\n");
        }
        else
        {
            printf("Rotary is off\n");
        }
        wait_us(1000000);
        */
        
        /** Code for testing sensor readings
            1/14/2021 Working 
        */
        /**
        light_sensor_reading = light_sensor.read();
        rotary_reading = rotary.read();
        printf("Light intensity: %i%%\n", helper_get_sensor_read_in_percent(light_sensor_reading));
        printf("Rotary turned: %i%%\n", helper_get_sensor_read_in_percent(rotary_reading));
        led_set_blink_rate(light_sensor_reading);
        wait_us(1000000);
        */
        
        /** 1/13/2021 Used to test the controller and make sure that it functions.*/
        /**
        printf("This is a test.\n");
        myled = 1;
        wait_us(1000000);
        myled = 0;        
        wait_us(1000000);
        */
    }

    /**
    printf("Mbed OS version: %d,%d,%d\n\n",MBED_MAJOR_VERSION, MBED_MINOR_VERSION, MBED_PATCH_VERSION);
    */
}