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/MSP430FR6989: msp430fr6989 blinking lcd segment

Part Number: MSP430FR6989


Tool/software: Code Composer Studio

Hello,

Please refer below code and I want to drive particular segment to blinking on LCD. For example,"ABC" so,'A' only blink 'B' 'C' stable.

LCDCBLKCTL_L |= LCDBLKPRE0 | LCDBLKPRE2 |  LCDBLKMOD_2;  <--This registers function blink all "ABC" LCD segments.

int main(void)
{
  
    WDTCTL = WDTPW | WDTHOLD;               // Stop WDT

    PJSEL0 = BIT4 | BIT5;                   // For LFXT

    // Initialize LCD segments 0 - 21; 26 - 43
    LCDCPCTL0 = 0xFFFF;
    LCDCPCTL1 = 0xFC3F;
    LCDCPCTL2 = 0x0FFF;

    // Disable the GPIO power-on default high-impedance mode
    // to activate previously configured port settings
    PM5CTL0 &= ~LOCKLPM5;

    // Configure LFXT 32kHz crystal
    CSCTL0_H = CSKEY >> 8;                  // Unlock CS registers
    CSCTL4 &= ~LFXTOFF;                     // Enable LFXT
    do
    {
      CSCTL5 &= ~LFXTOFFG;                  // Clear LFXT fault flag
      SFRIFG1 &= ~OFIFG;
    }while (SFRIFG1 & OFIFG);               // Test oscillator fault flag
    CSCTL0_H = 0;                           // Lock CS registers

    // Initialize LCD_C
    // ACLK, Divider = 1, Pre-divider = 16; 4-pin MUX
    LCDCCTL0 = LCDDIV__1 | LCDPRE__16 | LCD4MUX | LCDLP;

    // VLCD generated internally,
    // V2-V4 generated internally, v5 to ground
    // Set VLCD voltage to 2.60v
    // Enable charge pump and select internal reference for it
    LCDCVCTL = VLCD_1 | VLCDREF_0 | LCDCPEN;

    LCDCCPCTL = LCDCPCLKSYNC;               // Clock synchronization enabled

    LCDCMEMCTL = LCDCLRM;                   // Clear LCD memory
    
//  HERE Alpha and digital segment function call
    LCDMEM[pos1] = alphabetBig['U'-65][0]; //U
    LCDMEM[pos2] = alphabetBig['S'-65][0]; //S
//    //LCDMEM[pos3]=0x3F; // b
//    LCDM14 = 0x01;
    showChar('B',pos3);

    //LCDM5=0x01;
    LCDCBLKCTL_L |= LCDBLKPRE0 | LCDBLKPRE2 |  LCDBLKMOD_2; //Blinking LCD for ALL segment 
    
    showChar('B',pos4);
      //Turn LCD on
    LCDCCTL0 |= LCDON;

    __bis_SR_register(LPM3_bits | GIE);
    __no_operation();
//
//    return 0;
}

Please provide me little solution for drive particular segment blinking.

Regards,

Pratik

**Attention** This is a public forum