TextDisplay
a text display driver framework
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.
Supported Displays: HD44780 powered display (4Bit mode only) over GPIO - driverType="HD44780GpioDriver"
Usage:
- Either build/add the Windows Runtime Component as a binary reference to your solution of add the TextDisplayManager project to you solution.
- Edit the "screens.config" file to match your setup.
- Call: var displays = await TextDisplayManager.GetDisplays();
- The 'displays' variable will contain a list of configured displays for the system (as defined in screens.config).
- Each display implements the ITextDisplay interface that has the following fucntionality: get Height - Gets the total rows the display has get Width - Gets the total characters each row supports InitializeAsync - Initializes the screen DisposeAsync - Disposes of the screen once its use is complete WriteMessageAsync - Writes a message to the screen (supports \n for new line), timeout indicates how long the message will stay on screen (0 is infinite).
Adding a Driver: Drivers are C# classes that inherit from TextDisplayBase, these drivers must be added as a part of the TextDisplay component to be able to be activated.
screens.config: This xml configuration file describes the screens that are currently attached to the system. Each Screen element is broken into 2 main elements, CommonConfiguration and DriverConfiguration. CommonConfiguration contians the Heigh and Width of the screen DriverConfiguration contains a XML fragment that is passsed into the driver on initialization Below is an example of a screens.config that has 1 HD44780GpioDriver driven screen:
2 16 18 23 24 5 6 13