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

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

?? lcd_x_6800.c

?? 圖像系統uc_GUI
?? C
字號:
/*
*********************************************************************************************************
*                                             uC/GUI V3.98
*                        Universal graphic software for embedded applications
*
*                       (c) Copyright 2002, Micrium Inc., Weston, FL
*                       (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
*
*              礐/GUI is protected by international copyright laws. Knowledge of the
*              source code may not be used to write a similar product. This file may
*              only be used in accordance with a license and should not be redistributed
*              in any way. We appreciate your understanding and fairness.
*
----------------------------------------------------------------------
File        : LCD_X_6800.c
Purpose     : Port routines
----------------------------------------------------------------------
*/

/*********************************************************************
*
*           Hardware configuration
*
**********************************************************************
  Needs to be adapted to your target hardware.
*/

/* Configuration example:

#include <IOM16C.H>      // Include port definitions

#define LCD_CLR_A0()      P8 &= ~(1<<0)
#define LCD_SET_A0()      P8 |=  (1<<0) 
#define LCD_CLR_RW()      P8 &= ~(1<<1)
#define LCD_SET_RW()      P8 |=  (1<<1) 
#define LCD_CLR_E()       P8 &= ~(1<<2)
#define LCD_SET_E()       P8 |=  (1<<2) 
#define LCD_CLR_CS0()     P8 &= ~(1<<3)
#define LCD_SET_CS0()     P8 |=  (1<<3)
#define LCD_CLR_CS1()     P8 &= ~(1<<4)
#define LCD_SET_CS1()     P8 |=  (1<<4)
#define LCD_DATA_IN       P7
#define LCD_DATA_OUT      P7
#define LCD_SET_DIR_IN()  P7D = 0
#define LCD_SET_DIR_OUT() P7D = 0xff
#define LCD_DELAY(ms)     GUI_Delay(ms)
*/

/*********************************************************************
*
*           Defaults
*
**********************************************************************
*/

#ifndef LCD_CLR_RW
  #define LCD_CLR_RW()
#endif
#ifndef LCD_SET_RW
  #define LCD_SET_RW()
#endif
#ifndef LCD_SET_CS0
  #define LCD_SET_CS0()
#endif
#ifndef LCD_SET_CS1
  #define LCD_SET_CS1()
#endif
#ifndef LCD_SET_CS2
  #define LCD_SET_CS2()
#endif

#ifndef LCD_SET_DIR_IN
  #define LCD_SET_DIR_IN()
#endif
#ifndef LCD_SET_DIR_OUT
  #define LCD_SET_DIR_OUT()
#endif

/*********************************************************************
*
*           High level LCD access macros
*
**********************************************************************
  Usually, there is no need to modify these macros.
  It should be sufficient ot modify the low-level macros
  above.
*/

#define LCD_X_READ()      \
  LCD_SET_RW();           \
  LCD_SET_E();            \
  c = LCD_DATA_IN;        \
  LCD_CLR_E()
/*
  LCD_SET_DIR_IN();       \
  LCD_SET_RW();           \
  LCD_SET_E();            \
  c = LCD_DATA_IN;        \
  LCD_CLR_E();            \
  LCD_CLR_RW();           \
  LCD_SET_DIR_OUT()
*/

#define LCD_X_WRITE(Data) \
  LCD_CLR_RW();           \
  LCD_SET_DIR_OUT();      \
  LCD_DATA_OUT = Data;    \
  LCD_SET_E();            \
  LCD_CLR_E();            \
  LCD_SET_DIR_IN();       \
  LCD_SET_RW()
/*
  LCD_DATA_OUT = Data;    \
  LCD_SET_E();            \
  LCD_CLR_E();            \
  LCD_SET_RW()
*/

/*********************************************************************
*
*           Initialisation
*
**********************************************************************
  This routine should be called from your application program
  to set port pins to their initial values
*/

