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

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

?? lcddrive.c

?? 這是周立功的GUI編程示范
?? C
?? 第 1 頁 / 共 2 頁
字號(hào):
   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í)表示操作失敗。
* 說明:操作失敗原因是指定地址超出緩沖區(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ù):無
****************************************************************************/
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ù):無
* 出口參數(shù):無
****************************************************************************/
void  GUI_Initialize(void)
{  LCD_Initialize();					// 初始化LCM模塊工作模式,純圖形模式
   GUI_FillSCR(0x00);					// 初始化緩沖區(qū)為0x00,并輸出屏幕(清屏)
} 


/****************************************************************************
* 名稱:GUI_ClearSCR()
* 功能:清屏。
* 入口參數(shù):無
* 出口參數(shù):無
* 說明:用戶根據(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í)表示操作失敗。(操作失敗原因是指定地址超出有
*          效范圍)
* 說明:用戶根據(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ù)過濾 */
   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í)表示指定地址超出有效范圍。
* 說明:對(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ù)過濾 */
   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ù):無
* 說明:操作失敗原因是指定地址超出緩沖區(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ù):無
* 說明:操作失敗原因是指定地址超出緩沖區(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);	
}
////////////////////////////////////////////////////////////////////////////
void  LCD_Fill(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[i]);								// 寫數(shù)據(jù)
   }
   LCD_WriteTCommand1(LCD_AUT_OVR);						// 自動(dòng)寫結(jié)束
   LCD_WriteTCommand3(LCD_ADR_POS,0x00,0x00);			// 重置地址指針
}





















