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

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

?? lcddrive.c

?? LCM240320底層驅動程序
?? C
?? 第 1 頁 / 共 2 頁
字號:
* 功能:在指定位置上顯示一個16X16的漢字。
* 入口參數: x		指定點所在列的位置
*            y		指定點所在行的位置
* 出口參數:返回值為1時表示操作成功,為0時表示操作失敗。
* 說明:操作失敗原因是指定地址超出緩沖區范圍。
****************************************************************************/
void LCD_WriteoneHZ(uint8 CurH,uint8 CurL,uint8 *ZiKu)      //在指定位置顯示一個漢字
{
      uint8 i;
	  LCD_WriteTCommand1(LCD_CSRDIR_D);
	  LCD_WriteTCommand3(LCD_CSR_W,CurL,CurH);              // 設定光標位置命令	 
      LCD_WriteTCommand1(LCD_MWRITTE);            //允許MPU 連續地把顯示數據寫入顯示區內命令
	  
	  i=0;
      while(i<0x1e)
	  {
	    LCD_WriteTData1(ZiKu[i]);
		 i=i+2;
		 
	   }
      
      LCD_WriteTCommand3(LCD_CSR_W,CurL+1,CurH);              // 設定光標位置命令     
      LCD_WriteTCommand1(LCD_MWRITTE);
   	  i=1;
	  while(i<0x21)
      {
         LCD_WriteTData1(ZiKu[i]);
         i=i+2;
         
      }
}


/****************************************************************************
* 名稱:LCD_UpdatePoint()
* 功能:在指定位置上畫點,刷新某一點。
* 入口參數: x		指定點所在列的位置
*           y		指定點所在行的位置
* 出口參數:返回值為1時表示操作成功,為0時表示操作失敗。
* 說明:操作失敗原因是指定地址超出緩沖區范圍。
****************************************************************************/
void  LCD_UpdatePoint(uint32 x, uint32 y)
{  uint32  addr; 
 
   /* 找出目標地址 */
   addr = y*(GUI_LCM_XMAX>>3) + (x>>3);
   LCD_WriteTCommand3(LCD_CSR_W, addr&0xFF, addr>>8);	// 置地址指針
   
   /* 輸出數據 */
   LCD_WriteTCommand2(LCD_MWRITTE, gui_disp_buf[y][x>>3]);
}



/****************************************************************************
*                    與LCM相關的GUI接口函數
****************************************************************************/


/****************************************************************************
* 名稱:GUI_FillSCR()
* 功能:全屏填充。直接使用數據填充顯示緩沖區。
* 入口參數:dat		填充的數據(對于黑白色LCM,為0的點滅,為1的點顯示)
* 出口參數:無
****************************************************************************/
void  GUI_FillSCR(uint8 dat)
{  uint32  i, j;

   for(i=0; i<GUI_LCM_YMAX; i++)		// 歷遍所有行
   {  for(j=0; j<GUI_LCM_XMAX/8; j++)	// 歷遍所有行
      {  gui_disp_buf[i][j] = dat;		// 填充數據
	  }
   }
   
   /* 填充LCM */
   LCD_FillAll(dat);
}


/****************************************************************************
* 名稱:GUI_Initialize()
* 功能:初始化GUI,包括初始化顯示緩沖區,初始化LCM并清屏。
* 入口參數:無
* 出口參數:無
****************************************************************************/
void  GUI_Initialize(void)
{  LCD_Initialize();					// 初始化LCM模塊工作模式,純圖形模式
   GUI_FillSCR(0x00);					// 初始化緩沖區為0x00,并輸出屏幕(清屏)
} 


/****************************************************************************
* 名稱:GUI_ClearSCR()
* 功能:清屏。
* 入口參數:無
* 出口參數:無
* 說明:用戶根據LCM的實際情況編寫此函數。
****************************************************************************/
void  GUI_ClearSCR(void)
{  GUI_FillSCR(0x00);
}


