
STM32-F746NG-DISCO Project.
Dependencies: BSP_DISCO_F746NG
main.cpp
- Committer:
- chri721u
- Date:
- 2020-01-07
- Revision:
- 0:6b60860a3ffe
- Child:
- 1:0c13955ae7ae
File content as of revision 0:6b60860a3ffe:
#include "mbed.h" #include "SPI_TFT.h" #include "stm32746g_discovery_lcd.h" /* Author: Christian Andresen Date: 07-01-2020 Brief: Basic arduino project involving sensors (Touch), digital output (Buzzer), and onboard LCD Screen. */ // D2-D4: DigitalIN, D5-D8: DigitalOut DigitalIn button(D2); DigitalIn touch(D3); DigitalOut led(D5); DigitalOut buzzer(D6); void bluescreen(); int button_count; int touch_count; // Main part of the program int main() { button_count = 0; touch_count = 0; // Boot up LCD screen BSP_LCD_Init(); BSP_LCD_LayerDefaultInit(LTDC_ACTIVE_LAYER, LCD_FB_START_ADDRESS); BSP_LCD_SelectLayer(LTDC_ACTIVE_LAYER); // Clear the screen, add black background and red text BSP_LCD_Clear(LCD_COLOR_BLACK); BSP_LCD_SetBackColor(LCD_COLOR_BLACK); BSP_LCD_SetTextColor(LCD_COLOR_RED); // Bootup Message BSP_LCD_DisplayStringAt(0, 130, (uint8_t *) "SYSTEM BOOTING", CENTER_MODE); HAL_Delay(10000); // Change LCD Screen BSP_LCD_Clear(LCD_COLOR_BLACK); //Message On Screen BSP_LCD_DisplayStringAt(0, 50, (uint8_t *) "HELLDROP STUDIO SOFTWARE", CENTER_MODE); //(uint8_t *)buffer BSP_LCD_DisplayStringAt(0, 100, (uint8_t *)"BUTTON COUNT: %d" + button_count, CENTER_MODE); BSP_LCD_DisplayStringAt(0, 150, (uint8_t *)"Touch count: %d" + touch_count, CENTER_MODE); // While device is on, do.. while(1) { // If the button is pressed, do.. if(button) { led = 1; // LED is ON buzzer = 1; button_count++; } // Else if Touch Sensor is touched, do.. else if(touch) { led = 1; touch_count++; } // Else, turn off LED else { led = 0; buzzer = 0; } } } void bluescreen() { HAL_Delay(25000); //BLUE SCREEN OF DEATH BSP_LCD_Clear(LCD_COLOR_BLUE); BSP_LCD_SetBackColor(LCD_COLOR_BLUE); BSP_LCD_SetTextColor(LCD_COLOR_WHITE); BSP_LCD_DisplayStringAt(0, 50, (uint8_t *) ":(", CENTER_MODE); BSP_LCD_DisplayStringAt(0, 80, (uint8_t *) "This device has encountered", CENTER_MODE); BSP_LCD_DisplayStringAt(0, 110, (uint8_t *) "a fatal error.", CENTER_MODE); BSP_LCD_DisplayStringAt(0, 140, (uint8_t *) "Please Reboot.", CENTER_MODE); BSP_LCD_DisplayStringAt(0, 170, (uint8_t *) "HAL Error", CENTER_MODE); } void counter() { }