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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? lcddrive.c

?? zlg 的GUI實(shí)例
?? C
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
* 入口參數(shù):dat		要填充的數(shù)據(jù)
* 出口參數(shù):無(wú)
***********************************************************************/
void  LCD_FillAll(uint8 dat)
{  uint32  i;

   LCD_WriteTCommand3(LCD_ADR_POS, 0x00, 0x00);			// 置地址指針
   LCD_WriteTCommand1(LCD_AUT_WR);						// 自動(dòng)寫
   for(i=0;i<128*30;i++)
   {  LCD_WriteTData1(dat);								// 寫數(shù)據(jù)
   }
   LCD_WriteTCommand1(LCD_AUT_OVR);						// 自動(dòng)寫結(jié)束
   LCD_WriteTCommand3(LCD_ADR_POS,0x00,0x00);			// 重置地址指針
}


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



/****************************************************************************
*                    與LCM相關(guān)的GUI接口函數(shù)
****************************************************************************/


/****************************************************************************
* 名稱:GUI_FillSCR()
* 功能:全屏填充。直接使用數(shù)據(jù)填充顯示緩沖區(qū)。
* 入口參數(shù):dat		填充的數(shù)據(jù)(對(duì)于黑白色LCM,為0的點(diǎn)滅,為1的點(diǎn)顯示)
* 出口參數(shù):無(wú)
****************************************************************************/
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;		// 填充數(shù)據(jù)
	  }
   }
   
   /* 填充LCM */
   LCD_FillAll(dat);
}


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


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


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

