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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3593|回復: 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);       //回到基本指令集
}

回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品视频一区二区三区四区 | 中文字幕不卡 | 日韩国产在线观看 | 99亚洲精品视频 | 人人性人人性碰国产 | 亚洲 日本 欧美 中文幕 | 国产午夜精品一区二区三区四区 | 夜夜爽99久久国产综合精品女不卡 | 国产精品一区二区三 | 国产欧美在线播放 | 亚洲日本欧美日韩高观看 | 中文在线一区二区 | 天天操天天舔 | 亚洲欧美在线观看 | 又黑又粗又长的欧美一区 | 久久精品国产久精国产 | 精品视频一区二区 | 精品国产欧美一区二区三区成人 | 中文字幕亚洲欧美日韩在线不卡 | 日本高清不卡视频 | 久久综合爱 | 日韩av成人在线观看 | www.887色视频免费 | 天天操天天摸天天爽 | 亚洲一区二区三区四区五区中文 | 99久久婷婷国产综合精品首页 | 免费的av网站 | 国产高清在线精品 | 99pao成人国产永久免费视频 | 秋霞电影一区二区 | 天天影视亚洲综合网 | 国产在线精品一区二区三区 | 国产精品免费av | 精品国产一区二区三区久久狼黑人 | 亚洲人的av | 一区二区三区欧美在线 | 久久精品av麻豆的观看方式 | 国产欧美在线视频 | 黄在线免费观看 | 337p日本欧洲亚洲大胆 | 国产精品69av |