求助wr_lcd (comm,0x30);里面comm是什么意思?
最近在研究ocm4x8c这个12864的LCD但是在看其他人的设计时,wr_lcd (comm,0x30);我实在不知道它代表什么,我知道它的大概意思是写入指令0x30,但是是写入到comm吗?comm预编译为0,(comm,0x30)是把0x30传输给0还是什么?
头疼啊,谁来解释下,comm到底是什么意思?
/ocm4x8c(串).c
//=====================================================================
#include <reg52.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
#define comm 0
#define dat 1
/
void chn_disp1 (uchar const *chn)
{
uchar i,j;
// wr_lcd (comm,0x30);
wr_lcd (comm,0x80);
delay (100);
这个是命令数据锁定位,当这个管脚(应该是RS)为0(comm)时单片机向显示屏传输命令,当这个管脚(应该是RS)为1(dat)时单片机向显示屏传输数据,命令是为了配置显示屏,数据一般就是要显示的内容。你可以看一下wr_lcd ();这个函数里面是怎么操作的。
仔细琢磨了下,又去看了wr_lcd ();这个程序,大致懂了,他先预编译data=1,comm=0,然后在wr_lcd ();里面
if(data or comm)//如果data或comm,或者是1或0。
{
rs=1;//也就是说rs=1时,rs近似于等于data
rw=0;//单片机向显示屏传输数据
e=1;//使能开
}
else
{
rs=0;//当rs=0时,rs近似于等于comm
rw=0;//单片机向显示屏传输命令
e=1;//使能开
}
wr_lcd (comm,0x30)的意思应该就是单片机向显示屏传输命令0x30,是这个意思吧。