微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 我的1206液晶显示屏没反应 无论写什么程序屏幕都是显示16...

我的1206液晶显示屏没反应 无论写什么程序屏幕都是显示16...

时间:10-02 整理:3721RD 点击:
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit lcden=P3^4;
sbit lcdrs=P3^5;
sbit dula=P2^6;
sbit wela=P2^7;
void delay(uint z)
{
   uint i,j;
   for(i=0;i<110;i++)
   for(j=0;j<z;j++);

}        
void write_com(uchar com)
{
  lcdrs=0;
  P0=com;
  delay(5);
  lcden=1;
  delay(5);
  lcden=0;

}
void write_data(uchar date)
{
  lcdrs=1;
  P0=date;
  delay(5);
  lcden=1;
  delay(5);
  lcden=0;

}
void init()
{
  dula=0;
  wela=0;
  lcden=0;
  write_com(0x38);
  write_com(0x0f);
  write_com(0x06);
         
}

void main()
{
         init();
         while(1);

}  

运行没错误   但是没显示 求帮忙看看啊 谢谢各位高手

有1206吗?不会是1602吧?

dala,wala是哪个

段和位的控制端

1602?没有这个吧,我还以为其中一个是背光的

还是可以显示的,我用我的板试了,我的板管脚不一样所以改了管脚,你再试试
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit lcden=P2^7;
sbit lcdrs=P2^5;

sbit w=P2^6;

uchar code x[]={"1"};
void delay(uint z)
{
   uint i,j;
   for(i=0;i<110;i++)
   for(j=0;j<z;j++);

}
        
void write_com(uchar com)
{
  lcdrs=0;
  P0=com;
  delay(5);
  lcden=1;
  delay(5);
  lcden=0;

}


void write_data(uchar date)
{
  lcdrs=1;
  P0=date;
  delay(5);
  lcden=1;
  delay(5);
  lcden=0;

}
void init()
{  
  w=0;
  lcden=0;
  write_com(0x38);
  write_com(0x0f);
  write_com(0x06);   
}

void main()
{
         init();
                 write_com(0x81);
                 write_data(x[0]);
                 write_com(0x82);
                 write_data(x[0]);
                 write_com(0x84);
                 write_data(x[0]);
         while(1);

}  

就这个


特别感谢你  但是还是没反应啊   其他资料中的程序放进去有显示的  这个程序就是16个方晶格

你的程序除了初始化好像没有输出需要显示的东东,怎么显示?显示什么?
void main()
{
         init();
         while(1);

}  

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top