亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? lcddisp.c

?? 關于lcd12864代碼
?? C
字號:

/*
管腳對應表

液晶模塊    44b0開發板

4	         4
5	         5
6            6 
其余都是電源,和信號無關,具體看說明

*/



/* File:LCDDISP.C
* 功能:使用硬件SPI接口輸出LCD顯示。
****************************************************************************/
#include "option.h"
#include "def.h"
#include "44b.h"
#include "44blib.h"

#include "picturemap.h"
#define displaycommand 0xfa
#define   LCD_CS       0x80           /* vd4 LCD的片選 */
#define controlcommand    0xf8
typedef unsigned long uint32;
typedef unsigned char uint8;
typedef unsigned short uint16;
 short displaybuffer[64][8];
void delay(unsigned long  dly);
void  Blink(int row);
void  TextDisplayInit(void);
void displaypicture(void);

#define LCDDATA  0x40    //p0.19  vd5
#define LCDCLK   0x20    //p0.17 vd6
/****************************************************************************
* 名稱:DelayNS()
* 功能:長軟件延時
* 入口參數:dly		延時參數,值越大,延時越久
* 出口參數:無
****************************************************************************/
void  DelayNS(uint32  dly)
{  uint32  i;

   for(; dly>0; dly--) 
      for(i=0; i<500000; i++);
}



/****************************************************************************
* 名稱:LCDIni()

****************************************************************************/

void  LCDIni(void)
{ 

				// 管腳功能設置
     rPCONC&=0xffff00ff;	
    rPCONC|=0x5500;    // 
}



/****************************************************************************
* 名稱:SendData()
* 功能:向LCD發送數據。
* 入口參數:data        待發送的數據

****************************************************************************/
void  SendData(uint8 data)
{ int i;
for(i=0;i<8;i++){
  if(((data<<i)&0x80)==0x80)
 rPDATC|=LCDDATA;//set dataline high
 else 
  rPDATC&=~LCDDATA; 
  delay(2); 
  rPDATC&=~LCDCLK;
  delay(2);
  rPDATC|=LCDCLK;
  
   ; //set dataline low 
  //  SSPDR = data;
  // while( 0==(SSPSR&0x80) );		// 等待SPIF置位,即等待數據發送完畢
   
  }
   
}


/****************************************************************************
*名稱 SendLCD()
* 功能:向LCD發送數據或命令。
* 入口參數:data    待發送的數據,命令/數據選擇 1 命令 0 數據
***************************************************************************/
void SendLcd(uint8 data,uint8 flag)
{
uint8 firstbyte,secondbyte;


   LCDIni() 	;		    // 初始化LCD接口
firstbyte=data&0xf0;
secondbyte=data<<4;
secondbyte=secondbyte&0xf0;


rPDATC|= LCD_CS; 		    // 片選
if(flag==1)
SendData(controlcommand);
if(flag==0)
SendData(displaycommand);

SendData(firstbyte);


SendData(secondbyte);

     rPDATC&=~LCD_CS;	
         
}




void DisplayChineseword(unsigned short int x,unsigned short int y,unsigned int chineseword) //在x,y位置的一個漢字顯示
{


	unsigned int i;
	char i1,i2;  
   i=(unsigned int)chineseword;
   i2=i;
   i1=i>>8;
   switch(x){
   case 0:
     SendLcd(0x80+y,1);               //DD RAM 地址給定
     break;
    case 1:
     SendLcd(0x90+y,1);               //DD RAM 地址給定
     break;
       case 2:
     SendLcd(0x88+y,1);               //DD RAM 地址給定
     break;
      case 3:
     SendLcd(0x98+y,1);               //DD RAM 地址給定
     break;
   }
     SendLcd(i1,0);   
     SendLcd(i2,0);
      
         
}
void printsentence(unsigned short int x,char *p)//xdenotes the start line  the 12864module is 4 line and 8 column
{
unsigned int chineseword;
unsigned short int temp1,temp2,i;
 //LCD初始化開始
  
    DelayNS(2);
   SendLcd(0x06,1);                //;DDRAM的地址計數器(AC)加1
 //LCD初始化結束
for( i=0;i<8;i++)
{
temp1=(unsigned short int)*p++;
temp2=(unsigned short int)*p++;
chineseword=temp1;
chineseword=(chineseword<<8)|(unsigned int)temp2;
//chineseword=(unsigned int);
DisplayChineseword(x,i,chineseword);
   }
}
void printdot(int x,int y)//x and y is 128*64
{



   displaybuffer[x][y/16]|=0x8000>>(y%16);
 
}

