久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2962|回復: 0
收起左側

帶字庫的lcd12864液晶驅動c51程序

[復制鏈接]
ID:83710 發表于 2015-6-23 23:50 | 顯示全部樓層 |閱讀模式
#include<reg52.h>

#include<stdlib.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar xian,flag;
uint time=0;
#define Lcd_data P0
sbit RS  =  P2^6;             //(數據命令)寄存器選擇輸入
sbit RW  =  P2^5;             //液晶讀/寫控制
sbit EN  =  P2^7;             //液晶使能控制
sbit PSB =  P3^2;             //串/并方式控制

uchar code dis1[]={"    長恨歌    "};
uchar code dis2[]={"在天愿作比翼鳥"};
uchar code        dis3[]={"在地愿為連理枝"};
uchar code dis4[]={"自古多情空余恨"};
uchar code dis5[]={"此恨綿綿無絕期"};

void delay(uint x)
{
    uint i,j;
        for(i=x;i>0;i--)
           for(j=110;j>0;j--);
}


//寫指令到LCD
void write_com(uchar com)
{
        RS=0;
        RW=0;
        EN=0;
        P0=com;
        delay(1);
        EN=1;
        delay(1);
        EN=0;
}

//寫指令到LCD
void write_data(uchar dat)
{
         RS=1;
         RW=0;
         EN=0;
         P0=dat;
         delay(1);
         EN=1;
         delay(1);
         EN=0;
}

void lcd_pos(uchar X,uchar Y)
{
     uchar pos;
         if(X==0)X=0x80;
         else if(X==1)X=0x90;
         else if(X==2)X=0x88;
         else if(X==3)X=0x98;
         pos=X+Y;
         write_com(pos);
}

void display(uchar p[],uchar a)
{
     uchar*display1;
     display1=p;
         lcd_pos(a,0);
     while((*display1)!='\0')
      {
                 write_data(*display1);
                 display1++;
      }
}

void init()
{
      TMOD=0x02;
          EA=1;
          ET0=1;
          TH0=6;
          TL0=6;
      TR0=1;
          time=0;
          xian=0;
}

void lcd_init()
{
    PSB=1;//并口方式
        write_com(0x30); //設置8位數據
        delay(5);
        write_com(0x0c);//顯示開,光標關
        delay(5);
        write_com(0x01); //清除顯示內容
        delay(5);
}

main()
{
         init();
         delay(10);
         lcd_init();
         while(1)
         {
                 switch(xian)
                        {
                            case 0:display(dis1,0); break;
                                case 1:display(dis2,1); break;
                                case 2:display(dis3,2); break;
                                case 3:display(dis4,3); break;
                                case 4:display(dis5,0); break;goto a;
                                default:break;
                        }
        }
        a:
        while(1);          
}


void timer0() interrupt 1
{
      time++;
          if(time==4000)
           {
              time=0;
                  xian++;
              if(xian==5)xian=0;
           }
}


回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲午夜在线 | 中文字幕1区 | 国产福利在线小视频 | 久久久久久久夜 | 国产激情视频在线 | 亚洲欧美日韩精品久久亚洲区 | 欧美日韩专区 | 91精品久久久久久久久久 | 毛片站| 九九热在线精品视频 | 国产精品精品久久久久久 | 一区二区三区在线观看视频 | 日韩三级 | 男女视频在线观看免费 | 日本一区二区三区四区 | 综合网视频 | 成人中文字幕在线观看 | 日韩一区二区在线观看 | 亚洲第一成人影院 | 国产精品3区 | 久久国产激情视频 | 国产资源视频 | 99福利视频| av天天操 | 久久久久亚洲精品国产 | 亚洲一区二区三区视频在线 | 成年网站在线观看 | 欧美精品在线播放 | 久久久久久久久蜜桃 | 精品videossex高潮汇编 | 一区二区三区国产精品 | 亚洲精品欧美 | 国产在线观看一区二区三区 | 国产精品色 | 久久久精品综合 | 成人av片在线观看 | 国产午夜精品久久久 | 久久久久久国产 | 中文字幕国产日韩 | 欧美精品久久 | 欧美五月婷婷 |