void LCD_X_Init(void) {
/*
  LCD_CLR_RESET();
  LCD_SET_DIR_OUT();
  LCD_SET_E();
  LCD_CLR_RW();
  LCD_SET_A0();
  LCD_SET_CS0();
  LCD_SET_CS1();
  LCD_SET_CS2();
  LCD_SET_RESET();
*/
  LCD_CLR_RESET();
  LCD_SET_DIR_IN();
  LCD_CLR_E();
  LCD_SET_RW();
  LCD_SET_A0();
  LCD_SET_CS0();
  LCD_SET_CS1();
  LCD_SET_CS2();
  LCD_SET_RESET();
}

/*********************************************************************
*
*           Access routines, controller 0
*
**********************************************************************
  Usually, there is no need to modify these routines.
  It should be sufficient ot modify the low-level macros
  above.
*/

/* Read from controller 0, with A0 = 0, CS0 = 0, CS1 = 1 */
char LCD_X_Read00(void) {
  char c;
  LCD_CLR_CS0();
  LCD_CLR_A0();
  LCD_X_READ();
  LCD_SET_CS0();
  return c;
}

/* Read from controller 0, with A0 = 1, CS0 = 0, CS1 = 1 */
char LCD_X_Read01(void) {
  char c;
  LCD_CLR_CS0();
  LCD_SET_A0();
  LCD_X_READ();
  LCD_SET_CS0();
  return c;
}

/* Write to controller 0, with A0 = 0, CS0 = 0, CS1 = 1 */
void LCD_X_Write00(char c) {
  LCD_CLR_A0();
  LCD_CLR_CS0();
  LCD_X_WRITE(c);
  LCD_SET_CS0();
}

/* Write to controller 0, with A0 = 1, CS0 = 0, CS1 = 1 */
void LCD_X_Write01(char c) {
  LCD_SET_A0();
  LCD_CLR_CS0();
  LCD_X_WRITE(c);
  LCD_SET_CS0();
}

/* Write multiple bytes to controller 0, with A0 = 1, CS0 = 0, CS1 = 1 */
void LCD_X_WriteM01(char * pData, int NumBytes) {
  LCD_SET_A0();
  LCD_CLR_CS0();
  for (; NumBytes; NumBytes--) {
    LCD_X_WRITE(*pData++);
  }
  LCD_SET_CS0();
}

/*********************************************************************
*
*           Access routines, controller 1
*
**********************************************************************
  Usually, there is no need to modify these routines.
  It should be sufficient ot modify the low-level macros
  above.
*/

/* Read from controller 1, with A0 = 0, CS0 = 1, CS1 = 0 */

#ifdef LCD_CLR_CS1

char LCD_X_Read10(void) {
  char c;
  LCD_CLR_CS1();
  LCD_CLR_A0();
  LCD_X_READ();
  LCD_SET_CS1();
  return c;
}

/* Read from controller 1, with A0 = 1, CS0 = 1, CS1 = 0 */
char LCD_X_Read11(void) {
  char c;
  LCD_CLR_CS1();
  LCD_SET_A0();
  LCD_X_READ();
  LCD_SET_CS1();
  return c;
}

/* Write to controller 1, with A0 = 0, CS0 = 1, CS1 = 0 */
void LCD_X_Write10(char c) {
  LCD_CLR_A0();
  LCD_CLR_CS1();
  LCD_X_WRITE(c);
  LCD_SET_CS1();
}

/* Write to controller 1, with A0 = 1, CS0 = 1, CS1 = 0 */
void LCD_X_Write11(char c) {
  LCD_SET_A0();
  LCD_CLR_CS1();
  LCD_X_WRITE(c);
  LCD_SET_CS1();
}

/* Write multiple bytes to controller 1, with A0 = 1, CS0 = 0, CS1 = 1 */
void LCD_X_WriteM11(char * pData, int NumBytes) {
  LCD_SET_A0();
  LCD_CLR_CS1();
  for (; NumBytes; NumBytes--) {
    LCD_X_WRITE(*pData++);
  }
  LCD_SET_CS1();
}

#endif /* LCD_CLR_CS1 */

/*********************************************************************
*
*           Access routines, controller 2
*
**********************************************************************
  Usually, there is no need to modify these routines.
  It should be sufficient ot modify the low-level macros
  above.
*/

#ifdef LCD_CLR_CS2