uint8 const  DCB_HEX_TAB[8] = {0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01};

/****************************************************************************
* 名稱:GUI_Point()
* 功能:在指定位置上畫點。
* 入口參數: x		指定點所在列的位置
*           y		指定點所在行的位置
*           color	顯示顏色(對于黑白色LCM,為0時滅,為1時顯示)
* 出口參數:返回值為1時表示操作成功,為0時表示操作失敗。(操作失敗原因是指定地址超出有
*          效范圍)
* 說明:用戶根據LCM的實際情況編寫此函數。對于單色,只有一個位有效,則要使用左移的方法
*      實現point_dat = (point_dat&MASK_TAB [i]) | (color<<n),其它位數的一樣
*      處理。
****************************************************************************/
uint8  GUI_Point(uint32 x, uint32 y, TCOLOR color)
{  /* 參數過濾 */
   if(x>=GUI_LCM_XMAX) return(0);
   if(y>=GUI_LCM_YMAX) return(0);
   
   /* 設置緩沖區相應的點 */
   if( (color&0x01) != 0 ) gui_disp_buf[y][x>>3] |= DCB_HEX_TAB[x&0x07];
      else  gui_disp_buf[y][x>>3] &= (~DCB_HEX_TAB[x&0x07]);

   /* 刷新顯示 */
   LCD_UpdatePoint(x, y);
   return(1);
}

/****************************************************************************
* 名稱:GUI_ReadPoint()
* 功能:讀取指定點的顏色。
* 入口參數:x			指定點所在列的位置
*          y		指定點所在行的位置
*          ret		保存顏色值的指針
* 出口參數:返回0時表示指定地址超出有效范圍。
* 說明:對于單色,設置ret的d0位為1或0,4級灰度則為d0、d1有效,8位RGB則d0--d7有效,
*      RGB結構則R、G、B變量有效。
****************************************************************************/
int  GUI_ReadPoint(uint32 x, uint32 y, TCOLOR *ret)
{  TCOLOR  bak;

   /* 參數過濾 */
   if(x>=GUI_LCM_XMAX) return(0);
   if(y>=GUI_LCM_YMAX) return(0);
  
   /* 取得該點顏色(用戶自行更改) */ 
   bak = gui_disp_buf[y][x>>3];
   if( (bak&DCB_HEX_TAB[x&0x07])!=0 ) *ret = 1;
      else  *ret = 0;
   
   return(1);
}


/****************************************************************************
* 名稱:GUI_HLine()
* 功能:畫水平線。
* 入口參數: x0		水平線起點所在列的位置
*           y0		水平線起點所在行的位置
*           x1      水平線終點所在列的位置
*           color	顯示顏色(對于黑白色LCM,為0時滅,為1時顯示)
* 出口參數:無
* 說明:操作失敗原因是指定地址超出緩沖區范圍。
****************************************************************************/
void  GUI_HLine(uint32 x0, uint32 y0, uint32 x1, uint8 color) 
{  uint32  bak;

   if(x0>x1) 						// 對x0、x1大小進行排列,以便畫圖
   {  bak = x1;
      x1 = x0;
      x0 = bak;
   }
   if(x0==x1)
   {  GUI_Point(x0, y0, color);
      return;
   }
   
   do
   {  /* 設置相應的點為1 */
      if(0!=color) gui_disp_buf[y0][x0>>3] |= DCB_HEX_TAB[x0&0x07];
         else  gui_disp_buf[y0][x0>>3] &= (~DCB_HEX_TAB[x0&0x07]);
      /* 刷新顯示(一次刷新一字節) */
      if( (x0&0x07)==0x07 ) LCD_UpdatePoint(x0, y0);
      
      x0++;
   }while(x1>x0);
   
   /* 對最后一點顯示操作 */
   if(0!=color) gui_disp_buf[y0][x0>>3] |= DCB_HEX_TAB[x0&0x07];
      else  gui_disp_buf[y0][x0>>3] &= (~DCB_HEX_TAB[x0&0x07]);
   LCD_UpdatePoint(x0, y0);
}


