(版主: wayeah)

标题:串口液晶的使用-普通IO串口程序

11-21 21:22
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7
yesever 秀才
头衔 --
yesever 注册 09-03-12
来自
串口液晶的使用-普通IO串口程序
深圳炜烨兴电子公司推出的串口液晶通常有两到三个白色插座,一个两芯,另外的是三芯。两芯的是电源输入,要注意看PCB上的标注(+-号)的正负电源极性,如果接反了有可能会烧坏整个模块!
  三芯的两个座(部分为旧版产品只有一个三芯座)为通信端,标为COM2的为普通IO串口(TTL电平),对应的PCB旁边上会有标明相关的字母(MCK,SCK,SDA),请按相应的接线连接到你的控制端电路上。

//    以下为相应的驱动程序代码:(C51)
#include <reg51.h>   //51单片机头文件
sbit MCLK=P1^0;
sbit SCLK=P1^1;
sbit SDA =P1^2;

unsigned char bdata DATA;
sbit BIT0=DATA^0;
// 发送一个数据到模块,
void Send_byte_IO(unsigned char ch)
{
 unsigned char i;
 if(!MCLK)return; // 
 MCLK=0; //申请通讯
 DATA=ch;
 
 for(i=4;i!=0;i--)
 {
  while(SCLK); //检测从机响应
  SDA=BIT0;   //放一个bit到SDA
  MCLK=1;  
  DATA=DATA>>1; //准备下一个bit

  while(!SCLK); //检测从机响应
  SDA=BIT0;   //放一个bit到SDA
  MCLK=0;  
  DATA=DATA>>1; //准备下一个bit
 }
 while(SCLK); //检测从机收完
 MCLK=1;
 while(!SCLK);//等待从机准备好
 SDA=1;

}

//发送一个清屏指令:clr
void lcd_clr()
{
Send_byte_IO('c');
Send_byte_IO('l');
Send_byte_IO('r');
Send_byte_IO(0x0d);
delay(200);  //延时程序(大概需要50-80ms时间)
}
void delay(uchar t)  //延时程序
{
while(t--)
 _nop_();
}
//显示字符串 str
void lcd_string(bit char_bit, unsigned char *pst)
{

Send_byte_IO('s');
Send_byte_IO('t');
Send_byte_IO('r');
Send_byte_IO(char_bit);
while(*pst!=0)
     Send_byte_IO(*pst++);
       //Send_byte_IO; //字符串结束标志\0
Send_byte_IO(0x0d); //串口发送结束标志
delay(200);  //延时大概需要50-80ms
}
//显示直线(x1,y1)-(x2,y2)
void dis_line(unsigned char x1,unsigned char y1,unsigned char x2,unsigned char y2)
{
Send_byte_IO('l');
Send_byte_IO('i');
Send_byte_IO('n');
Send_byte_IO(x1);
Send_byte_IO(y1);
Send_byte_IO(x2);
Send_byte_IO(y2);
Send_byte_IO(0x0d);
}
//主程序
void main(void)
{
  delay(100);
 
  lcd_clr();   //清屏
   lcd_string(0,"I like the SLCM. 我喜欢串口液晶");  //显示一个字符串
   dis_line(1,4,121,46);//显示一条直线(1,4)-(121,46)
  while(1);  //程序停止
}

/////////显示的图片效果如下:






本帖最后由 yesever 于 2011-4-22 15:42:03 编辑
183.15.190.* 楼主
标题
使用表情识别
使用UBB代码
使用个人签名
Copyright 2002-2011©深圳市炜烨兴电子有限公司-LCD在线 All Right Reserved
QQ:56154083 电话:13714759758 0755-86230486 86230436
粤ICP备05054967号