SWO+USB Serial+TouchScreen Demo
Dependencies: BSP_DISCO_F429ZI LCD_DISCO_F429ZI SWO TS_DISCO_F429ZI USBDEVICE mbed storage_on_flash
Fork of DISCO-F429ZI_LCDTS_demo by
main.cpp@5:b69870b843f3, 2017-06-27 (annotated)
- Committer:
- pierrebizouard
- Date:
- Tue Jun 27 13:16:07 2017 +0000
- Revision:
- 5:b69870b843f3
- Parent:
- 4:86d291139659
- Child:
- 6:7812b342d945
initial demo version!
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
pierrebizouard | 4:86d291139659 | 1 | //#define USB_STM_HAL |
pierrebizouard | 4:86d291139659 | 2 | //#define DISCO |
pierrebizouard | 4:86d291139659 | 3 | |
bcostm | 0:91c6ab790bd7 | 4 | #include "mbed.h" |
bcostm | 0:91c6ab790bd7 | 5 | #include "TS_DISCO_F429ZI.h" |
bcostm | 0:91c6ab790bd7 | 6 | #include "LCD_DISCO_F429ZI.h" |
pierrebizouard | 3:9b242573a271 | 7 | #include "USBSerial.h" |
pierrebizouard | 5:b69870b843f3 | 8 | #include "SWO.h" |
bcostm | 0:91c6ab790bd7 | 9 | |
pierrebizouard | 4:86d291139659 | 10 | LCD_DISCO_F429ZI lcd; |
pierrebizouard | 4:86d291139659 | 11 | TS_DISCO_F429ZI ts; |
pierrebizouard | 4:86d291139659 | 12 | |
pierrebizouard | 5:b69870b843f3 | 13 | SWO_Channel swo; |
pierrebizouard | 4:86d291139659 | 14 | USBSerial ser; |
bcostm | 0:91c6ab790bd7 | 15 | |
pierrebizouard | 4:86d291139659 | 16 | |
pierrebizouard | 4:86d291139659 | 17 | |
pierrebizouard | 4:86d291139659 | 18 | int main() |
pierrebizouard | 4:86d291139659 | 19 | { |
pierrebizouard | 4:86d291139659 | 20 | TS_StateTypeDef TS_State; |
bcostm | 0:91c6ab790bd7 | 21 | uint16_t x, y; |
bcostm | 0:91c6ab790bd7 | 22 | uint8_t text[30]; |
bcostm | 0:91c6ab790bd7 | 23 | uint8_t status; |
bcostm | 0:91c6ab790bd7 | 24 | |
bcostm | 0:91c6ab790bd7 | 25 | BSP_LCD_SetFont(&Font20); |
bcostm | 0:91c6ab790bd7 | 26 | |
bcostm | 0:91c6ab790bd7 | 27 | lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN", CENTER_MODE); |
bcostm | 0:91c6ab790bd7 | 28 | lcd.DisplayStringAt(0, LINE(6), (uint8_t *)"DEMO", CENTER_MODE); |
bcostm | 0:91c6ab790bd7 | 29 | wait(1); |
bcostm | 0:91c6ab790bd7 | 30 | |
bcostm | 0:91c6ab790bd7 | 31 | status = ts.Init(lcd.GetXSize(), lcd.GetYSize()); |
bcostm | 0:91c6ab790bd7 | 32 | |
bcostm | 0:91c6ab790bd7 | 33 | if (status != TS_OK) |
bcostm | 0:91c6ab790bd7 | 34 | { |
bcostm | 0:91c6ab790bd7 | 35 | lcd.Clear(LCD_COLOR_RED); |
bcostm | 0:91c6ab790bd7 | 36 | lcd.SetBackColor(LCD_COLOR_RED); |
bcostm | 0:91c6ab790bd7 | 37 | lcd.SetTextColor(LCD_COLOR_WHITE); |
bcostm | 0:91c6ab790bd7 | 38 | lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN", CENTER_MODE); |
bcostm | 0:91c6ab790bd7 | 39 | lcd.DisplayStringAt(0, LINE(6), (uint8_t *)"INIT FAIL", CENTER_MODE); |
bcostm | 0:91c6ab790bd7 | 40 | } |
bcostm | 0:91c6ab790bd7 | 41 | else |
bcostm | 0:91c6ab790bd7 | 42 | { |
bcostm | 0:91c6ab790bd7 | 43 | lcd.Clear(LCD_COLOR_GREEN); |
bcostm | 0:91c6ab790bd7 | 44 | lcd.SetBackColor(LCD_COLOR_GREEN); |
bcostm | 0:91c6ab790bd7 | 45 | lcd.SetTextColor(LCD_COLOR_WHITE); |
bcostm | 0:91c6ab790bd7 | 46 | lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN", CENTER_MODE); |
bcostm | 0:91c6ab790bd7 | 47 | lcd.DisplayStringAt(0, LINE(6), (uint8_t *)"INIT OK", CENTER_MODE); |
bcostm | 0:91c6ab790bd7 | 48 | } |
bcostm | 0:91c6ab790bd7 | 49 | |
bcostm | 0:91c6ab790bd7 | 50 | wait(1); |
bcostm | 0:91c6ab790bd7 | 51 | lcd.Clear(LCD_COLOR_BLUE); |
bcostm | 0:91c6ab790bd7 | 52 | lcd.SetBackColor(LCD_COLOR_BLUE); |
bcostm | 0:91c6ab790bd7 | 53 | lcd.SetTextColor(LCD_COLOR_WHITE); |
bcostm | 0:91c6ab790bd7 | 54 | |
bcostm | 0:91c6ab790bd7 | 55 | while(1) |
bcostm | 0:91c6ab790bd7 | 56 | { |
pierrebizouard | 4:86d291139659 | 57 | |
bcostm | 0:91c6ab790bd7 | 58 | ts.GetState(&TS_State); |
bcostm | 0:91c6ab790bd7 | 59 | if (TS_State.TouchDetected) |
bcostm | 0:91c6ab790bd7 | 60 | { |
bcostm | 0:91c6ab790bd7 | 61 | x = TS_State.X; |
bcostm | 0:91c6ab790bd7 | 62 | y = TS_State.Y; |
bcostm | 0:91c6ab790bd7 | 63 | sprintf((char*)text, "x=%d y=%d ", x, y); |
pierrebizouard | 5:b69870b843f3 | 64 | swo.puts((char*)text); |
pierrebizouard | 5:b69870b843f3 | 65 | ser.puts((char*)text); |
bcostm | 0:91c6ab790bd7 | 66 | lcd.DisplayStringAt(0, LINE(0), (uint8_t *)&text, LEFT_MODE); |
bcostm | 0:91c6ab790bd7 | 67 | } |
bcostm | 0:91c6ab790bd7 | 68 | } |
bcostm | 0:91c6ab790bd7 | 69 | } |