MUTIBUF activity with MultiLayer

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

    • MUTIBUF activity with MultiLayer

      My application uses 2 layers and Multibuffering enabled with 3 buffers for each layers. At first look, it works well, but sometimes it suddenly stops multibuffering activity and causes screen flickering on my screen. When problem happens, I confirmed LCD_X_SHOWBUFFER is no longer called on layer 0, but layer 1 update still generates LCD_X_SHOWBUFFER calls.

      I'm using WM_MULTIBUF_Enable() to enable automatic multibuffering, but I noticed that WM.h has WM_MULTIBUF_EnableEx() which is not explained in the UM03001. Should I use WM_MULTIBUF_EnableEx() in the multilayer environment? Could you please give me the explanation for this API call?

      Regards,
    • Hello,

      WM_MULTIBUF_Enable() also works with more than one layer. WM_MULTIBUF_EnableEx() has a different purpose. Usually when a routine is not documented, it is not intended or unsafe to use.

      I'm not sure why there is still flickering after you enabled multi-buffering, but the error probably lies in your LCDConf.c. There are ready-to-use configurations located in the shipment folder under \Sample\LCDConf\<Driver>\<Hardware>. The correct configuration file might fix your problem.

      Best regards,

      Florian