void clearpicture()
{
int i,j;

   SendLcd(0x32,1);              // 功能設置---8BIT控制界面,繪圖顯示ON
  
  SendLcd(0x36,1);                 //功能設置---8BIT控制界面,擴充指令集
  
 SendLcd(0x34,1);                //關顯示

   


 for(i=0;i<64;i++)
     for(j=0;j<8;j++)
          
      displaybuffer[i][j]=0;
      
  


   // SendLcd(0x36,1);          //開顯示

}

void clearsentence(){
  SendLcd(0x30,1);                 //功能設置---8BIT控制界面,基本指令集
   SendLcd(0x0c,1);              //顯示打開,光標關,反白顯示關 
   SendLcd(0x01,1);                 //清除屏幕顯示,將DDRAM的地址計數器歸零
    DelayNS(2);
}

void printxy(int x,int y,int Bold)
{
if(x<0) x=0;
if(y<0) y=0;
if(x>127) x=127;
if(y>63) y=63;
if(Bold==0) 
printdot(64-y,x);
else {printdot(64-y,x);
printdot(64-y+1,x);

}
}




void line_y(int startX,int startY,int length)
{
int i;
for (i=startX;i<length;i++)
     printdot(i,startY);
}

void line_x(int startX,int startY,int length)
{
int i;

 
SendLcd(0x34,1);                //關顯示
for (i=startY;i<length;i++)
     printdot(startX,i);
SendLcd(0x36,1);                //關顯示     
}

void graphshow()        //在LCD輸出顯示buffer的內容
{ int i,j;

 SendLcd(0x30,1);//基本命令
 SendLcd(0x02,1)   ;//地址歸位 
    SendLcd(0x36,1);    //    8BIT控制界面,擴充指令集
     SendLcd(0x32,1);     // 功能設置---8BIT控制界面,繪圖顯示ON
   SendLcd(0x34,1);                //關顯示
   SendLcd(0x34,1);                //關顯示
  
  for(i=0;i<64;i++)
     for(j=0;j<8;j++)
    {
   SendLcd(0x80+i%32,1);                //設置繪圖區的Y地址坐標
   
 
   
   SendLcd(0x80+(j+((int)(i/32))*8)%128,1) ;              //設置繪圖區的X地址坐標
  SendLcd(displaybuffer[i][j]>>8,0);
  SendLcd(displaybuffer[i][j],0);

    }

       
   
  SendLcd(0x36,1);          //開顯示
   
  }
  
  
 void  TextDisplayInit()
  {
   
   SendLcd(0x30,1);                 //功能設置---8BIT控制界面,基本指令集
   SendLcd(0x0c,1);              //顯示打開,光標關,反白顯示關 
   SendLcd(0x01,1);                 //清除屏幕顯示,將DDRAM的地址計數器歸零
   SendLcd(0x02,1);
   
  }


 

  void displaypicture( )
  {
  int i,j,temp1,temp2;
//  linex(0,0,20);
  for(i=0;i<64;i++)
     for(j=0;j<8;j++)
      {     
      temp1 =0x00;
      temp2=temp1|picture[i][j*2];
      temp2=temp2<<8;
      temp1=temp2|picture[i][j*2+1];
      displaybuffer[i][j]=temp1;
      }
  }
  
  
  //發白顯示
