Xenium LCD support - Printable Version +- Kodi Community Forum (https://forum.kodi.tv) +-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32) +--- Forum: Kodi Application (https://forum.kodi.tv/forumdisplay.php?fid=93) +--- Thread: Xenium LCD support (/showthread.php?tid=5011) |
- YellowHat - 2004-08-03 i've been trying to get this lcd working in xbmc with a xenium: http://www.lcd-module.de/eng/pdf/doma/dip204-4e.pdf which uses the following controller: http://www.lcd-module.de/eng/pdf/zubehoer/ks0073.pdf even though it should be connected/jumpered properly, it doesn't work. i tried to change xbmc's implementation of xenium-lcd-support as i think the lcd's protocol isn't compatible with the one xbmc uses. this is from the lcd's datasheet: Quote:before transferring real data, start byte has to be transferred. it is composed of succeeding 5 "high" bits, and further: Quote:(1) write operation (r/w = 0) but it looks like the source of the function xeniumspisendbyte is not available as it is an external library. does anyone know the implementation of this function? or was this provided by ozxodus without source? - Hullebulle - 2004-08-04 iirc we just got the libs without any source. but i am not sure. - YellowHat - 2004-08-08 i tried to write a wrapper function, so that the lcd receives data with it's protocol. i also changed the commands according to the datasheet. unfortunately it doesn't work properly yet. the display shows activity (you see the cursor ie), but it doesn't show what it is supposed to do. this is the wrapper function. the lcd expects one byte data in the form: lower 4 databits + 4 times lowbit, upper 4 bits + 4 times lowbit (therefore 2bytes), ie 11010001 will be sent as two bytes: 1101000 0001000 Quote:void xenium::xeniumspisendbyte2(unsigned char data) before data is sent the lcd expects a startbyte. for commands this is: 5 high bits and 3 low bits (dec 248) for display data it's: 6high bits and 2 low bits (dec 252) i couldn't determine the commands for linefeed/backspace and so on, and i'm not sure if normal ascii codes work (as it was used in the former implementation). i'm also not sure how to implement cursor movement, it looks like i'd need to read the current ddram address from the display and calculate the movements. and i don't know if this is supported by the spi lib. all changes i made are in xenium.cpp. if someone owns this lcd and wants to help please do so, because i'm stuck atm... |