/****************************************************************************
* 名稱:GUI_RLine()
* 功能:畫垂直線。
* 入口參數: x0		垂直線起點所在列的位置
*           y0		垂直線起點所在行的位置
*           y1      垂直線終點所在行的位置
*           color	顯示顏色(對于黑白色LCM,為0時滅,為1時顯示)
* 出口參數:無
* 說明:操作失敗原因是指定地址超出緩沖區范圍。
****************************************************************************/
void  GUI_RLine(uint32 x0, uint32 y0, uint32 y1, uint8 color) 
{  uint32  bak;

   if(y0>y1) 						// 對y0、y1大小進行排列,以便畫圖
   {  bak = y1;
      y1 = y0;
      y0 = bak;
   }
   if(y0==y1)
   {  GUI_Point(x0, y0, color);
      return;
   }
   
   do
   {  GUI_Point(x0, y0, color);		// 逐點顯示,描出垂直線
      y0++;
   }while(y1>y0);
   GUI_Point(x0, y0, color);	
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲高清三级视频| 丰满白嫩尤物一区二区| 国内成人自拍视频| eeuss鲁片一区二区三区在线观看| 欧美日韩精品一区二区天天拍小说| 久久久777精品电影网影网 | 亚洲自拍都市欧美小说| 老司机免费视频一区二区三区| 色综合夜色一区| 久久久久久**毛片大全| 亚洲高清在线精品| 91影院在线免费观看| 久久综合狠狠综合久久激情 | 九色porny丨国产精品| 色综合视频在线观看| 国产日韩v精品一区二区| 天天色 色综合| 91国产成人在线| 亚洲欧美一区二区三区极速播放| 国产精品系列在线播放| 日韩三级视频中文字幕| 午夜欧美视频在线观看| 色综合一个色综合| 一色桃子久久精品亚洲| 成人蜜臀av电影| 日本一区二区在线不卡| 国产裸体歌舞团一区二区| 日韩亚洲欧美中文三级| 日韩精品成人一区二区在线| 欧美亚州韩日在线看免费版国语版| 综合久久久久综合| 北条麻妃国产九九精品视频| 中文字幕欧美激情一区| 国产成人丝袜美腿| 久久久蜜臀国产一区二区| 精品无码三级在线观看视频| 日韩精品最新网址| 国产一区视频导航| 久久久久久久一区| 国模冰冰炮一区二区| 久久久久久久久99精品| 懂色av一区二区夜夜嗨| 中文字幕乱码久久午夜不卡| jvid福利写真一区二区三区| 中文字幕五月欧美| 在线影视一区二区三区| 亚洲.国产.中文慕字在线| 欧美日韩精品欧美日韩精品| 男女性色大片免费观看一区二区| 日韩精品一区二区三区蜜臀 | 欧美—级在线免费片| 99久久99精品久久久久久| 亚洲视频每日更新| 在线视频欧美精品| 亚洲va韩国va欧美va| 精品欧美乱码久久久久久| 成人午夜在线视频| 亚洲成a人v欧美综合天堂| 精品入口麻豆88视频| 成人综合婷婷国产精品久久| 亚洲一区二区三区美女| 日韩亚洲欧美在线观看| 成人午夜激情片| 亚洲第一狼人社区| 精品久久久久久久久久久院品网 | 中文字幕中文在线不卡住| 91成人免费在线| 久久99精品久久久| 国产精品久久久久一区二区三区共| 91香蕉视频污在线| 麻豆精品国产91久久久久久| 国产精品另类一区| 欧美日韩第一区日日骚| 成人h动漫精品一区二区| 日韩国产在线观看| 成人免费在线视频观看| 日韩午夜在线观看| 91亚洲男人天堂| 九一久久久久久| 亚洲一区二区三区在线播放| 久久久久久综合| 欧美猛男gaygay网站| 高清免费成人av| 久久国产视频网| 亚洲在线免费播放| 中文字幕中文字幕一区二区| 日韩免费高清av| 制服丝袜亚洲精品中文字幕| 暴力调教一区二区三区| 国产乱码一区二区三区| 午夜精品一区在线观看| 亚洲视频1区2区| 久久精品欧美一区二区三区麻豆| 欧美日韩在线播| 91精品91久久久中77777| 成人精品视频.| 国产福利不卡视频| 精油按摩中文字幕久久| 男女激情视频一区| 五月天亚洲精品| 亚洲综合精品久久| 亚洲视频资源在线| 亚洲国产岛国毛片在线| 国产欧美在线观看一区| 久久久久久久久久电影| 精品国产免费人成电影在线观看四季 | 欧美体内she精视频| 国产ts人妖一区二区| 国产精品一区免费视频| 久久精品国产澳门| 久99久精品视频免费观看| 久久国产精品一区二区| 美脚の诱脚舐め脚责91| 免费观看91视频大全| 久久99国内精品| 国产资源精品在线观看| 免费在线看成人av| 久久成人久久鬼色| 蜜臀av性久久久久蜜臀av麻豆| 美国欧美日韩国产在线播放| 久久国产精品99久久久久久老狼| 日本系列欧美系列| 久久国产福利国产秒拍| 国产精品18久久久久久久久| 国产丶欧美丶日本不卡视频| 成人免费视频视频在线观看免费 | 欧美一区在线视频| 欧美大片拔萝卜| www欧美成人18+| 中文字幕av一区二区三区免费看| 欧美极品美女视频| 一区二区三区欧美在线观看| 亚洲成人综合在线| 麻豆91精品91久久久的内涵| 狠狠色狠狠色合久久伊人| 国产成人在线网站| av爱爱亚洲一区| 在线视频一区二区免费| 欧美老女人在线| 久久亚洲综合色| 亚洲天堂av一区| 美女视频网站久久| 成人福利视频在线| 欧美三区免费完整视频在线观看| 日韩视频中午一区| 中文在线免费一区三区高中清不卡| 一色屋精品亚洲香蕉网站| 亚洲超碰精品一区二区| 国产一区二区三区四区五区美女 | 3atv一区二区三区| 国产人成一区二区三区影院| 亚洲情趣在线观看| 免费观看在线色综合| 99精品久久99久久久久| 欧美精品电影在线播放| 中文在线资源观看网站视频免费不卡 | 久久激五月天综合精品| 99久精品国产| 欧美一级精品大片| 日韩一区日韩二区| 精品一区二区三区av| 欧洲视频一区二区| 久久综合色之久久综合| 亚洲综合视频在线| 高清不卡一二三区| 日韩精品一区二区三区中文不卡 | 国产欧美日韩三级| 午夜私人影院久久久久| 国产精品一级黄| 在线播放中文字幕一区| 中文字幕亚洲在| 国产激情视频一区二区三区欧美 | 国产欧美精品国产国产专区| 午夜精品久久久久久不卡8050| 国产成人精品免费视频网站| 欧美区在线观看| 一区二区三区中文字幕电影| 国产综合色视频| 欧美另类高清zo欧美| 中文字幕一区二区三区在线播放 | 91浏览器在线视频| 国产午夜精品一区二区| 青草av.久久免费一区| 欧洲精品一区二区| 亚洲国产成人在线| 成人性生交大片免费看中文网站| 欧美va亚洲va香蕉在线| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美日韩三级一区| 亚洲自拍偷拍九九九| 色欲综合视频天天天| 国产精品久久久久久久久果冻传媒 | 午夜伊人狠狠久久| 欧美在线不卡一区| 亚洲最大色网站| 日本高清视频一区二区| 国产精品网站导航| 成人激情免费视频| 中文字幕在线不卡一区二区三区| 成人动漫一区二区在线|