最近学习在学习单片机1602液晶的编程,只用4位数据线传送还是不熟悉,求高手指导,十分感谢……

最近学习在学习单片机1602液晶的编程,只用4位数据线传送还是不熟悉,求高手指导,十分感谢……,第1张

设置:write_com(0x28) //4位数据模式,双行,5*7点困做阵

-液尘---

写入这条命令,必须使用《8 位数据线》的格式。

设置好了之后,才能使用《4 位汪埋衡数据线》的格式,再写其它的命令和数据。

参考:

http://hi.baidu.com/do_sermon/item/e9867d0b5fd5d1c991571865

不好意思,您的经验真得很不够,这是十分简单的程序,你不懂估计是没有去看液晶的数据手册,或者懒得去看,都是不好的...

/******************************************************************/

/* 写入字节函数 */

/******************************************************************/

void ShowChar(unsigned char pos,unsigned char c)

{

unsigned char p

if (pos>=0x10) //液晶中,写入不同的行,使用不同的命令,命令保存在p这个变量里面,如果写入第一行,使用else那里的命令,否则使用下面的

p=pos+0xb0//命令代码高4位为0xc表示写入第二行,即0xb0+0x10=0xc0,后面的四位指示第二行具体哪一个位置,一共有16个位置

else

p=pos+0x80//命令代码高4位为0x8表示写入第二行,即0x80+0x00=0x80,后面的四位指示第一亩明行具体哪一个位置,一共有16个位置

WriteCommand (p)//写命令

WriteData (c) //写数据

}

/******************************************************************/

/* 写入字符串函数 */

/******************************************************************/

void ShowString (unsigned char line,char *ptr)

{

unsigned char l,i

l=line<<4//就是乘以16,0-15在第一行,16-35在第二行

for (i=0i<16i++)

ShowChar (l++,*(ptr+i))//循环显示16个字符 /迅姿告/册瞎调用上面的函数在l位置进行显示

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12483200.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存