/****************************************************************************
* 名稱:GUI_Point()
* 功能:在指定位置上畫點(diǎn)。
* 入口參數(shù): x		指定點(diǎn)所在列的位置
*           y		指定點(diǎn)所在行的位置
*           color	顯示顏色(對(duì)于黑白色LCM,為0時(shí)滅,為1時(shí)顯示)
* 出口參數(shù):返回值為1時(shí)表示操作成功,為0時(shí)表示操作失敗。(操作失敗原因是指定地址超出有
*          效范圍)
* 說(shuō)明:用戶根據(jù)LCM的實(shí)際情況編寫此函數(shù)。對(duì)于單色,只有一個(gè)位有效,則要使用左移的方法
*      實(shí)現(xiàn)point_dat = (point_dat&MASK_TAB [i]) | (color<<n),其它位數(shù)的一樣
*      處理。
****************************************************************************/
uint8  GUI_Point(uint32 x, uint32 y, TCOLOR color)
{  /* 參數(shù)過(guò)濾 */
   if(x>=GUI_LCM_XMAX) return(0);
   if(y>=GUI_LCM_YMAX) return(0);
   
   /* 設(shè)置緩沖區(qū)相應(yīng)的點(diǎn) */
   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()
* 功能:讀取指定點(diǎn)的顏色。
* 入口參數(shù):x			指定點(diǎn)所在列的位置
*          y		指定點(diǎn)所在行的位置
*          ret		保存顏色值的指針
* 出口參數(shù):返回0時(shí)表示指定地址超出有效范圍。
* 說(shuō)明:對(duì)于單色,設(shè)置ret的d0位為1或0,4級(jí)灰度則為d0、d1有效,8位RGB則d0--d7有效,
*      RGB結(jié)構(gòu)則R、G、B變量有效。
****************************************************************************/
int  GUI_ReadPoint(uint32 x, uint32 y, TCOLOR *ret)
{  TCOLOR  bak;

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


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

   if(x0>x1) 						// 對(duì)x0、x1大小進(jìn)行排列,以便畫圖
   {  bak = x1;
      x1 = x0;
      x0 = bak;
   }
   if(x0==x1)
   {  GUI_Point(x0, y0, color);
      return;
   }
   
   do
   {  /* 設(shè)置相應(yīng)的點(diǎn)為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]);
      /* 刷新顯示(一次刷新一字節(jié)) */
      if( (x0&0x07)==0x07 ) LCD_UpdatePoint(x0, y0);
      
      x0++;
   }while(x1>x0);
   
   /* 對(duì)最后一點(diǎn)顯示操作 */
   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()
* 功能:畫垂直線。
* 入口參數(shù): x0		垂直線起點(diǎn)所在列的位置
*           y0		垂直線起點(diǎn)所在行的位置
*           y1      垂直線終點(diǎn)所在行的位置
*           color	顯示顏色(對(duì)于黑白色LCM,為0時(shí)滅,為1時(shí)顯示)
* 出口參數(shù):無(wú)
* 說(shuō)明:操作失敗原因是指定地址超出緩沖區(qū)范圍。
****************************************************************************/
void  GUI_RLine(uint32 x0, uint32 y0, uint32 y1, uint8 color) 
{  uint32  bak;

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






















?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区三区欧美| 一区二区视频在线| 久久国产夜色精品鲁鲁99| 日韩视频一区二区在线观看| 久久机这里只有精品| 国产无一区二区| 91在线国产观看| 亚欧色一区w666天堂| 日韩三级精品电影久久久| 国产一区二区三区不卡在线观看| 久久久久久99久久久精品网站| 国产精品911| 亚洲精品自拍动漫在线| 欧美日韩三级一区二区| 乱中年女人伦av一区二区| 日本一区二区高清| 在线免费观看日本一区| 日韩黄色小视频| 中文成人综合网| 色老汉一区二区三区| 麻豆精品久久精品色综合| 国产精品少妇自拍| 欧美猛男超大videosgay| 久久99久久精品| 亚洲欧洲综合另类| 精品国产乱码久久久久久闺蜜| 成人免费va视频| 日日噜噜夜夜狠狠视频欧美人| 久久夜色精品国产噜噜av| 91亚洲精华国产精华精华液| 五月综合激情日本mⅴ| 久久久久久日产精品| 欧美色综合网站| 国产成人精品综合在线观看| 亚洲成av人片一区二区梦乃| 国产亚洲美州欧州综合国| 色综合激情久久| 国产一区啦啦啦在线观看| 亚洲欧美国产77777| 精品国产伦一区二区三区观看方式 | 一区二区在线观看免费视频播放 | 欧美狂野另类xxxxoooo| 国产福利一区在线| 午夜精品爽啪视频| 亚洲欧洲无码一区二区三区| 日韩视频在线观看一区二区| 在线免费av一区| 不卡av在线免费观看| 男男gaygay亚洲| 亚洲一二三四在线| 亚洲国产高清aⅴ视频| 日韩久久久精品| 欧美午夜电影在线播放| 成人黄色小视频| 国产成人亚洲精品青草天美| 美国三级日本三级久久99| 亚洲国产中文字幕| 一区二区三区国产豹纹内裤在线| 国产清纯白嫩初高生在线观看91| 欧美一级夜夜爽| 6080亚洲精品一区二区| 欧美三级乱人伦电影| 91激情在线视频| 99re这里只有精品视频首页| 处破女av一区二区| 韩国三级中文字幕hd久久精品| 天天亚洲美女在线视频| 亚洲福利视频三区| 亚洲一区二区三区激情| 亚洲综合色成人| 亚洲精品老司机| 亚洲影视资源网| 亚洲与欧洲av电影| 亚洲一区二区视频| 香蕉乱码成人久久天堂爱免费| 一区二区三区精密机械公司| 亚洲午夜电影在线| 偷窥国产亚洲免费视频| 日韩在线一区二区三区| 日韩国产欧美视频| 久久成人麻豆午夜电影| 蜜桃av噜噜一区| 久久99精品久久久久婷婷| 激情综合色播五月| 国产精品一级黄| 99视频在线观看一区三区| www.在线欧美| 在线观看免费一区| 欧美一区二区三区系列电影| 欧美xxxxxxxx| 国产欧美一区二区三区鸳鸯浴| 国产精品私人自拍| 亚洲精品免费播放| 日本在线播放一区二区三区| 九色综合狠狠综合久久| 国产大陆精品国产| 97久久超碰国产精品| 欧美在线色视频| 欧美一区二区成人| 久久久综合精品| 亚洲精品国产精品乱码不99| 久久精品999| 从欧美一区二区三区| 在线日韩国产精品| 欧美成人vps| 自拍偷拍亚洲欧美日韩| 亚洲成人av一区二区三区| 美腿丝袜在线亚洲一区| 成人在线视频首页| 欧美日韩一区三区| 久久久久久久久岛国免费| 亚洲人妖av一区二区| 日本一不卡视频| av在线不卡网| 欧美大片国产精品| 自拍视频在线观看一区二区| 天天亚洲美女在线视频| 国产99久久久久| 欧美精品xxxxbbbb| 中文字幕av资源一区| 婷婷一区二区三区| 99re在线视频这里只有精品| 日韩精品一区二区三区中文不卡| 国产精品久久久久9999吃药| 午夜精品久久久久久久久| 国产成人鲁色资源国产91色综 | 男人操女人的视频在线观看欧美| 国产成人aaaa| 日韩欧美黄色影院| 亚洲综合偷拍欧美一区色| 福利一区二区在线观看| 7777精品久久久大香线蕉| 亚洲欧洲日韩av| 国产精品一品视频| 91 com成人网| 亚洲精品视频自拍| 高清在线不卡av| 日韩一区二区三区观看| 一区二区理论电影在线观看| 国产91富婆露脸刺激对白| 欧美一区二区精品| 亚洲福利视频三区| 色婷婷狠狠综合| 国产精品久久毛片a| 国产酒店精品激情| 精品区一区二区| 亚洲成av人片| 在线免费观看日韩欧美| 国产精品久久99| 国产精一品亚洲二区在线视频| 7777精品伊人久久久大香线蕉经典版下载 | 成人精品高清在线| 精品国内片67194| 美女尤物国产一区| 911国产精品| 亚洲mv在线观看| 欧美天堂亚洲电影院在线播放| 最新不卡av在线| aaa欧美大片| 中文字幕一区二区三区在线不卡 | 色综合网色综合| 亚洲欧美在线aaa| 粉嫩av亚洲一区二区图片| 26uuu国产在线精品一区二区| 久久99久久99小草精品免视看| 日韩视频123| 日本不卡1234视频| 久久久亚洲高清| 国产一区二区精品久久| 精品国产自在久精品国产| 久久黄色级2电影| 欧美精品一区二| 国产成人自拍网| 国产天堂亚洲国产碰碰| 国产福利一区二区三区在线视频| 久久精品这里都是精品| 国产精品91一区二区| 国产精品丝袜久久久久久app| 成人黄色在线视频| 洋洋成人永久网站入口| 欧美亚洲国产一区二区三区 | 日韩精品一二三四| 欧美一区二区三区的| 久久精品国产免费看久久精品| 精品女同一区二区| 国产成人亚洲综合a∨婷婷 | 亚洲电影你懂得| 6080午夜不卡| 国产一区二区按摩在线观看| 国产三级三级三级精品8ⅰ区| 成人黄色免费短视频| 亚洲午夜久久久久久久久电影院 | 成人免费高清在线| 亚洲自拍偷拍网站| 欧美高清视频www夜色资源网| 久久99国内精品| 国产精品嫩草影院com| 欧美亚洲动漫另类| 国模少妇一区二区三区| 亚洲三级在线播放|