请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSP430FR4133 主题中讨论的其他器件:Energia
您好!
如何使用 Energia 在 EVM 的 LCD 屏幕上打印十进制数?
谢谢、
Julio
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.
您好!
如何使用 Energia 在 EVM 的 LCD 屏幕上打印十进制数?
谢谢、
Julio
Julio、
CCS 和 Resource Explorer 中提供了相关的示例代码。
//
// MSP430FR413x 演示- LCD_E、在 LPM3.5模式下在 LCD 上显示字符串"123456"。
//
//说明:按顺序向 LCD 显示屏显示“123456”。
// f (LCD)=32768Hz/((7+1)*16)=256Hz。
// MSP430在 LPM3.5模式下工作以实现超低功耗。
// ACLK =默认 REFO ~32768Hz、
// MCLK = SMCLK =默认 DCODIV ~1MHz
// LCD 引脚-端口引脚映射
// LCD 引脚 G6021_Linex
// 1. L8 (P3.0)
// 2. L9 (P3.1)
// 3. L10 (P3.2)
// 4. L11 (P3.3)
// 5. L12 (P3.4)
// 6. L13 (P3.5)
// 7. L14 (P3.6)
// 8. L15 (P3.7)
// 9. L16 (P6.0)
// 10. L17 (P6.1)
// 11. L18 (P6.2)
// 12. L19 (P6.3)
// 13. L20 (P6.4)
// 14. L21 (P6.5)
// 15. L22 (P6.6)
// 16. L23 (P6.7)
// 17. L4 (P7.4)
// 18. L5 (P7.5)
// 19. L6 (P7.6)
// 20. L7 (P7.7)
// 21. L3 (P7.3)
// 22. L2 (P7.2)
// 23. L1 (P7.1)
// 24 L0 (P7.0)
// 25 -//26.
-//27.
-//28.
-//29.
-//30.
-//31.
-//32.
L24 (P2.0)
// 33 L25 (P2.1)
// 34 L26 (P2.2)
// 35 L36 (P5.4)
// 36 L37 (P5.5)
// 37 L38 (P5.6)
// 38 L39 (P5.7)
//
Cen Fang
// Wei Zhao
// Texas Instruments Inc.
// 2013年10月
//使用 IAR 嵌入式工作平台 v5.60和 Code Composer Studio v5.5构建
//*********
#include
#define pos1 4. //数字 A1 - L4
#define pos2 6. //数字 A2 - L6
#define pos3 8. //数字 A3 - L8
#define pos4 10. //数字 A4 - L10
#define pos5 2. //数字 A5 - L2
#define pos6 18. //数字 A6 - L18
const char digit[10]=
{
0xFC、 //"0"
0x60、 //"1"
0xDB、 //"2"
0xF3、 //"3"
0x67、 //"4"
0xB7、 //"5"
0xBF、 //"6"
0xE4、 //"7"
0xFF、 //"8"
0xF7 //"9"
};
int main( void ){
WDTCTL = WDTPW | WDTHOLD; //停止看门狗计时器
//配置 XT1振荡器
P4SEL0 |= BIT1 | BIT2; // P4.2~P4.1:晶振引脚
操作
{
CSCTL7 &=~(XT1OFFG | DCOFFG); //清除 XT1和 DCO 故障标志
SFRIFG1 &=~OFIFG;
} while (SFRIFG1和 OFIFG); //测试振荡器故障标志
CSCTL6 =(CSCTL6 &~(XT1DRIVE_3))| XT1DRIVE_2; // XT1振荡器的驱动强度和电流消耗更高
//禁用 GPIO 上电默认高阻抗模式
//激活先前配置的端口设置
PM5CTL0 &=~LOCKLPM5;
//配置 LCD 引脚
SYSCFG2 |= LCDPCTL; //选择 R13/R23/R33/LCDCAP0/LCDCAP1引脚
LCDPCTL0 = 0xFFFF;
LCDPCTL1 = 0x07FF;
LCDPCTL2 = 0x00F0; //选择 L0~L26和 L36~L39引脚
LCDCTL0 = LCDSSEL_0 | LCDDIV_7; // flcd ref freq 为 xtclk
// LCD 操作-模式3,内部3.08v,电荷泵256Hz
LCDVCTL = LCDCPEN | LCDREFEN | VLCD_6 |(LCDCPFSEL0 | LCDCPFSEL1 | LCDCPFSEL2 | LCDCPFSEL3);
LCDMEMCTL |= LCDCLRM; //清除 LCD 内存
LCDCSSEL0 = 0x000F; //配置 COM 和 SEG
LCDCSSEL1 = 0x0000; // L0、L1、L2、L3:COM 引脚
LCDCSSEL2 = 0x0000;
LCDM0 = 0x21; // L0 = COM0、L1 = COM1
LCDM1 = 0x84; // L2 = COM2、L3 = COM3
//显示“123456”
LCDMEM[pos1]=位[1];
LCDMEM[pos2]=数字[2];
LCDMEM[pos3]= digit[3];
LCDMEM[pos4]=数字[4];
LCDMEM[pos5]= digit[5];
LCDMEM[pos6]= digit[6];
LCDCTL0 |= LCD4MUX | LCDON; //打开 LCD,选择4路复用
PMMCTL0_H = PMMPW_H; //打开 PMM 寄存器进行写入
PMMCTL0_L |= PMMREGOFF; //并设置 PMMREGOFF
_bis_SR_register (LPM3_bits | GIE); //输入 LPM3.5
__no_operation(); //对于调试器
}
在您的案例中是否需要使用 Energia?
谢谢、
NIMA Eskandari