void  Blink(int row)
  {int i,j;
 
    SendLcd(0x34,1);                //關顯示

  for(i=0;i<64;i++)
     for(j=0;j<8;j++)
    {
   SendLcd(0x80+i%32,1);                //設置繪圖區的Y地址坐標
   
 
   
   SendLcd(0x80+j+((int)(i/32))*8,1) ;              //設置繪圖區的X地址坐標

if((row*16<i)&&(i<(row+1)*16) ){  SendLcd(0xff,0);
       SendLcd(0xff,0);
    }
  else{
  SendLcd(0x0,0);
  SendLcd(0x0,0);
  };
     SendLcd(0x36,1);                 //功能設置---8BIT控制界面,擴充指令集

    }

   
  
  }
  
  
void flash(int location){
if(location!=0)
{
SendLcd(0x30,1);//基本指令
//SendLcd(0x,1);//
SendLcd(0xf,1);//游標開
SendLcd(0x7,1);
SendLcd(0x80+location,1);

}




;
}

void delay(unsigned long i)
{

for(i;i>0;i--);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
4438x亚洲最大成人网| 午夜亚洲福利老司机| 91麻豆高清视频| 久久久一区二区| 欧美一二三四在线| 日韩福利视频网| 亚洲免费成人av| 91免费国产在线观看| 亚洲自拍偷拍av| 中文字幕在线观看一区| 欧美一级欧美三级| 91亚洲精品乱码久久久久久蜜桃 | 精品裸体舞一区二区三区| 免费人成在线不卡| 亚洲综合成人在线视频| 亚洲三级在线播放| 日韩精品一区二区三区在线 | av高清久久久| 国产一区二区三区免费在线观看| 91亚洲资源网| 久草在线在线精品观看| 国产精品一级在线| 精品毛片乱码1区2区3区| 国产一区91精品张津瑜| 精品无人码麻豆乱码1区2区 | 床上的激情91.| 一区二区三区中文字幕电影| 亚洲三级免费观看| 亚洲少妇最新在线视频| 日韩毛片高清在线播放| 伊人性伊人情综合网| 久久久综合视频| 亚洲国产精品99久久久久久久久 | 欧美视频在线播放| 欧美一区二区三区四区五区| 欧美综合在线视频| 日韩一区二区免费在线观看| 91精品国产手机| 久久亚洲春色中文字幕久久久| 制服丝袜中文字幕亚洲| 精品区一区二区| 中文字幕第一页久久| 午夜私人影院久久久久| 亚洲综合精品自拍| 日本麻豆一区二区三区视频| 美国十次了思思久久精品导航| 国产精品香蕉一区二区三区| 国产不卡视频一区二区三区| 成人性生交大片免费看在线播放| 欧美日韩另类一区| 777午夜精品视频在线播放| 91精品免费在线| 欧美激情一区二区三区在线| 日韩中文字幕av电影| 成人精品电影在线观看| 国产网站一区二区| 男男视频亚洲欧美| 国产福利一区在线| 国产欧美一区在线| 日韩二区在线观看| 欧美在线不卡视频| 中文字幕亚洲综合久久菠萝蜜| 国产日韩精品一区二区三区 | 国产欧美日韩久久| 日韩精品每日更新| 成人动漫一区二区在线| 精品国产乱码久久久久久蜜臀| 亚洲激情网站免费观看| 国产91精品露脸国语对白| 日日夜夜免费精品| 日韩电影在线观看电影| 在线观看欧美黄色| 午夜私人影院久久久久| 日本高清免费不卡视频| 精品国产乱码久久| 亚洲成人一区二区| 欧美一级片在线看| 日韩**一区毛片| 欧美一区午夜视频在线观看| 日本欧美久久久久免费播放网| 91美女精品福利| 最新不卡av在线| 一本色道综合亚洲| 亚洲精品国产成人久久av盗摄| 欧美日韩免费在线视频| 成人黄动漫网站免费app| 中文字幕一区二区三区色视频| 成人精品小蝌蚪| 国产精品美女久久久久aⅴ | 国产精品系列在线| 一本大道av伊人久久综合| 日韩精品一二三四| 日韩精品一区二区三区在线观看| 精品国产一区二区三区四区四| 久久国产成人午夜av影院| 中文字幕不卡三区| 制服丝袜成人动漫| 国产一区二三区| 亚洲超碰精品一区二区| 色www精品视频在线观看| 日本不卡不码高清免费观看| 国产婷婷色一区二区三区在线| 91久久精品网| 欧美日韩一区二区三区在线看| 国产乱淫av一区二区三区| 亚洲四区在线观看| 国产日韩v精品一区二区| 日韩女同互慰一区二区| 日韩精品一区二区三区视频在线观看 | 成人动漫一区二区在线| 韩国欧美国产1区| 蜜桃免费网站一区二区三区| 17c精品麻豆一区二区免费| 欧美一区二区福利在线| 日本二三区不卡| 色综合久久综合中文综合网| 成人美女视频在线观看| 狠狠色综合播放一区二区| 老司机精品视频导航| 精品国精品国产| 午夜久久久影院| 亚洲精品久久久蜜桃| 亚洲国产人成综合网站| 婷婷开心激情综合| 蜜臀久久99精品久久久久宅男| 亚洲午夜免费视频| 日韩精品一区国产麻豆| 精品日韩在线一区| 欧美日韩一区二区三区四区五区| 播五月开心婷婷综合| 99re亚洲国产精品| 色国产精品一区在线观看| 成人免费毛片a| 在线视频一区二区免费| 欧美视频中文一区二区三区在线观看| 欧美成人欧美edvon| 久久久亚洲精品石原莉奈| 日韩欧美亚洲一区二区| 中文字幕av不卡| 久久精品理论片| 福利视频网站一区二区三区| 欧美视频一区二区三区在线观看| 欧美一区二区免费| 91麻豆精品国产91久久久久久 | 国产女同互慰高潮91漫画| 日韩电影在线一区| 国产乱码精品1区2区3区| 欧美日韩精品电影| 久久婷婷国产综合精品青草| 国产suv精品一区二区三区| 国产精品亚洲视频| 欧洲色大大久久| 国产精品久久777777| 视频一区免费在线观看| 欧美三级日韩三级| 久久精品男人的天堂| 亚洲午夜成aⅴ人片| 成人激情文学综合网| 精品国产免费一区二区三区四区 | 丁香婷婷综合色啪| 91麻豆精品国产91久久久使用方法| 1区2区3区欧美| 91在线观看成人| 91精品国产高清一区二区三区蜜臀| 亚洲一区精品在线| 国产91精品在线观看| 国产欧美综合在线观看第十页| 亚洲www啪成人一区二区麻豆| 欧美高清视频一二三区| 青青草国产精品97视觉盛宴| 日韩欧美在线一区二区三区| 国产精品久久午夜夜伦鲁鲁| 99精品欧美一区二区三区小说 | 91美女视频网站| 中文字幕一区二区三区在线观看| 国产aⅴ综合色| 国产精品嫩草久久久久| 色88888久久久久久影院按摩| 久久综合九色综合欧美98| 亚洲综合视频网| 在线精品视频免费播放| 亚洲精品免费在线播放| 一区二区三区四区激情| 欧美理论片在线| 视频一区视频二区中文| 中文字幕在线观看不卡| 99国产欧美另类久久久精品| 亚洲男人电影天堂| 日韩午夜激情av| 国产精品一级二级三级| 欧美国产激情一区二区三区蜜月| 欧美系列日韩一区| 欧美aaaaaa午夜精品| 中文字幕欧美激情| 色综合色综合色综合| 一区二区三区日本| 欧美日本韩国一区二区三区视频| 国产在线精品一区二区三区不卡 | 在线中文字幕不卡| 日本午夜精品视频在线观看|