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闪烁 LCD 段

Guru**** 2522770 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/714783/ccs-msp430fr6989-msp430fr6989-blinking-lcd-segment

器件型号:MSP430FR6989

工具/软件:Code Composer Studio

您好!

请参阅以下代码、我想驱动特定段在 LCD 上闪烁。 例如、"ABC"因此、"A"仅闪烁"B""C"稳定。

LCDCBLKCTL_L |= LCDBLKPRE0 | LCDBLKPRE2 | LCDBLKMOD_2; <-此寄存器功能使所有"ABC" LCD 段闪烁。

int main (void)
{

WDTCTL = WDTPW | WDTHOLD; //停止 WDT

PJSEL0 = BIT4 | BIT5; //对于 LFXT

//初始化 LCD 段0 - 21;26 - 43
LCDCPCTL0 = 0xFFFF;
LCDCPCTL1 = 0xFC3F;
LCDCPCTL2 = 0x0FFF;

//禁用 GPIO 上电默认高阻抗模式
//激活先前配置的端口设置
PM5CTL0 &=~LOCKLPM5;

//配置 LFXT 32kHz 晶振
CSCTL0_H = CSKEY >> 8; //解锁 CS 寄存器
CSCTL4 &=~LFXTOFF; //启用 LFXT
操作
{
CSCTL5 &=~LFXTOFFG; //清除 LFXT 故障标志
SFRIFG1 &=~OFIFG;
} while (SFRIFG1和 OFIFG); //测试振荡器故障标志
CSCTL0_H = 0; //锁定 CS 寄存器

//初始化 LCD_C
// ACLK、分频器= 1、预分频器= 16;4引脚 MUX
LCDCCTL0 = LCDDIV_1 | LCDPRE__16 | LCD4MUX | LCDLP;

// VLCD 在内部生成,
// V2-V4在内部生成,v5接地
//将 VLCD 电压设置为2.60v
//启用电荷泵并为其选择内部基准
LCDCVCTL = VLCD_1 | VLCDREF_0 | LCDCPEN;

LCDCCPCTL = LCDCPCLKSYNC; //时钟同步已启用

LCDCMEMCTL = LCDCLRM; //清除 LCD 内存

//此处为 Alpha 和数字段函数调用
LCDMEM[pos1]=α betBig ['U'-65][0];//U
LCDMEM[pos2]= alphabetBig ['s-65][0];/////LCDMEM[pos3]=0x3F
;// b
// LCDM14 = 0x01;
showChar ('B'、pos3);

//LCDM5=0x01;
LCDCBLKCTL_L |= LCDBLKPRE0 | LCDBLKPRE2 | LCDBLKMOD_2;//所有段的闪烁 LCD

showChar ('B'、pos4);
//打开 LCD
LCDCCTL0 |= LCDON;

_bis_SR_register (LPM3_bits | GIE);
__no_operation();
//
//返回0;
} 

请为驱动特定段闪烁提供很少的解决方案。

此致、

Pratik

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Pratik、

     FR6989上的 LCD_C 模块可以支持"具有独立闪烁存储器的单个段的闪烁、用于静态 LCD 和2线至4线多路复用 LCD "、这是您所需要的。

    有关操作、请转至 FR6989用户指南的"36.2.4.1闪烁存储器"部分。