/* Read from controller 2, with A0 = 0, CS0 = 1, CS1 = 1 */
char LCD_X_Read20(void) {
  char c;
  LCD_CLR_CS2();
  LCD_CLR_A0();
  LCD_X_READ();
  LCD_SET_CS2();
  return c;
}

/* Read from controller 2, with A0 = 1, CS0 = 1, CS1 = 1 */
char LCD_X_Read21(void) {
  char c;
  LCD_CLR_CS2();
  LCD_SET_A0();
  LCD_X_READ();
  LCD_SET_CS2();
  return c;
}

/* Write to controller 2, with A0 = 0, CS0 = 1, CS1 = 1 */
void LCD_X_Write20(char c) {
  LCD_CLR_A0();
  LCD_CLR_CS2();
  LCD_X_WRITE(c);
  LCD_SET_CS2();
}

/* Write to controller 2, with A0 = 1, CS0 = 1, CS1 = 1 */
void LCD_X_Write21(char c) {
  LCD_SET_A0();
  LCD_CLR_CS2();
  LCD_X_WRITE(c);
  LCD_SET_CS2();
}

/* Write multiple bytes to controller 2, with A0 = 1, CS0 = 0, CS1 = 1 */
void LCD_X_WriteM21(char * pData, int NumBytes) {
  LCD_SET_A0();
  LCD_CLR_CS2();
  for (; NumBytes; NumBytes--) {
    LCD_X_WRITE(*pData++);
  }
  LCD_SET_CS2();
}

