
Template Software STM32F429 Discovery Kit with SCD41 CO2 Sensor
Dependencies: LCD_DISCO_F429ZI TS_DISCO_F429ZI BSP_DISCO_F429ZI
main.cpp@13:aff8e9f42652, 2022-03-22 (annotated)
- Committer:
- garj
- Date:
- Tue Mar 22 10:19:59 2022 +0000
- Revision:
- 13:aff8e9f42652
- Parent:
- 12:98dd45560c50
update to SCD41
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bcostm | 0:91c6ab790bd7 | 1 | #include "mbed.h" |
bcostm | 0:91c6ab790bd7 | 2 | #include "TS_DISCO_F429ZI.h" |
bcostm | 0:91c6ab790bd7 | 3 | #include "LCD_DISCO_F429ZI.h" |
bcostm | 0:91c6ab790bd7 | 4 | |
garj | 5:49f24d9bfae9 | 5 | |
bcostm | 0:91c6ab790bd7 | 6 | int main() |
bcostm | 0:91c6ab790bd7 | 7 | { |
garj | 11:88e21ca9d6c8 | 8 | LCD_DISCO_F429ZI lcd; |
garj | 11:88e21ca9d6c8 | 9 | TS_DISCO_F429ZI ts; |
bcostm | 0:91c6ab790bd7 | 10 | TS_StateTypeDef TS_State; |
bcostm | 0:91c6ab790bd7 | 11 | uint16_t x, y; |
bcostm | 0:91c6ab790bd7 | 12 | uint8_t text[30]; |
bcostm | 0:91c6ab790bd7 | 13 | uint8_t status; |
garj | 11:88e21ca9d6c8 | 14 | |
bcostm | 0:91c6ab790bd7 | 15 | BSP_LCD_SetFont(&Font20); |
bcostm | 0:91c6ab790bd7 | 16 | |
garj | 6:3470127df0ab | 17 | lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"EXTREMELY", CENTER_MODE); |
garj | 6:3470127df0ab | 18 | lcd.DisplayStringAt(0, LINE(6), (uint8_t *)"COOL", CENTER_MODE); |
garj | 6:3470127df0ab | 19 | lcd.DisplayStringAt(0, LINE(7), (uint8_t *)"EMPA", CENTER_MODE); |
garj | 6:3470127df0ab | 20 | lcd.DisplayStringAt(0, LINE(8), (uint8_t *)"TRAINING", CENTER_MODE); |
garj | 12:98dd45560c50 | 21 | ThisThread::sleep_for(3000); |
bcostm | 0:91c6ab790bd7 | 22 | |
bcostm | 0:91c6ab790bd7 | 23 | status = ts.Init(lcd.GetXSize(), lcd.GetYSize()); |
bcostm | 0:91c6ab790bd7 | 24 | |
bcostm | 0:91c6ab790bd7 | 25 | if (status != TS_OK) |
bcostm | 0:91c6ab790bd7 | 26 | { |
bcostm | 0:91c6ab790bd7 | 27 | lcd.Clear(LCD_COLOR_RED); |
bcostm | 0:91c6ab790bd7 | 28 | lcd.SetBackColor(LCD_COLOR_RED); |
bcostm | 0:91c6ab790bd7 | 29 | lcd.SetTextColor(LCD_COLOR_WHITE); |
bcostm | 0:91c6ab790bd7 | 30 | lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN", CENTER_MODE); |
bcostm | 0:91c6ab790bd7 | 31 | lcd.DisplayStringAt(0, LINE(6), (uint8_t *)"INIT FAIL", CENTER_MODE); |
garj | 6:3470127df0ab | 32 | lcd.DisplayStringAt(0, LINE(7), (uint8_t *)"WTF DID YOU DO?!", CENTER_MODE); |
bcostm | 0:91c6ab790bd7 | 33 | } |
bcostm | 0:91c6ab790bd7 | 34 | else |
bcostm | 0:91c6ab790bd7 | 35 | { |
bcostm | 0:91c6ab790bd7 | 36 | lcd.Clear(LCD_COLOR_GREEN); |
bcostm | 0:91c6ab790bd7 | 37 | lcd.SetBackColor(LCD_COLOR_GREEN); |
bcostm | 0:91c6ab790bd7 | 38 | lcd.SetTextColor(LCD_COLOR_WHITE); |
bcostm | 0:91c6ab790bd7 | 39 | lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN", CENTER_MODE); |
bcostm | 0:91c6ab790bd7 | 40 | lcd.DisplayStringAt(0, LINE(6), (uint8_t *)"INIT OK", CENTER_MODE); |
garj | 6:3470127df0ab | 41 | lcd.DisplayStringAt(0, LINE(7), (uint8_t *)"(YOU WERE LUCKY!)", CENTER_MODE); |
bcostm | 0:91c6ab790bd7 | 42 | } |
bcostm | 0:91c6ab790bd7 | 43 | |
garj | 12:98dd45560c50 | 44 | ThisThread::sleep_for(3000); |
bcostm | 0:91c6ab790bd7 | 45 | lcd.Clear(LCD_COLOR_BLUE); |
bcostm | 0:91c6ab790bd7 | 46 | lcd.SetBackColor(LCD_COLOR_BLUE); |
bcostm | 0:91c6ab790bd7 | 47 | lcd.SetTextColor(LCD_COLOR_WHITE); |
bcostm | 0:91c6ab790bd7 | 48 | |
garj | 6:3470127df0ab | 49 | //this loops forever and ever and ever ... :-O |
bcostm | 0:91c6ab790bd7 | 50 | while(1) |
bcostm | 0:91c6ab790bd7 | 51 | { |
bcostm | 0:91c6ab790bd7 | 52 | |
bcostm | 0:91c6ab790bd7 | 53 | ts.GetState(&TS_State); |
bcostm | 0:91c6ab790bd7 | 54 | if (TS_State.TouchDetected) |
bcostm | 0:91c6ab790bd7 | 55 | { |
bcostm | 0:91c6ab790bd7 | 56 | x = TS_State.X; |
bcostm | 0:91c6ab790bd7 | 57 | y = TS_State.Y; |
bcostm | 0:91c6ab790bd7 | 58 | sprintf((char*)text, "x=%d y=%d ", x, y); |
bcostm | 0:91c6ab790bd7 | 59 | lcd.DisplayStringAt(0, LINE(0), (uint8_t *)&text, LEFT_MODE); |
bcostm | 0:91c6ab790bd7 | 60 | } |
bcostm | 0:91c6ab790bd7 | 61 | } |
bcostm | 0:91c6ab790bd7 | 62 | } |