标题: 请教有关LCD_ShowString函数的问题 [打印本页]

作者: 一只小萌新啊    时间: 2022-9-1 17:25
标题: 请教有关LCD_ShowString函数的问题
请问这个函数应该怎么定义啊,想在程序里用LCD_ShowString(1,16," ")这样的指令
作者: wulin    时间: 2022-9-1 20:43
这是LCD显示字符串的函数,形参通常包含坐标位置、字节长度和" 字符串.........."等内容。
作者: angmall    时间: 2022-9-1 22:29
这个函数应该这么样定义

  1. void LCD_ShowString(uchar x,uchar y, uchar en,uchar *dat) //左右屏显示设置
  2. {
  3.         uchar i=0;
  4.         lcd_werite_x_y(x,y);            //设定起始地址
  5.         for(i=0;i<8;i++)
  6.         {
  7.                 write_date(dat[en*16+i]);
  8.         }   //先写上半个字,共8个字节
  9.         lcd_werite_x_y(x+1,y);          //设定起始地址,此次将行地址加1,以便写下行
  10.         for(i=0;i<8;i++)
  11.         {
  12.                 write_date(dat[en*16+8+i]);
  13.         } //再写下半个字,共8个字节
  14. }
复制代码

作者: xxxevery    时间: 2022-9-1 23:26
你这样问很难回答啊,这个具体要看你的LCD是那种型号,这里给你个LCD1602的参考一下:
//LCD1602显示一行字符
//x为在一行中开始显示的位置,取值0-15;y为显示行,取值0-1
void lcd1602_showstring(unsigned char x, unsigned char y, unsigned char *p)
{
    if ((x >= 16) | (y >= 2))
    {
        return;
    }
   
    if (y == 0)
    {
        LcdWriteCom(0x80 + x);
    }
    else
    {
        LcdWriteCom(0xC0 + x);
    }
   
    while (*p != '\0')
    {
        LcdWriteData(*p++);
    }
}

作者: yzwzfyz    时间: 2022-9-2 08:14
学会查手册,这个很重要。
作者: 一只小萌新啊    时间: 2022-9-2 08:55
好的,清楚了,谢谢大家




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1