WEC7 Dual Head System
Typical Windows CE system comes with a single display panel attached, where the Windows CE shell will appear. In this article an example of dual head system with two display panels interfaced to Windows CE is explored.
Fortunately, we already have a system in iWave running Windows Embedded Compact7 interfaced with display panels namely LVDS and HDMI. In our latest Windows Embedded Compact7 BSP feature addition experiment, we have successfully developed and interfaced this new feature to WEC7 BSP.
The dual head system consists of two display panels and allows the user to drive two different contents simultaneously. Here both the display panels are controlled by a single processor system, allowing users to run two different applications, where the applications are designed to use different display panels.
The display panel in which WEC7 shell appears is referenced as primary panel and the other one is referenced as secondary panel.
When the dual head system is turned ON, the primary screen will hold all the WEC7 shell icons and secondary screen will be of blank screen with a white background.
The display driver which is configured to support dual head system initially will read the display parameters from a registry file, which includes display height, width and bits per pixel, etc.The display driver will then, allocates frame-buffer memory for the registered display panels based on the height, width and bits per pixel.
It will configure the Image Processing Unit of i.MX6 to link the frame buffer with selected display interface, once the display processor, display interface and display controller modules are configured, the driver will register primary panel's frame buffer to GWES as primary display and the secondary display panel's frame buffer will be register as secondary display.
Here the IPU configuration plays a major role since, it will route the frame buffer to respective display interface through proper display controller, display processor channels.
We can extract the channel information for configuring the primary and secondary display panels from the processor reference manual.
The primary panel is registered to GWES such that, for the default WEC7 display operation will be carried out on primary panel.Running an application on secondary screen will differ from running an application on primary screen and following block will provide the overview of it.
Creating application for primary screen is same as creating application for any WEC7 system, but creating an application for secondary display panel will differ.
The secondary screen application is primarily based on “DirectDraw”, the application will request the frame-buffer of secondary screen and utilize it through direct draw APIs.
Since the secondary screen is utilized through DirectDraw APIs, it opens up an opportunity run graphic applications (exploring!!).
The application to be run on secondary screen is accessed through primary screen itself, which provides complete control over the secondary panel to the operator using primary screen.
This shall provide single window operation and block any mishandling for secondary screen from other source than primary screen.
Possible use of this feature on WEC7 is left to user imagination!!!
- Somashekar - Project Leader
iWave Systems Technologies Pvt.Ltd.