|
各位大侠:
我的问题是这样的:我用GPB0,GPB1,GPB9分别接上一块LCD的控制引脚CS,SID,SCLK,其中在51单片机中发送数据的函数部分语句如下
{
i_data=0xf8;
CS=1; //我用s2440IOP->rGPBDAT=s2440IOP->rGPBDAT|(0x1<<0);代替
SCLK=0; //我用s2440IOP->rGPBDAT=s2440IOP->rGPBDAT&~(0x1<<9);代替
for(i=0;i<8;i++) // 但是下面的问题来了,这个如何将8位数据按位写入SID也就是GPB1呢,进行移位操作写的话,如果还是按照上面的方法如
{
SID=(bit)(i_data&0x80); // s2440IOP->rGPBDAT=s2440IOP->rGPBDAT|(0x1<<1)的话,会再次的对CS,SCLK,也就是GPB0,GPB9写入值,这样的话
SCLK=0; // 显示就错误了,所以我想请问的是:在操作GPIO口时,是否有单独操作其中一位的函数或者命令(像51中的bit),或者有
SCLK=1; // 其他好的解决方法,谢谢大家......
i_data=i_data<<1;
}
.....
.....
|
|