Rei Vilo 695 Posted May 29, 2013 Share Posted May 29, 2013 As of October 2015 and due to intellectual property issues and licence infringements with users, the LCD_screen Library Suite is no longer available for download. A special edition of the library is included in Energia for the Educational BoosterPack MKII and the Kentec 3.5" screen, and comes as an external library for the Pervasive Displays e-paper screens, to be installed with the Libraries Manager. Hi! I've decided to consolidate the libraries I've developed for different screens into a single one, the LCD_screen Library Suite.Download with examples and documentation is available here. The library runs on the LaunchPads MSP430 and Stellaris with Energia 0009. As at today, the following screens are supported: Color LCD Booster Pack (ST7735R) http://forum.43oh.com/topic/1758-color-lcd-booster-pack/ 2.2" Color LCD Booster Pack with Touch (ILI9225B+XPT2046) http://forum.43oh.com/topic/2574-22-color-lcd-booster-pack-with-touch/ 2.8" Touch Screen TFT LCD with SPI interface (ILI9320+XPT2046) http://www.hotmcu.com/28-touch-screen-tft-lcd-with-spi-interface-p-42.html I also leverage the high-level libraries I wrote for the 4D Systems screens, for example this clock that literally requires two lines of code: myClock.define(&myScreen, 160, 120, 60); myClock.draw(hour, minute, second, "Message"); Enjoy silicon_ghost, PTB and reaper7 3 Quote Link to post Share on other sites
Rei Vilo 695 Posted June 8, 2013 Author Share Posted June 8, 2013 Release 105 is available with all the graphics from the previous Serial_LCD Library Suite: clock, yaw, pitch, roll, gauge, histogram, table. Basic functions as drawing lines, rectangles, circles and displaying text fit into the MSP430G2553 memory, both flash and SRAM. However, advanced graphics require more space and thus the Stellaris LM4F. Supported Screens Download On the next iteration, I plan to explore and add the SRAM support for the GUI environment and explore the fonts on EEPROM. Enjoy bluehash 1 Quote Link to post Share on other sites
bluehash 1,581 Posted June 11, 2013 Share Posted June 11, 2013 Looks great Rei! Quote Link to post Share on other sites
Rei Vilo 695 Posted July 2, 2013 Author Share Posted July 2, 2013 Two news about the LCD_screen library suite: Using SPI SRAM was more difficult than expected.The fast RAM allows to save the initial screen before a dialog box or a menu is displayed in order to restore it after. A basic 320x240x16-bit screen requires 153,600 bytes or 150 KB. Using the 23LC1024 is rather difficult on a breadboard and prone to interferences. Only slow SPI speed works, even with decoupling capacitors and pull-up resistors. I haven't experienced such problems with the 23K640. So I'm considering using a SD-card instead. The main benefit of a SD-card is the flexibility, as it allows larger space at the expense of being slower than SRAM. I've started exploring the Kentec 3.5" BoosterPack for the LaunchPad Stellaris. This is a very nice screen. I'm learning how to deal with an 8-bit parallel port on Energia and I'm digging into the LCD controller specification sheet... I only need to fix the hardware interface. All the graphic and text routines are ready as they are shared with the other screens. Stay tuned! reaper7 1 Quote Link to post Share on other sites
Rei Vilo 695 Posted July 6, 2013 Author Share Posted July 6, 2013 Great news! SPI SRAM works now and allows fast copying and pasting of screen areas. I'm using 2 SPI SRAM 25LC1024 Although fast, speed isn't fast enough for a comfortable GUI. Learn more and download from Fast SRAM Support for the HY28A screen on a Stellaris LaunchPad. Coming next: GUI integration, support for the Kentec 3.5" screen. reaper7 1 Quote Link to post Share on other sites
Rei Vilo 695 Posted July 6, 2013 Author Share Posted July 6, 2013 (edited) I faced issues with the SPI ports. Please refer to the thread LaunchPad Stellaris on Energia — MISO Erratic Behaviour on SPI0 and SPI3 Problem solved! Thank you @@reaper7 Edited July 14, 2013 by Rei Vilo Quote Link to post Share on other sites
Rei Vilo 695 Posted July 7, 2013 Author Share Posted July 7, 2013 The copy-paste SRAM function now takes 480 ms instead of 650 ms! Quote Link to post Share on other sites
Rei Vilo 695 Posted July 8, 2013 Author Share Posted July 8, 2013 New record fast for copyPaste()! copyPaste() uses a small amount of MCU SRAM. Quote Link to post Share on other sites
Rei Vilo 695 Posted July 9, 2013 Author Share Posted July 9, 2013 Good news! The LCD_GUI library is available and brings the usual elements of a graphic interface as: label, button, dialog box, menu, slider and text box. The project is based on a LaunchPad Stellaris, a HY28A touch screen and 2x 1Mb of SRAM, and should cost less than USD35. The SRAM is used as a fast cache for the screen. Learn more about the project and the LCD_GUI library abecedarian, reaper7 and PTB 3 Quote Link to post Share on other sites
Rei Vilo 695 Posted July 9, 2013 Author Share Posted July 9, 2013 The algorithm for reading the colour of a pixel has been improved. Better colours and as fast as before. abecedarian 1 Quote Link to post Share on other sites
reaper7 67 Posted July 9, 2013 Share Posted July 9, 2013 @@Rei Vilo - you are planning an alternate mode SDcard instead of SRAM? Quote Link to post Share on other sites
Rei Vilo 695 Posted July 9, 2013 Author Share Posted July 9, 2013 @@Rei Vilo - you are planning an alternate mode SDcard instead of SRAM? Give me some time to get some rest! IMHO, implementing SD-card instead of SRAM shouldn't be difficult. You need to change 2 functions: void LCD_HY28A_SRAM::_fastCopyAreaToSRAM(uint16_t x0, uint16_t y0, uint16_t dx, uint16_t dy, uint32_t &address) void LCD_HY28A_SRAM::_fastPasteAreaFromSRAM(uint16_t x0, uint16_t y0, uint16_t dx, uint16_t dy, uint32_t &address, bool option) Address would be used for the name of the file. Now, don't expect fast read-write on SD-card. bluehash and abecedarian 2 Quote Link to post Share on other sites
bluehash 1,581 Posted July 10, 2013 Share Posted July 10, 2013 Good work Rei! Quote Link to post Share on other sites
abecedarian 330 Posted July 10, 2013 Share Posted July 10, 2013 I'm thinking a Booster Pack needs designed here...? Quote Link to post Share on other sites
Rei Vilo 695 Posted July 10, 2013 Author Share Posted July 10, 2013 @@abecedarian, yes Ideally a in-between BoosterPack with room for 2x 1Mb fast SRAM for caching enough EEPROM for fonts SD-card or uSD-card slot All this on one single hardware SPI bus with 3 CS, and ideally with jumpers to select the SPI bus among the 4 of the Launchpad Stellaris... Well, back to the 8-bit parallel Kentec 3.5" screen... Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.