Search Results

Search results 1-20 of 1,000. There are more results available, please enhance your search parameters.

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Hi Andy, I suppose that the read function set for the GUIDRV_FlexColor is not working properly. You could check this by filling the screen with a color and read it back with GUI_GetPixelIndex(). For example, fill the screen with GUI_RED and read back the first pixel at 0|0. GUI_GetPixelIndex() should return 0xF800 (with GUICC_M565). Another solution might be to use a cached version of the driver. This way it doesn't need to read from the LCD controller but reads the pixel data from the cache. Of…

  • Hi, It's hard to say what is causing this behavior. Can you send me the code which shows how you create both windows (including the callback function and anything else which is required to draw both windows)? Regards, Sven

  • Hi, Not sure why this happens. Can you post your code or a small example which shows how to reproduce the behavior. Regards, Sven

  • Hi Mark, The LCD_X_8080 functions, do they use bit banging (toggling the IO pins of the MCU) or do these functions use a dedicated hardware module (e.g. a 8080 module on the MCU)? Bit banging is pretty slow and will cause a visible build up on the screen. I recommend to use a hardware module for this. Please note, it is not necessary to use an 8080 interface with this driver. You could also use SPI for example. Of course, this depends on the available interfaces of the LCD controller. Regards, S…

  • Hi, try to call GUI_Exec() after hiding the IMAGE widget. This should cause the background to be redrawn. Regards, Sven

  • Hi, You have two options, either wait until NXP releases the next emWin version or you purchase an emWin source code upgrade. We offer a special discount for user of emWin provided by some silicon vendors. The source code upgrade includes frequent releases and support from the developers emWin. More information about the source code upgrade can be found here: segger.com/products/user-inter…win/emwin-source-upgrade/ Regards, Sven

  • Hi, Your configuration file looks good so far. You might want to try another read function. Please refer to the API description of GUIDRV_FlexColor_SetReadFunc66709_B16() in the emWin user manual. You should also check your write functions. It can be possible that the LCD controller expects the data in another order. Regards, Sven

  • Hi, It depends on the LCD driver you are using where the pixel data is stored. If you are using the GUIDRV_Lin driver the data is stored within the framebuffer which gets not allocated from "aMemory". The framebuffer typically gets allocated within the LCDConf.c and is not done by emWin. If you are using another driver, e.g. the GUIDRV_FlexColor driver, a buffer of one line gets allocated from "aMemory". In case you are using the GUIDRV_FlexColor driver with a cache enabled a complete screen get…

  • Hi, Hard to say what's going wrong here. I suggest to double check your routines for writing and reading data, set in the PortAPI struct. Please try the code below. C Source Code (25 lines)The output should like on screenshot attached (simulation). Best regards, Sven

  • Hi, emWin is written in ANSI C and is completely independent of any toolchains, compilers, architectures, etc.. I suppose that this issue results in the way the library was build. Unfortunately, SEGGER is not responsible for building the libraries provided by the silicon vendors. I suggest to contact NXP in this case. Quote from lsrbigfoot: “I guess the real question is, does emWin library source (used to build .a library file) have globals with non-zero initializations? ” No, there are no non-z…

  • Hi, it depends on the interface type. The functions you have listed are sending only 8 bits at once. Other interface may send 16 or 32 bits at once and would have to implement and set the other function pointers. Regards, Sven

  • Hi, Unfortunately, I can not say what exactly Cypress does ship to their customers. If you purchase the Source Code Upgrade of emWin (with a special discount) you will have access to the full version of the Bitmap and of course to the source code of emWin. segger.com/products/user-inter…win/emwin-source-upgrade/ You can check out the Bitmap Converter Demo, it has no functional limitation, but you are not allowed to use it in a comercial product. segger.com/downloads/emwin/ Regards, Sven

  • Hi, emWin is completely independent of any hardware and any third party software. Also, there is no license check of CRC init within emWin. The libraries you are using are generated by STM , so I can not say if they build in some sort of license check (although they shouldn't). Maybe you should try to contact STM. Regards, Sven

  • emwin touchscreen

    SEGGER - Schoenen - - emWin related

    Post

    Hi, Attached is an example how you can pass touch input to emWin. The touch controller has to be initialized on your own. Also you have to manage how the touch data is transferred from the TC. You can initialize the touch screen right after GUI_Init() or inside the LCDConf.c when it comes to the LCD controller initialization. Once the touch data gets send to emWin by GUI_TOUCH_StoreStateEx() or GUI_PID_StoreState() there is nothing else to do to make emWin respond to touch. Regards, Sven

  • Hi, the very first thing which is called in GUI_Init() is a macro which is defined as GUI_X_Log(). GUI_X_Log() is typically implemented in the file GUI_X.c and user defined. Do you call some sort of printf() (or anything else to get some debug output) within GUI_X_Log()? This might lock the application. Next in GUI_Init() is a function pointer which can be set to call some user code before emWin starts its initialization. If this pointer is not set, nothing gets called. Right after that a call t…

  • Hi, The example Florian has posted uses the Windows FS API. I suggest to use your own FS API to write to an SD card. Attached is an example which uses either the Windows API or our own file system emFile. Regards, Sven

  • Hi, GUI_Init() calls three functions accessible by the user. First is GUI_X_Config() in this function a memory block gets assigned to emWin. Second is LCD_X_Config(), in this function the emWin driver gets set up. LCD_X_DisplayDriver(), typically the LCD conttroller gets initialized here. You can check if you get into these functions, if don't get into LCD_X_DisplayDriver() but you where in LCD_X_Config(), there must be something wrong in between. Regards, Sven

  • Hi, As stated in the manual the 9th parameter ("Para") is used for x- and y-size of the different items. The upper 16 bits are describing the y-size and the lower 16 bits describing the x-size. Just search for "ICONVIEW_CreateIndirect" in the emWin user manual and you will find it. Regards, Sven

  • Hi, The files look good so far. Unfortunately, I don't have access to Cypress Semiconductors evalboard. so I can't reproduce it. Typically emWin uses about 60-80 KB of ROM, depending on the features used. Are you sure that this is not releated to the images? Regards, Sven

  • Hi, You can use a timer which gets started on button click. On the WM_TIMER message simply check if the button is still pressed. If it is restart the timer, maybe with a lower period, and increment a value. Below is a short example. The variable "TimerInc" is used to avoid an additional increment on release when the timer was used to increment the variable. C Source Code (91 lines) Regards, Sven