wordfrequency

Dependencies:   LCD_DISCO_F429ZI mbed TS_DISCO_F429ZI BSP_DISCO_F429ZI

Committer:
kaneyn
Date:
Sat Dec 05 21:12:01 2020 +0000
Revision:
0:349c994479c8
Child:
1:586013f67abf
s

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kaneyn 0:349c994479c8 1 #include "mbed.h"
kaneyn 0:349c994479c8 2 #include "TS_DISCO_F429ZI.h"
kaneyn 0:349c994479c8 3 #include "LCD_DISCO_F429ZI.h"
kaneyn 0:349c994479c8 4
kaneyn 0:349c994479c8 5 LCD_DISCO_F429ZI lcd;
kaneyn 0:349c994479c8 6 TS_DISCO_F429ZI ts;
kaneyn 0:349c994479c8 7
kaneyn 0:349c994479c8 8
kaneyn 0:349c994479c8 9 extern "C" int32_t CountItems();
kaneyn 0:349c994479c8 10 extern "C" int32_t SumAllFrequencies();
kaneyn 0:349c994479c8 11 extern "C" uint8_t * GetWordAt(int32_t i); // NOTE: returns a pointer to a string
kaneyn 0:349c994479c8 12 extern "C" int16_t GetFreqAt(int32_t i); // NOTE: return the value of the frequency count
kaneyn 0:349c994479c8 13
kaneyn 0:349c994479c8 14 int16_t words;
kaneyn 0:349c994479c8 15
kaneyn 0:349c994479c8 16 int main()
kaneyn 0:349c994479c8 17 {
kaneyn 0:349c994479c8 18 TS_StateTypeDef TS_State;
kaneyn 0:349c994479c8 19 uint16_t x, y;
kaneyn 0:349c994479c8 20 uint8_t text[30];
kaneyn 0:349c994479c8 21 uint8_t status;
kaneyn 0:349c994479c8 22
kaneyn 0:349c994479c8 23 BSP_LCD_SetFont(&Font20);
kaneyn 0:349c994479c8 24
kaneyn 0:349c994479c8 25 lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN", CENTER_MODE);
kaneyn 0:349c994479c8 26 lcd.DisplayStringAt(0, LINE(6), (uint8_t *)"DEMO", CENTER_MODE);
kaneyn 0:349c994479c8 27 wait(1);
kaneyn 0:349c994479c8 28
kaneyn 0:349c994479c8 29 status = ts.Init(lcd.GetXSize(), lcd.GetYSize());
kaneyn 0:349c994479c8 30
kaneyn 0:349c994479c8 31 if (status != TS_OK)
kaneyn 0:349c994479c8 32 {
kaneyn 0:349c994479c8 33 lcd.Clear(LCD_COLOR_RED);
kaneyn 0:349c994479c8 34 lcd.SetBackColor(LCD_COLOR_RED);
kaneyn 0:349c994479c8 35 lcd.SetTextColor(LCD_COLOR_WHITE);
kaneyn 0:349c994479c8 36 lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN", CENTER_MODE);
kaneyn 0:349c994479c8 37 lcd.DisplayStringAt(0, LINE(6), (uint8_t *)"INIT FAIL", CENTER_MODE);
kaneyn 0:349c994479c8 38 }
kaneyn 0:349c994479c8 39 else
kaneyn 0:349c994479c8 40 {
kaneyn 0:349c994479c8 41 lcd.Clear(LCD_COLOR_GREEN);
kaneyn 0:349c994479c8 42 lcd.SetBackColor(LCD_COLOR_GREEN);
kaneyn 0:349c994479c8 43 lcd.SetTextColor(LCD_COLOR_WHITE);
kaneyn 0:349c994479c8 44 lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN", CENTER_MODE);
kaneyn 0:349c994479c8 45 lcd.DisplayStringAt(0, LINE(6), (uint8_t *)"INIT OK", CENTER_MODE);
kaneyn 0:349c994479c8 46 }
kaneyn 0:349c994479c8 47
kaneyn 0:349c994479c8 48 wait(1);
kaneyn 0:349c994479c8 49 lcd.Clear(LCD_COLOR_BLUE);
kaneyn 0:349c994479c8 50 lcd.SetBackColor(LCD_COLOR_BLUE);
kaneyn 0:349c994479c8 51 lcd.SetTextColor(LCD_COLOR_WHITE);
kaneyn 0:349c994479c8 52
kaneyn 0:349c994479c8 53 words = CountItems();
kaneyn 0:349c994479c8 54
kaneyn 0:349c994479c8 55 while(1)
kaneyn 0:349c994479c8 56 {
kaneyn 0:349c994479c8 57
kaneyn 0:349c994479c8 58 ts.GetState(&TS_State);
kaneyn 0:349c994479c8 59 if (TS_State.TouchDetected)
kaneyn 0:349c994479c8 60 {
kaneyn 0:349c994479c8 61 x = TS_State.X;
kaneyn 0:349c994479c8 62 y = TS_State.Y;
kaneyn 0:349c994479c8 63 sprintf((char*)text, "x=%d y=%d ", x, y);
kaneyn 0:349c994479c8 64 lcd.DisplayStringAt(0, LINE(0), (uint8_t *)&text, LEFT_MODE);
kaneyn 0:349c994479c8 65 }
kaneyn 0:349c994479c8 66 sprintf((char*)text, "words=%d", words);
kaneyn 0:349c994479c8 67 lcd.DisplayStringAt(0, LINE(0), (uint8_t *)&text, CENTER);
kaneyn 0:349c994479c8 68
kaneyn 0:349c994479c8 69 }
kaneyn 0:349c994479c8 70 }