#endif /* LCD_CLR_CS2 */
	 	 			 		    	 				 	  			   	 	 	 	 	 	  	  	      	   		 	 	 		  		  	 		 	  	  			     			       	   	 			  		    	 	     	 				  	 					 	 			   	  	  			 				 		 	 	 			     			 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久99久久免费精品蜜臀| 日韩电影免费在线| 日韩欧美区一区二| 欧美日韩免费视频| 欧洲一区在线观看| 色婷婷狠狠综合| 日本韩国精品在线| 欧美亚州韩日在线看免费版国语版| av午夜一区麻豆| 韩国v欧美v亚洲v日本v| 亚洲成人三级小说| 亚洲国产日韩精品| 日韩黄色片在线观看| 欧美aa在线视频| 国产在线精品不卡| 成人丝袜18视频在线观看| 成人h动漫精品一区二区| 99精品久久免费看蜜臀剧情介绍| 亚洲一区在线播放| 亚洲成a人片在线观看中文| 国产精品美女久久久久久久久| 99精品视频中文字幕| 国产凹凸在线观看一区二区| 丁香另类激情小说| 色又黄又爽网站www久久| 欧美视频一区在线| 日韩欧美激情一区| 国产欧美日韩在线看| 亚洲日本中文字幕区| 午夜视黄欧洲亚洲| 麻豆高清免费国产一区| 成人午夜精品一区二区三区| 91成人看片片| 日韩一区二区中文字幕| 中文字幕不卡三区| 亚洲动漫第一页| 国产一区二区伦理| 在线观看成人小视频| 在线不卡一区二区| 国产亚洲成aⅴ人片在线观看| 在线精品视频免费播放| 欧美一区二区三区日韩视频| 中文字幕欧美日本乱码一线二线| 欧美电影在线免费观看| 久久久久青草大香线综合精品| 欧美视频在线播放| 日韩女优视频免费观看| 亚洲丝袜自拍清纯另类| 奇米精品一区二区三区四区 | 99国产精品久久久| 欧美蜜桃一区二区三区| 国产日本欧洲亚洲| 日韩电影一区二区三区四区| 国产99久久久国产精品潘金| 欧美日韩一区久久| 综合亚洲深深色噜噜狠狠网站| 久久久国产午夜精品| 亚洲第一二三四区| 色综合天天综合网天天看片| 欧美日韩高清一区二区| 国产精品久久久久一区| 国产麻豆精品theporn| 欧美无砖专区一中文字| 136国产福利精品导航| 国产一区二区不卡在线| 欧美一区二区三区四区久久| 亚洲女子a中天字幕| 成人av在线影院| 久久久久综合网| 国产综合色产在线精品| 3d动漫精品啪啪| 午夜av电影一区| 欧美色综合影院| 亚洲国产精品视频| 欧美在线观看一区| 亚洲一区二区精品久久av| 99re成人在线| 亚洲免费色视频| 色噜噜狠狠成人网p站| 亚洲女同女同女同女同女同69| 亚洲一区二区影院| 91成人网在线| 午夜精品一区在线观看| 欧美性大战久久久久久久| 怡红院av一区二区三区| 色狠狠av一区二区三区| 一区二区三区精品| 欧美在线色视频| 午夜伊人狠狠久久| 5566中文字幕一区二区电影 | 国产乱理伦片在线观看夜一区| 国内偷窥港台综合视频在线播放| 国产91富婆露脸刺激对白| www久久精品| 国产一区不卡视频| 国产精品久久久久久福利一牛影视| 一区二区国产盗摄色噜噜| 在线观看亚洲精品| 日本大胆欧美人术艺术动态| 精品对白一区国产伦| 蜜桃视频一区二区| 久久午夜免费电影| caoporm超碰国产精品| 亚洲另类在线制服丝袜| 欧美三级视频在线| 精品一区中文字幕| 日本一区二区电影| 欧美色区777第一页| 久久99国内精品| 中文字幕一区二区三区乱码在线| 免费高清视频精品| 久久久久亚洲蜜桃| 欧美午夜片在线观看| 婷婷开心激情综合| 国产三级精品三级在线专区| 91视频免费播放| 日韩不卡一区二区三区| 亚洲欧洲一区二区在线播放| 欧美三级日韩三级国产三级| 激情小说欧美图片| 亚洲精品精品亚洲| 久久先锋影音av鲁色资源网| 欧美影视一区二区三区| 国产成人日日夜夜| 日韩黄色一级片| 亚洲日本va午夜在线电影| 欧美一区二区三区在线视频 | 日本久久一区二区| 精品一区二区在线免费观看| 国产精品久久久久久久久动漫 | 国产一级精品在线| 亚洲免费在线观看视频| 欧美不卡123| 色婷婷av一区二区三区gif| 国产永久精品大片wwwapp | 日韩专区在线视频| 国产精品理伦片| 久久久久久9999| 欧美一区二区三区爱爱| 99久久伊人网影院| 国产精品一区二区无线| 蜜桃视频第一区免费观看| 亚洲综合小说图片| 伊人婷婷欧美激情| 亚洲美女淫视频| 成人欧美一区二区三区在线播放| av电影一区二区| 国产经典欧美精品| 日本色综合中文字幕| 亚洲成av人片观看| 亚洲一区二区三区激情| 亚洲综合视频在线观看| 亚洲日本在线天堂| 亚洲精品久久嫩草网站秘色| 亚洲欧美视频在线观看视频| 中文字幕免费在线观看视频一区| 99精品视频在线观看| 国产一区二区三区综合| 久久精品国产999大香线蕉| 日韩成人午夜电影| 另类人妖一区二区av| 久久精品国产亚洲5555| 精品一区在线看| 国产精品99久久久久久久女警| 中文字幕一区二区三区蜜月| 久久精品夜色噜噜亚洲a∨| 久久久久久久久久久久久夜| 久久欧美中文字幕| 久久久久亚洲蜜桃| 中文字幕欧美一| 亚洲欧美日韩一区二区三区在线观看| 91国产视频在线观看| 欧美日韩色综合| 91麻豆精品国产91久久久久| 欧美一级在线视频| 国产亚洲一区二区在线观看| www久久精品| 亚洲欧美影音先锋| 亚洲mv在线观看| 国内精品久久久久影院薰衣草| 亚洲欧美区自拍先锋| 亚洲自拍偷拍综合| 麻豆精品国产传媒mv男同| 国产精品综合在线视频| www.av精品| 欧美无砖砖区免费| 精品国产百合女同互慰| 国产精品乱人伦| 悠悠色在线精品| 国精品**一区二区三区在线蜜桃| 亚洲人123区| 视频一区二区三区在线| 精品一区二区成人精品| 成人av一区二区三区| 欧美午夜精品久久久久久超碰| 91在线看国产| 欧美少妇xxx| 日本一区二区免费在线观看视频 | 欧美成人精品高清在线播放| 国产日韩视频一区二区三区|