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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3513|回復: 0
打印 上一主題 下一主題
收起左側

LCD12864--頭文件

[復制鏈接]
跳轉到指定樓層
樓主
ID:51024 發表于 2014-7-12 01:51 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
LCD12864.h

#define LCD12864_RS PORTA.0
#define LCD12864_RW PORTA.1
#define LCD12864_EN PORTA.2
#define LCD12864_PortOut DDRA|=0x07  //P3口的低三位設置為輸出
#define LCD12864_Data DDRB
#define LCD12864_Read  PINB
#define LCD12864_Write  PORTB

void lcd12864_init(void);

void lcd12864_cleardd(void);

void lcd12864_cursoron(void);

void lcd12864_cursoroff(void);

void lcd12864_gotoxy(unsigned char x,unsigned char y);

void lcd12864_putchar(unsigned char temp);

void lcd12864_puts(unsigned char *str);

void lcd12864_cleargd(void);

void lcd12864_picture(flash unsigned char *ptr);

lcd12864.c

#include "lcd12864.h"
#include
#include
static void Write_Cmd(unsigned char cmd)
{
    unsignedchar temp,i;
           
   LCD12864_RS=0;
   LCD12864_RW=1;
   LCD12864_Data=0x00;
   do                     
   {   
       LCD12864_EN=1;           
       for(i=0;i<24;i++);
       temp=LCD12864_Read;
       LCD12864_EN=0;
    }
    while(temp& 0x80);
   LCD12864_Data=0xff;   
   LCD12864_RW=0;      
   LCD12864_Write = cmd;
   LCD12864_EN=1;
   for(i=0;i<24;i++);//延時                                    
   LCD12864_EN=0;
}
static void  Write_Data(unsigned chardat)
{
    unsignedchar temp,i;
           
   LCD12864_RS=0;
   LCD12864_RW=1;
   LCD12864_Data=0x00;
  
   do                     
   {   
       LCD12864_EN=1;           
       for(i=0;i<24;i++);//延時   
       temp=LCD12864_Read;
       LCD12864_EN=0;      
    }
    while(temp& 0x80);
   
   LCD12864_Data=0xff;
   LCD12864_RS=1;
   LCD12864_RW=0;
      
   LCD12864_Write = dat;
   LCD12864_EN=1;
   for(i=0;i<24;i++);//延時
   LCD12864_EN=0;
}
void lcd12864_init(void)
{                 
   LCD12864_PortOut;   //液晶控制端口設置為輸出
   
   Write_Cmd(0x30);   //基本指令集
   delay_ms(1);
   Write_Cmd(0x02);   // 地址歸位
   delay_ms(1);
   Write_Cmd(0x0c);  //整體顯示打開,游標關閉
   delay_ms(1);
   Write_Cmd(0x01);   //清除顯示
   delay_ms(1);
   Write_Cmd(0x06);   //游標右移
   delay_ms(1);
   Write_Cmd(0x80);  //設定顯示的起始地址
   delay_ms(1);  
}

void lcd12864_cleardd(void)
{
   Write_Cmd(0x01);
   delay_ms(5);
   lcd12864_gotoxy(0,0);   
}

void lcd12864_cursoron(void)
{
   Write_Cmd(0x0f);           //整體顯示開,游標開,游標位置開   
}

void lcd12864_cursoroff(void)
{
   Write_Cmd(0x0c);           //整體顯示開,游標關,游標位置關
}

void lcd12864_gotoxy(unsigned char x,unsigned char y)
{
   switch(y)
    {
    case0:Write_Cmd(0x080+x);break;
    case1:Write_Cmd(0x090+x);break;
    case2:Write_Cmd(0x088+x);break;
    case3:Write_Cmd(0x098+x);break;
    default:break;
    }
}

void lcd12864_putchar(unsigned char temp)
{
   Write_Data(temp);   
}

void lcd12864_puts(unsigned char *str)
{
    for(;*str !='\0';lcd12864_putchar(*(str++)));
}


void lcd12864_cleargd(void)
{
    unsignedchar i,j,k;
   
   Write_Cmd(0x34);       //打開擴展指令集
    i =0x80;           
    for(j = 0;j< 32;j++)
    {
       Write_Cmd(i++);
       Write_Cmd(0x80);
          for(k = 0;k < 16;k++)
          {
         Write_Data(0x00);
             }
    }
    i =0x80;
    for(j = 0;j < 32;j++)
    {
    Write_Cmd(i++);
       Write_Cmd(0x88);      
         for(k = 0;k < 16;k++)
         {
          Write_Data(0x00);
           }
   }  
   Write_Cmd(0x30);       //回到基本指令集
}

void lcd12864_picture(flash unsigned char *ptr)
{
       unsigned char i,j,k;
   
   Write_Cmd(0x34);       //打開擴展指令集
    i =0x80;           
    for(j = 0;j< 32;j++)
    {
       Write_Cmd(i++);
       Write_Cmd(0x80);
         for(k = 0;k < 16;k++)
         {
             Write_Data(*ptr++);
         }
    }
    i =0x80;
    for(j = 0;j < 32;j++)
    {
        Write_Cmd(i++);
       Write_Cmd(0x88);      
         for(k = 0;k < 16;k++)
         {
              Write_Data(*ptr++);
          }
   }
       Write_Cmd(0x36);       //打開繪圖顯示
   Write_Cmd(0x30);       //回到基本指令集
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品视频网站在线观看 | 国产精品亚洲片在线播放 | 久久网亚洲 | 一区二区高清在线观看 | 精品国产一区二区三区免费 | 久久久久久成人 | 成人免费视频网 | 久久91| 在线久草 | 国产精品乱码一区二区三区 | 爱爱爱av | 欧美中文字幕 | 国产欧美精品一区二区 | 亚洲第一视频网站 | 国产人久久人人人人爽 | 免费午夜电影 | 精品欧美激情在线观看 | www.av在线| 日韩在线欧美 | 久久久91精品国产一区二区精品 | 午夜视频网站 | 国产精品视频偷伦精品视频 | 国产精品片aa在线观看 | 成人毛片一区二区三区 | 亚洲成人一区 | 天天看天天干 | 日本综合在线观看 | 亚洲美女一区 | 亚洲一区二区黄 | 成人欧美一区二区三区在线播放 | 久久区二区 | 国产日韩精品一区 | 欧美久久一区二区三区 | 精品一区二区久久久久久久网站 | 欧美久久久久久 | 涩涩视频在线看 | 美女久久| 日韩在线欧美 | av手机免费在线观看 | 日本成人中文字幕 | 久久精品久久久久久 |