This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/TM4C123GH6PM: Code example for CCS (Not Energia) or specific Documentation on MKII LCD Screen

Part Number: TM4C123GH6PM
Other Parts Discussed in Thread: ENERGIA

Tool/software: Code Composer Studio

I'm looking for any code example, driver libraries, or any specific information on what the LCD screen of the Booster Pack MKII. Everything I have found is either examples on energia or for the MSP430. Is any of the MSP430 translatable directly or are they all processor specific. MSP example was found here "http://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/BOOSTXL-EDUMKII/latest/index_FDS.html". 

  • I am using code composer v7 on windows 64-bit just in case. Also, is there a document that explains what exactly the LCD screen expects to receive over the SPI communication in order to control each pixel?
  • Your request is highly detailed - good job.

    While I'm unaware of (any) document - explaining (exactly) what the Lcd expects - I do recall that Lcd (or highly similar) having appeared w/in "multiple forum posts." Your use of the "Forum Search Box" (atop this page) keyworded w/that Lcd's "id" - should produce many "hits" - which while "inexact" - are likely to prove of (some) value...
  • Thank you for your prompt response. Do LCDs that communicate via SPI, typically have a similar command set? As in are the references for individual pixels the same, similar, or different, but with a difference in max ROWS and COLUMNS? What is the origin of the screen typically? Center or corner? Is reset active high/low? Should chip select typically just remain high?

    Taking your advice I have found some other code examples of different processors with different LCDs. My concern is that I will send a command and just be shooting in the dark. Plug and chug is not the best development method. It is odd to me that there is not any documentation on this TI part. Specifically a communication protocol, memory map, or just general command API (non-processor specific). I was able to verify the set up of my SPI pins using the search method you mentioned above.

    My last resort I suppose will be trying to make sense of the MSP430 API to see if I can discover in any way how this LCD is controlled. This is not an ideal solution, but is not completely crazy. I was hoping I had just missed some documentation before diving too deep into this. Generally I like to read all hardware documentation for any embedded system that I'm working on before starting the coding.
  • May I commend (most all) of your methods & desires. ("exactness" escapes this applause)

    Having spent much time in the "display biz" - it is noted that the "only standard" ... is NO Standard! (such resulted from Lcd vendors catering to the "high volume opportunities" most of those - single client driven.)

    I suspect that you are (almost) trying to, "tame" an unruly horse. This vendor cannot provide full detail of another's product. (display - in this case) You may instead - harvest many answers - by procuring the official spec of that (exact) Lcd - from its (real) maker. (so often there are "middle-men" who sell - yet w/out full (real) understanding...)

    I know of NO Standard for Lcds which communicate via (any) serial protocol. Thus there are NO "similar" command sets. Your questions ARE well thought (and unusual in their depth) yet I must convey what I believe to be, "reality" (which is not always "kind.")

    As an alternative to "bending the MSP APP into (some) compliance" - might you consider a superior Lcd - one w/a ready availability of clear data - likely lower cost - and better presenting, "Lcd figures of merit?" (Contrast Ratio, Viewing Angle, Backlight Brightness, etc.)

    Unstated is your potential volume usage - if unknown (or small) sticking w/what's here (and pounding the MSP App into compliance) is likely to prove, "best bet."    Should "small volume" not be your limit - contact me via the forum's PM (set-up during your forum registration) and "enable conversations."

  • Sticking to modular design is limited and not favored in my opinion. Understanding full control of the LCD screen will open up possibilities of more advanced projects in the future once the basics are understood. For that, the hardware set up must be known as well as communication methods.

    This is just an at home project for myself. I went with the MKII booster board for "quick" and "easy" development to understand system concepts. It is a fairly cheap solution for in home projects to see what I can do. I did find a datasheet, with electrical specification. Still short a communication protocol however. I'm halfway there and hopefully this post makes it easier for anyone else just doing an in home project with this hardware. The link below will get anyone to the data sheet and provide technical specs. Hoping more information is added to this post or if I find the full answer, I will post it.

    www.crystalfontz.com/.../cfaf128128b0145t-graphic-tft-128x128
  • The answer for this is not straight foward and requires a bit of searching/research and not much jumps out in the path that is taken.
    Answers Found:
    1. CS when low enables the SPI to the driver chip and disabled when high
    2. Reset is active low. Keep high to use device.
    3. LCD is actually driven by a chip. Link to chip PDF with register descriptions is here:
    www.crystalfontz.com/.../ST7735_V2.1_20100505.pdf
    4. 9.3 explains communication protocol, Use booster board schematic to determine what mode you are in.
    5. Section 10 explains sytstem function command list.
    6. It appears the origin is the top left of the screen.

    Answer derived from arduino code example. Code contained references for where macros for registers values came from.
    forum.crystalfontz.com/.../7394-Connecting-the-small-CFAF128128B-0145T-TFT-to-an-Arduino-Uno-or-SparkFun-RedBoard

    I encourage anyone else who comes across this forum to get ready for a read and help with any info for anyone else running into this situation. Good Luck everyone.