?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品成人在线观看| 中文字幕二三区不卡| 欧美综合久久久| 91九色最新地址| 99久久精品久久久久久清纯| 久久91精品久久久久久秒播| 在线免费观看日本一区| 奇米色一区二区| 紧缚捆绑精品一区二区| 精品一区二区三区在线播放视频| 日韩二区三区四区| 老司机免费视频一区二区| 激情成人综合网| 成人激情综合网站| 91久久精品一区二区二区| 欧美性生活一区| 日韩一卡二卡三卡国产欧美| 日韩无一区二区| 国产农村妇女毛片精品久久麻豆| 国产精品久久久久aaaa| 日韩一区有码在线| 免费看日韩a级影片| 国产精一品亚洲二区在线视频| 菠萝蜜视频在线观看一区| 欧美日韩视频在线第一区 | 精品少妇一区二区三区在线视频| 精品福利在线导航| 一区二区国产盗摄色噜噜| 蜜臀av国产精品久久久久| 色丁香久综合在线久综合在线观看| 欧美色视频一区| 久久精品人人爽人人爽| 天天操天天色综合| 99国产精品一区| 精品福利av导航| 亚洲sss视频在线视频| 成人一级片网址| 久久婷婷综合激情| 日韩精品国产欧美| 欧美日韩精品欧美日韩精品一综合| 久久综合久久综合亚洲| 日韩黄色免费电影| 91福利在线看| 亚洲黄色录像片| 成人亚洲一区二区一| 精品免费国产二区三区| 午夜在线电影亚洲一区| 色婷婷av久久久久久久| 国产日韩欧美精品一区| 狠狠色丁香久久婷婷综合_中| 欧美一区二区三区日韩| 日韩精品一区第一页| 91麻豆精品国产91久久久久久| 亚洲一级电影视频| 欧美三级日韩在线| 五月激情综合婷婷| 欧美一级二级三级蜜桃| 美女视频黄久久| 精品电影一区二区三区| 精品中文av资源站在线观看| 欧美va亚洲va香蕉在线| 经典三级在线一区| 国产精品私房写真福利视频| 亚洲午夜激情网页| 69堂国产成人免费视频| 久久精品久久综合| 久久奇米777| 91蝌蚪porny九色| 日韩av高清在线观看| 精品日韩一区二区三区| 欧美成人aa大片| 亚洲欧美日韩国产一区二区三区 | 18欧美亚洲精品| 在线观看视频一区二区欧美日韩| 偷拍亚洲欧洲综合| 久久女同性恋中文字幕| 欧美色欧美亚洲另类二区| 亚洲一区二区视频| 国产欧美日韩精品一区| 欧美在线视频你懂得| 国内精品伊人久久久久av一坑| 亚洲人成网站色在线观看 | 欧美大肚乱孕交hd孕妇| 国产成人免费xxxxxxxx| 日本不卡一二三区黄网| 国产精品成人免费精品自在线观看| 欧美日本韩国一区| 99久久综合精品| 国内成人自拍视频| 亚洲成人在线观看视频| 国产精品乱码人人做人人爱| 777奇米四色成人影色区| 成人精品国产一区二区4080| 久久超级碰视频| 一区二区三区在线视频免费观看| 久久久蜜桃精品| 日韩欧美中文字幕制服| 欧美午夜视频网站| 欧美色大人视频| 色偷偷88欧美精品久久久| 国产精品白丝av| 国产一区二区三区观看| 久久精品久久99精品久久| 性做久久久久久| 日韩精品一二三| 日日摸夜夜添夜夜添国产精品| 一区二区三区不卡视频在线观看 | 国内不卡的二区三区中文字幕| 视频在线观看一区| 日欧美一区二区| 日韩高清欧美激情| 蜜桃一区二区三区在线| 精品亚洲国内自在自线福利| 日本不卡在线视频| 激情小说亚洲一区| 国产一区二区三区美女| 国产乱码精品一区二区三区五月婷| 久久精品噜噜噜成人88aⅴ| 国产一区免费电影| 在线观看免费亚洲| 欧美日韩一级黄| 日韩欧美国产系列| 国产精品麻豆视频| 日韩av一二三| 国产成人在线观看| 欧美性感一区二区三区| 日韩精品一区二区在线观看| 国产清纯在线一区二区www| 亚洲精选免费视频| 日韩av网站在线观看| 高清视频一区二区| 欧美精品18+| 自拍偷拍亚洲激情| 久久国产精品72免费观看| 成人国产免费视频| 日韩一区二区在线播放| 国产亚洲美州欧州综合国| 亚洲成人免费看| 成人免费毛片嘿嘿连载视频| 欧美一区二区三区视频免费播放| 国产调教视频一区| 日本麻豆一区二区三区视频| 性久久久久久久久久久久| 欧美精品一区二区三区很污很色的 | 国产真实乱子伦精品视频| 色国产精品一区在线观看| 久久久久久久精| 亚洲小说春色综合另类电影| 福利一区福利二区| 日韩免费电影网站| 亚洲成va人在线观看| 欧美亚洲免费在线一区| 国产精品青草综合久久久久99| 久久97超碰色| 51久久夜色精品国产麻豆| 亚洲国产成人高清精品| 色婷婷激情综合| 中文字幕一区在线观看| 国产经典欧美精品| 久久久精品综合| 国产毛片精品一区| 久久久久青草大香线综合精品| 免费成人av资源网| 欧美精选一区二区| 日韩中文字幕亚洲一区二区va在线 | 亚洲成a人片在线不卡一二三区| 欧美最新大片在线看| 亚洲图片激情小说| 在线精品亚洲一区二区不卡| 亚洲视频在线一区二区| 在线亚洲免费视频| 亚洲第一主播视频| 日韩欧美一级在线播放| 三级亚洲高清视频| 精品国产人成亚洲区| 国产不卡免费视频| 亚洲色图19p| 91精品国产综合久久精品app | 中文字幕不卡在线| 一本大道久久精品懂色aⅴ| 亚洲国产日韩精品| 久久久亚洲高清| 欧美亚洲日本国产| 经典一区二区三区| 亚洲最新视频在线播放| 日韩免费视频线观看| 不卡区在线中文字幕| 视频一区国产视频| 中文字幕五月欧美| 日韩欧美亚洲另类制服综合在线| 国产成人精品亚洲777人妖| 亚洲综合区在线| 国产人成一区二区三区影院| 欧美午夜片在线看| 成人av中文字幕| 国产二区国产一区在线观看| 丝袜a∨在线一区二区三区不卡| 国产日韩欧美一区二区三区乱码 | 粗大黑人巨茎大战欧美成人| 热久久国产精品|