likemu 发表于 2010-8-15 17:06:48

1602液晶显示自定字符出现乱码

本人刚学avr 想用1602显示自定义字符 但是老是出现乱码或不显示 程序如下 请大家帮忙看一下哪里出错!我想显示的字符是'c(温度符号)。


#include <iom16v.h>      
#include <macros.h>
#define uchar unsigned char
#define uint unsigned int
const unsigned char table[]={0x10,0x06,0x09,0x08,0x08,0x09,0x06,0x00};
void Delayus(uint US)         
{
uint i;
US=US*5/4;      
for( i=0;i<US;i++);
}
void Delayms(uint MS)         
{
uint i,j;
for( i=0;i<MS;i++)
for(j=0;j<1141;j++);   
}
void write_com(uchar com)
{
       PORTC&=~BIT(0);
       PORTC&=~BIT(1);
       PORTA=com;
       PORTC|=BIT(2);
       Delayms(1);
       PORTC&=~BIT(2);
}

void write_dat(uchar dat)
{   
       PORTC|=BIT(0);
       PORTC&=~BIT(1);
       PORTA=dat;
       PORTC|=BIT(2);
       Delayms(1);
       PORTC&=~BIT(2);

}



void main()
{char i;
DDRA=0XFF;
      DDRC|=BIT(0)|BIT(1)|BIT(2);
      PORTC&=~BIT(2);
      
      write_com(0X38);
      Delayms(5);
      write_com(0X01);
      Delayms(5);
      write_com(0X0C);
      Delayms(5);



write_com(0X40+0x01);
      Delayms(5);
      for(i=0;i<8;i++)
      {
         write_dat( table);
         Delayms(5);
      }
          write_dat(0x40);
          }

yzn07 发表于 2010-8-15 23:57:14

可以参见 《高级外设》视频教程 1602液晶专辑

http://www.znmcu.cn/softshow.asp?id=209

《单片机高级外设》1602液晶专辑 [玩转1602液晶]
1、显示效果欣赏
2、1602液晶的简介与应用
3、1602液晶接口定义
4、振南开发板上的1602液晶(请见新开发板的产品介绍)
5、1602液晶的硬件结构
6、1602液晶的一般用法
      1) 8位模式
      2) 4位模式
7、1602液晶的另类用法

      显示图案与汉字!!

likemu 发表于 2010-8-16 08:40:54

谢谢啦 我过去看看

likemu 发表于 2010-8-16 09:06:35

汗 作广告啊 只有上集,没有下集 而且还是⑤1的 我主要是想了解在avr中怎把自定义字符调到液晶上显示。希望有做过成功设计的高手 能帮帮吗?

wlwlwlwl 发表于 2011-6-21 07:48:34

人家给你那么好的资源。你要贤不好,你自己找,看看能不能找到比这更好的了

小太阳 发表于 2013-3-9 20:14:43

乱码了,会不会是硬件问题
页: [1]
查看完整版本: 1602液晶显示自定字符出现乱码