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.

MSP430FR5994: Using the MSPWARE Graphics library for MSP430FR5994

Part Number: MSP430FR5994
Other Parts Discussed in Thread: BOOSTXL-SHARP128, , MSPWARE, MSP430FR5969

Hi 

I am using the MSP430FR5994 for a school project and with that I am using the BOOSTXL-Sharp128 booster pack as the screen.  I have downloaded the MSPware graphics library but there is no example for the MSP430FR5994 microcontroler. Is there another example i can use to test the booster pack that also works with the MSP430FR5994. I can´t find anything to suggest that the MSP430FR5994 is supported although the library is supposed to support almost every MSP device.

Any thoughts?

  • Hi,

    I have reached out to our team and will have a response next week.

    Thanks,

    Mitch 

  • Hi,

    I found that there is a example project for MSP430FR5969. You may give a try with this project: import it to CCS, change the device to FR5994, and run. It should work since FR5994 48-pin package is pin-pin compatible with FR5969 48-pin package and from peripheral aspect FR5994 has all the peripherals that FR5969 has.

    Let me know if you get further question.

  • Hi

    Unfortunatelly this example did not work, there was an error in the dma.c file in the driverlibrary. Disabling the dma fil did allow me to compile and load the project but the screen did not display anything. There were also some warnings signs in the driverlib which i could not resolve. 

    Any ideas what i could do?

    with kind regards

  • Hi there,

    I gave a try to replace that project to MSP430FR5994 and seems got the same error. By solving it, I just put a define "#define DMA_BASE 0x0500" at the top of dma.c. Please give it a try as "0x0500" should be the value of "DMA_BASE" but I'm not sure why this define in "msp430fr5994.h" not work.

    Also, in the "LcdDriver/Sharp128x128.c", please add below highlighted statement. Then I got the build work.

    Since my Sharp128 BoosterPack is still on the way and I could not give it a try in the hardware. Please try this and let me know if it still doesn't work on your side.

    Regards,

    Harry

  • Hi 

    Thanks for the quick reply. I am now able to compile and load the project without errors. However there is still no activity on the screen. The reason might be hardware wise though so i will be checking that. But i also have some warning signs in the hw_memmap.h file in the driverlib folder as shown in the picture below. Please let me if you are able to get this example working when you recieve your screen. 

    With kind regards and thanks for all your help. 

  • Hi,

    My sharp LCD board is still on the way. Sorry for the late.

    May I know if any updates from your side?

    Regards,

    Harry

  • Hi there,

    I finally got my sharp LCD board and got it ran. Here's the solution:

    You still need to do modification I showed in this thread previously. Then, in the "HAL_MSP_EXP430FR5969_Sharp128x128.h", you need to do below changes for hardware adjustment. The comments statements are original ones here for reference.

     

    // Ports from MSP430 connected to LCD
    //#define LCD_SPI_SI_PORT                     GPIO_PORT_P1
    //#define LCD_SPI_CLK_PORT                    GPIO_PORT_P2
    //#define LCD_DISP_PORT                       GPIO_PORT_P4
    //#define LCD_POWER_PORT                      GPIO_PORT_P4
    //#define LCD_SPI_CS_PORT                     GPIO_PORT_P2
    
    // Ports from MSP430 connected to LCD
    #define LCD_SPI_SI_PORT                     GPIO_PORT_P5
    #define LCD_SPI_CLK_PORT                    GPIO_PORT_P5
    #define LCD_DISP_PORT                       GPIO_PORT_P6
    #define LCD_POWER_PORT                      GPIO_PORT_P1
    #define LCD_SPI_CS_PORT                     GPIO_PORT_P1
    
    // Pins from MSP430 connected to LCD
    //#define LCD_SPI_SI_PIN                      GPIO_PIN6
    //#define LCD_SPI_SI_PIN_FUNCTION             GPIO_SECONDARY_MODULE_FUNCTION
    //#define LCD_SPI_CLK_PIN                     GPIO_PIN2
    //#define LCD_SPI_CLK_PIN_FUNCTION            GPIO_SECONDARY_MODULE_FUNCTION
    //#define LCD_DISP_PIN                        GPIO_PIN3
    //#define LCD_POWER_PIN                       GPIO_PIN2
    //#define LCD_SPI_CS_PIN                      GPIO_PIN4
    
    #define LCD_SPI_SI_PIN                      GPIO_PIN0
    #define LCD_SPI_SI_PIN_FUNCTION             GPIO_PRIMARY_MODULE_FUNCTION
    #define LCD_SPI_CLK_PIN                     GPIO_PIN2
    #define LCD_SPI_CLK_PIN_FUNCTION            GPIO_PRIMARY_MODULE_FUNCTION
    #define LCD_DISP_PIN                        GPIO_PIN2
    #define LCD_POWER_PIN                       GPIO_PIN2
    #define LCD_SPI_CS_PIN                      GPIO_PIN3
    
    // Definition of USCI base address to be used for SPI communication
    //#define LCD_EUSCI_BASE                EUSCI_B0_BASE
    
    #define LCD_EUSCI_BASE                EUSCI_B1_BASE

    And then, in "system_pre_init.c", change the "WDT_A_hold(WDT_A_BASE);" to "WDTCTL = WDTPW | WDTHOLD;" due to some definition mismatch..

    After all these set, you can get your sharp LCD run with FR5994's LaunchPad.