大家好、
现在、我已经开始尝试对 MSP430和 NHD-C0216CZ-FSW-FBW-3V3之间的 SPI LCD 接口进行编程、我已经按照了新续流公司的代码示例 Viven 操作、但仍然无法实现再制造。因此、我的担忧如下:
1 -在数据表中、写入的最小串行时钟周期 为200ns、这意味着我可以选择5MHz 以下的任何频率。(如果我错了、请告诉我)、 另外、我不理解他们分别写入了 SCL H 脉冲宽度和 SCL 脉冲宽度最小值20ns 和160ns、我不知道如何在 SPI 上配置这些值。
2在第二个问题中、我遵循了公司给出的示例、使用 Txbuffer 而不是每位粗化数据位
命令公司给出的示例 为
空 writecom (int d)
{
CS = 0;//CS
RS = 0;//A0 =命令
for (serialcounter = 1;serialcounter <= 8;serialcounter++)//发送8位
{
if (((d&0x80)=0x80)//仅获取 MSB
SI=1;//if 1、然后 SI=1
其他
SI=0;//if 0、然后 SI=0
D=(d<1);//将数据字节向左移位
SCL = 0;
SCL = 1;
SCL = 0;//SCL
}
CS = 1;
}
我在 MSP430上的代码是
void command_lcd (int c){
P4OUT &=~BIT0; // P4.0低电平有效 CSB 芯片选择、选择 LCD
P4OUT &=~BIT1; //引脚 P4.1设置为低电平、LCD 引脚 RS、指令模式
while (UCB0STAT 和 UCBUSY);
while (!(IFG2 & UCA0TXIFG));
UCA0TXBUF=c;
P4OUT |=BIT0; // P4.0设置为高电平。 CSB
P4OUT |=BIT1; //引脚 P4.1设置为高电平。 Rs
}
我的担心是、在他们的示例中、他们也会手动向 SCL 输出高值和低值发送数据、因为您可以看到我理解的是、我只需在 UCA0TXBUF 上输入数据就可以通过 SPI 发送数据、而无需使用 如在设置每位位位的示例中所示。 我使用了相同的命令、但我仍然没有从 LCD 上获得任何东西
谢谢你