赞助论坛
  • 2536阅读
  • 0回复

如何用51驱动无控制器lcd屏? [复制链接]

楼层直达
级别: 新手上路
发帖
2
精华
0
金币
6
威望
0
贡献
0
好评
0
注册
2012-04-21
楼主    lht5631080 发表于: 2012-04-24 18:07:44 
手中24064无控制器LCD屏,行列为T6A40、T6A39。控制端口4线:DATA、FLM、LP、SCP。
用89S52简单测试驱动,程序如下:(显示30条竖线)
bit DATA =P2^3;//串行数据
sbit FLM =P2^2;//帧同步
sbit LP   =P2^1;//行同步
sbit SCP =P2^0;//串行时钟

void wordsend(unsigned char dat)//字节发送
{
unsigned char i;
for(i=0;i++;i<8)
          {
          if((dat&128)){DATA=1;}
          else         {DATA=0;}
          SCP=1;SCP=0;
          dat=dat<<1;
          }
}

/*------------------------------------*/

main()
{
unsigned char row_num=30;//定义列30*8位=240列
unsigned char column_num=64;//定义行
FLM=0;LP=0;DATA=0;SCP=0;//控制端口置零
while(1){
        while(column_num--)//64行
                          {
                          while(row_num--){wordsend(8);}//写入B00001000,240列
                          LP=1;LP=0;//列输入240次,行同步
                          row_num=30;
                          }
        FLM=1;FLM=0;写入整屏,帧同步
        column_num=64;
        }
}
显示结果为黑、白屏交替闪烁。
哪位师傅看看问题出在哪里?