pgis Posted October 7, 2015 Report Posted October 7, 2015 (edited) Hi.I'm very new to this STM32 stuff. Only worked with PIC before.Tempted by all interesting Youtube examples wanted to tryout Chibios + UGFX so I went on and bought a MINI-STM32-V3 (STM32F103RB) with a 2.8TFT (ILI9325 - ADS7843) --- $21 on Ebay (dirt cheap)I manage to setup a Keil uVision5 project with Chibios and UGFX.The project compiles and runs great.I get a lot of warnings regarding the UGFX part while compiling my test project and I just wonder if it is safe just to ignore the warnings (and suppress them) or if it might haunt me later on when my project grows.I'm using UGFX "Tectu-ugfx-0ab22283645c.zip" which I hope is the latest and Chibios 3.0.2*** Using Compiler 'V5.05 update 2 (build 169)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'Rebuild target 'Mini STM32 V3'compiling hal.c...compiling pal.c...compiling can.c...compiling serial.c...compiling st.c...compiling chprintf.c...compiling memstreams.c...compiling uart.c...compiling usb.c...compiling serial_usb.c...compiling i2c.c...compiling spi.c...compiling hal_lld.c...compiling stm32_dma.c...compiling pal_lld.c...compiling serial_lld.c...compiling uart_lld.c...compiling st_lld.c...compiling usb_lld.c...compiling i2c_lld.c...compiling can_lld.c...compiling spi_lld.c...compiling main.c.....\lib\ugfx\src/gdriver/gdriver.h(90): warning: #83-D: type qualifier specified more than once typedef const struct GDriverVMT const GDriverVMTList[1];main\main.c(118): warning: #68-D: integer conversion resulted in a change of sign wi.show = RUE; wi.x = 0; wi.y = bHeight; wi.width = swidth; wi.height = sheight-bHeight;main\main.c: 2 warnings, 0 errorscompiling board.c...compiling chcond.c...compiling chdebug.c...compiling chdynamic.c...compiling chevents.c...compiling chheap.c...compiling chmboxes.c...compiling chmemcore.c...compiling chmempools.c...compiling chmsg.c...compiling chmtx.c...compiling chqueues.c...compiling chregistry.c...compiling chschd.c...compiling chsem.c...compiling chstats.c...compiling chsys.c...compiling chthreads.c...compiling chtm.c...compiling chvt.c...compiling shell.c...assembling cstartup.s...assembling vectors.s...compiling chcore.c...compiling chcore_v7m.c...compiling nvic.c...assembling chcoreasm_v7m.s...compiling gdisp.c.....\lib\ugfx\src/gdriver/gdriver.h(90): warning: #83-D: type qualifier specified more than once typedef const struct GDriverVMT const GDriverVMTList[1];..\lib\ugfx\src\gdisp\gdisp.c(586): warning: #83-D: type qualifier specified more than once extern const GDISPVMT const GDISPVMT_OnlyOne[1];..\lib\ugfx\src\gdisp\gdisp.c(2677): warning: #767-D: conversion from pointer to smaller integer switch ((orientation_t) value) {..\lib\ugfx\src\gdisp\gdisp.c(3262): warning: #188-D: enumerated type mixed with another type mf_render_aligned(font, x, y, justify, str, 0, drawcharglyph, g);..\lib\ugfx\src\gdisp\gdisp.c(3300): warning: #188-D: enumerated type mixed with another type mf_render_aligned(font, x, y, justify, str, 0, fillcharglyph, g);..\lib\ugfx\src\gdisp\gdisp.c: 5 warnings, 0 errorscompiling gdisp_fonts.c...compiling gdisp_image.c...compiling gdisp_image_bmp.c...compiling gdisp_image_gif.c...compiling gdisp_image_jpg.c...compiling gdisp_image_native.c...compiling gdisp_image_png.c...compiling gdisp_pixmap.c...compiling gfx.c...compiling gdriver.c.....\lib\ugfx\src\gdriver\gdriver.h(90): warning: #83-D: type qualifier specified more than once typedef const struct GDriverVMT const GDriverVMTList[1];..\lib\ugfx\src\gdriver\gdriver.c: 1 warning, 0 errorscompiling gos_chibios.c.....\lib\ugfx\src\gos\gos_chibios.c(161): warning: #167-D: argument of type "threadreturn_t (*)(void *)" is incompatible with parameter of type "tfunc_t" return chThdCreateFromHeap(0, stacksz, prio, fn, param);..\lib\ugfx\src\gos\gos_chibios.c(167): warning: #167-D: argument of type "threadreturn_t (*)(void *)" is incompatible with parameter of type "tfunc_t" return chThdCreateStatic(stackarea, stacksz, prio, fn, param);..\lib\ugfx\src\gos\gos_chibios.c: 2 warnings, 0 errorscompiling mf_bwfont.c...compiling mf_encoding.c...compiling mf_font.c...compiling mf_justify.c...compiling mf_kerning.c...compiling mf_rlefont.c...compiling mf_scaledfont.c...compiling mf_wordwrap.c...compiling gdisp_lld_ILI93xx.c.....\lib\ugfx\src/gdriver/gdriver.h(90): warning: #83-D: type qualifier specified more than once typedef const struct GDriverVMT const GDriverVMTList[1];..\lib\ugfx\src/gdisp/gdisp_driver.h(731): warning: #83-D: type qualifier specified more than once const GDISPVMT const GDISP_DRIVER_VMT[1] = {{..\lib\ugfx\drivers\gdisp\ILI93xx\gdisp_lld_ILI93xx.c(309): warning: #767-D: conversion from pointer to smaller integer if (g->g.Powermode == (powermode_t)g->p.ptr)..\lib\ugfx\drivers\gdisp\ILI93xx\gdisp_lld_ILI93xx.c(311): warning: #767-D: conversion from pointer to smaller integer switch((powermode_t)g->p.ptr) {..\lib\ugfx\drivers\gdisp\ILI93xx\gdisp_lld_ILI93xx.c(373): warning: #767-D: conversion from pointer to smaller integer g->g.Powermode = (powermode_t)g->p.ptr;..\lib\ugfx\drivers\gdisp\ILI93xx\gdisp_lld_ILI93xx.c(377): warning: #767-D: conversion from pointer to smaller integer if (g->g.Orientation == (orientation_t)g->p.ptr)..\lib\ugfx\drivers\gdisp\ILI93xx\gdisp_lld_ILI93xx.c(379): warning: #767-D: conversion from pointer to smaller integer switch((orientation_t)g->p.ptr) {..\lib\ugfx\drivers\gdisp\ILI93xx\gdisp_lld_ILI93xx.c(424): warning: #767-D: conversion from pointer to smaller integer g->g.Orientation = (orientation_t)g->p.ptr;..\lib\ugfx\drivers\gdisp\ILI93xx\gdisp_lld_ILI93xx.c: 8 warnings, 0 errorscompiling gmouse_lld_ADS7843.c.....\lib\ugfx\src/gdriver/gdriver.h(90): warning: #83-D: type qualifier specified more than once typedef const struct GDriverVMT const GDriverVMTList[1];..\lib\ugfx\drivers\ginput\touch\ADS7843\gmouse_lld_ADS7843.c(48): warning: #83-D: type qualifier specified more than once const GMouseVMT const GMOUSE_DRIVER_VMT[1] = {{..\lib\ugfx\drivers\ginput\touch\ADS7843\gmouse_lld_ADS7843.c: 2 warnings, 0 errorscompiling ginput.c...compiling ginput_mouse.c.....\lib\ugfx\src/gdriver/gdriver.h(90): warning: #83-D: type qualifier specified more than once typedef const struct GDriverVMT const GDriverVMTList[1];..\lib\ugfx\src\ginput\ginput_mouse.c(86): warning: #83-D: type qualifier specified more than once pe->type = (mvmt(m)->d.flags & GMOUSE_VFLG_TOUCH) ? GEVENT_TOUCH : GEVENT_MOUSE;..\lib\ugfx\src\ginput\ginput_mouse.c(105): warning: #83-D: type qualifier specified more than once if (!mvmt(m)->get(m, &r))..\lib\ugfx\src\ginput\ginput_mouse.c(116): warning: #83-D: type qualifier specified more than once if ((mvmt(m)->d.flags & GMOUSE_VFLG_TOUCH)) {..\lib\ugfx\src\ginput\ginput_mouse.c(117): warning: #83-D: type qualifier specified more than once if (mvmt(m)->z_min <= gmvmt(m)->z_max) {..\lib\ugfx\src\ginput\ginput_mouse.c(117): warning: #83-D: type qualifier specified more than once if (mvmt(m)->z_min <= mvmt(m)->z_max) {..\lib\ugfx\src\ginput\ginput_mouse.c(118): warning: #83-D: type qualifier specified more than once if (r.z >= mvmt(m)->z_touchon) r.buttons |= GINPUT_MOUSE_BTN_LEFT;..\lib\ugfx\src\ginput\ginput_mouse.c(119): warning: #83-D: type qualifier specified more than once else if (r.z <= mvmt(m)->z_touchoff) r.buttons &= ~GINPUT_MOUSE_BTN_LEFT;..\lib\ugfx\src\ginput\ginput_mouse.c(122): warning: #83-D: type qualifier specified more than once if (r.z <= mvmt(m)->z_touchon) r.buttons |= GINPUT_MOUSE_BTN_LEFT;..\lib\ugfx\src\ginput\ginput_mouse.c(123): warning: #83-D: type qualifier specified more than once else if (r.z >= mvmt(m)->z_touchoff) r.buttons &= ~GINPUT_MOUSE_BTN_LEFT;..\lib\ugfx\src\ginput\ginput_mouse.c(129): warning: #83-D: type qualifier specified more than once if ((mvmt(m)->d.flags & GMOUSE_VFLG_POORUPDOWN)) {..\lib\ugfx\src\ginput\ginput_mouse.c(164): warning: #83-D: type qualifier specified more than once if ((mvmt(m)->d.flags & GMOUSE_VFLG_ONLY_DOWN) && !(r.buttons & GINPUT_MOUSE_BTN_LEFT)) {..\lib\ugfx\src\ginput\ginput_mouse.c(186): warning: #83-D: type qualifier specified more than once if (!(mvmt(m)->d.flags & GMOUSE_VFLG_SELFROTATION)) {..\lib\ugfx\src\ginput\ginput_mouse.c(230): warning: #83-D: type qualifier specified more than once pj = (m->flags & MOUSE_FLG_FINGERMODE) ? &mvmt(m)->finger_jitter : &gmvmt(m)->pen_jitter;..\lib\ugfx\src\ginput\ginput_mouse.c(230): warning: #83-D: type qualifier specified more than once pj = (m->flags & MOUSE_FLG_FINGERMODE) ? &mvmt(m)->finger_jitter : &mvmt(m)->pen_jitter;..\lib\ugfx\src\ginput\ginput_mouse.c(289): warning: #83-D: type qualifier specified more than once if ((mvmt(m)->d.flags & GMOUSE_VFLG_TOUCH) && m->clicktime >= gfxMillisecondsToTicks(GINPUT_TOUCH_CXTCLICK_TIME))..\lib\ugfx\src\ginput\ginput_mouse.c(322): warning: #83-D: type qualifier specified more than once if (!(mvmt(m)->d.flags & GMOUSE_VFLG_NOPOLL) || (m->flags & GMOUSE_FLG_NEEDREAD))..\lib\ugfx\src\ginput\ginput_mouse.c(363): warning: #83-D: type qualifier specified more than once if (!(mvmt(m)->d.flags & GMOUSE_VFLG_SELFROTATION)) {..\lib\ugfx\src\ginput\ginput_mouse.c(409): warning: #83-D: type qualifier specified more than once if (!(mvmt(m)->d.flags & GMOUSE_VFLG_SELFROTATION)) {..\lib\ugfx\src\ginput\ginput_mouse.c(469): warning: #83-D: type qualifier specified more than once if ((mvmt(m)->d.flags & GMOUSE_VFLG_CAL_EXTREMES)) {..\lib\ugfx\src\ginput\ginput_mouse.c(494): warning: #83-D: type qualifier specified more than once maxpoints = (mvmt(m)->d.flags & GMOUSE_VFLG_CAL_TEST) ? 4 : 3;..\lib\ugfx\src\ginput\ginput_mouse.c(540): warning: #83-D: type qualifier specified more than once if ((mvmt(m)->d.flags & GMOUSE_VFLG_CAL_TEST)) {..\lib\ugfx\src\ginput\ginput_mouse.c(544): warning: #83-D: type qualifier specified more than once pj = (m->flags & MOUSE_FLG_FINGERMODE) ? &mvmt(m)->finger_jitter : &gmvmt(m)->pen_jitter;..\lib\ugfx\src\ginput\ginput_mouse.c(544): warning: #83-D: type qualifier specified more than once pj = (m->flags & MOUSE_FLG_FINGERMODE) ? &mvmt(m)->finger_jitter : &mvmt(m)->pen_jitter;..\lib\ugfx\src\ginput\ginput_mouse.c(551): warning: #83-D: type qualifier specified more than once if (!(mvmt(m)->d.flags & GMOUSE_VFLG_SELFROTATION)) {..\lib\ugfx\src\ginput\ginput_mouse.c(607): warning: #83-D: type qualifier specified more than once if (mvmt(m)->calsave)..\lib\ugfx\src\ginput\ginput_mouse.c(608): warning: #83-D: type qualifier specified more than oncemvmt(m)->calsave(m, &m->caldata, sizeof(GMouseCalibration));..\lib\ugfx\src\ginput\ginput_mouse.c(645): warning: #83-D: type qualifier specified more than once extern const GMouseVMT const GMOUSEVMT_OnlyOne[1];..\lib\ugfx\src\ginput\ginput_mouse.c(667): warning: #83-D: type qualifier specified more than once if ((mvmt(m)->d.flags & GMOUSE_VFLG_DEFAULTFINGER))..\lib\ugfx\src\ginput\ginput_mouse.c(672): warning: #83-D: type qualifier specified more than once if (!mvmt(m)->init((GMouse *)g, driverinstance))..\lib\ugfx\src\ginput\ginput_mouse.c(692): warning: #83-D: type qualifier specified more than once if ((mvmt(m)->d.flags & GMOUSE_VFLG_CALIBRATE)) {..\lib\ugfx\src\ginput\ginput_mouse.c(698): warning: #83-D: type qualifier specified more than once if (mvmt(m)->calload && gmvmt(m)->calload(m, &m->caldata, sizeof(GMouseCalibration)))..\lib\ugfx\src\ginput\ginput_mouse.c(698): warning: #83-D: type qualifier specified more than once if (mvmt(m)->calload && mvmt(m)->calload(m, &m->caldata, sizeof(GMouseCalibration)))..\lib\ugfx\src\ginput\ginput_mouse.c(757): warning: #83-D: type qualifier specified more than once pe->type = (mvmt(m)->d.flags & GMOUSE_VFLG_TOUCH) ? GEVENT_TOUCH : GEVENT_MOUSE;..\lib\ugfx\src\ginput\ginput_mouse.c(793): warning: #83-D: type qualifier specified more than once if (!(mvmt(m)->d.flags & GMOUSE_VFLG_CALIBRATE))..\lib\ugfx\src\ginput\ginput_mouse.c: 35 warnings, 0 errorscompiling gevent.c...compiling gtimer.c.....\lib\ugfx\src\gtimer\gtimer.c(111): warning: #111-D: statement is unreachable return 0;..\lib\ugfx\src\gtimer\gtimer.c: 1 warning, 0 errorscompiling gwin.c...compiling gwin_console.c...compiling gwin_graph.c...compiling gwin_wm.c...linking...FromELF: creating hex file...".\Objects\STM_CAN_ChibiOS.axf" - 0 Error(s), 56 Warning(s).Build Time Elapsed: 00:03:30 Edited October 7, 2015 by Guest
Joel Bodenmann Posted October 7, 2015 Report Posted October 7, 2015 Hello pgis and welcome to the community!We are happy to hear that you got everything working. Great job!The warnings you are getting are nothing to worry about. Those won't bug you in the future.We just got our hands on a Keil µVision 5 license a couple of days ago and we are using uGFX with Keil without any problems. The warnings you are getting don't show up with GCC and that is the compiler that we mostly use. However, now that we are using Keil ourselves we will definitely look into resolving those issues.~ Tectu
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now