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

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

?? ks0108.lst

?? 一個占用內存極少的菜單系統的實現,很使用的程序代碼
?? LST
?? 第 1 頁 / 共 5 頁
字號:
C51 COMPILER V7.20   KS0108                                                                09/04/2007 22:35:41 PAGE 1   


C51 COMPILER V7.20, COMPILATION OF MODULE KS0108
OBJECT MODULE PLACED IN .\Obj\Ks0108.obj
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE Src\Ks0108.C LARGE BROWSE DEBUG OBJECTEXTEND PRINT(.\Lst\Ks0108.lst) OBJECT
                    -(.\Obj\Ks0108.obj)

line level    source

   1          /******************************************************************************
   2           * Ks0108.C - Ks0108 液晶控制器驅動程序
   3           *
   4           *
   5           * DESCRIPTION: -
   6           *
   7           * modification history
   8           * --------------------
   9           * 01a, 04/sep/2007, 梁炎昌 written
  10           * --------------------
  11           ******************************************************************************/
  12          
  13          #include "CPU.H"
  14          #include "Ks0108.H"
  15          #include "Chinese.C"
  16          #include "ASCII.c"
  17          
  18          
  19          
  20          //------------------------------------------------------------------------------------------
  21          
  22          /*
  23          -------------------------------------------------------------------------
  24          GUI相關全局變量
  25          -------------------------------------------------------------------------
  26          */
  27          U8  GUIEnFont = En_8x16;                //英文字體
  28          U8  GUITextMode = GUI_TEXTMODE_NORMAL;  //顯示模式
  29          
  30          U8 Char_XSIZE;   //英文字體X寬度
  31          U8 Char_YSIZE;   //英文字體Y寬度
  32          
  33          U8 PosX = 0;     //當前系統X坐標
  34          U8 PosY = 0;     //當前系統Y坐標
  35          
  36          U8 NoXY = true;//是否使用PosX PosY的標志   1-->不使用   0-->使用
  37          
  38          
  39          // ---- 延遲程序 ----------------------------------------------------
  40          #if OSC_48MHZ == true
  41          
  42          #define SomeNop();      {               \
  43              _nop_(); _nop_(); _nop_(); _nop_(); \
  44              _nop_(); _nop_(); _nop_(); _nop_(); \
  45             }
  46          
  47          #elif OSC_24MHZ == true
              
              #define SomeNop();      {               \
                  _nop_(); _nop_(); _nop_(); _nop_(); \
                  }
              
              #endif
  54          
C51 COMPILER V7.20   KS0108                                                                09/04/2007 22:35:41 PAGE 2   

  55          
  56          
  57          
  58          
  59          
  60          /*
  61          *****************************************************************************
  62          * WriteCommand_0108 - 寫命令到KS0108
  63          * DESCRIPTION: -
  64          * 本函數不接管片選信號
  65          * @Param CmdData:命令碼
  66          * @Return :
  67          * ----
  68          *****************************************************************************
  69          */
  70          void WriteCommand_0108(U8 CmdData)
  71          {
  72   1          LCD_E = 0;
  73   1          LCD_RS = 0;
  74   1          LCD_RW = 0;
  75   1          LCD_Bus = CmdData;
  76   1          SomeNop();
  77   1          LCD_E = 1;
  78   1          SomeNop();
  79   1          LCD_E = 0;
  80   1      
  81   1      }
  82          
  83          
  84          /*
  85          *****************************************************************************
  86          * WriteData_0108 - 寫數據到KS0108
  87          * DESCRIPTION: -
  88          * 本函數不接管片選信號
  89          * @Param Data:寫入的數據
  90          * @Return :
  91          * ----
  92          *****************************************************************************
  93          */
  94          void WriteData_0108(U8 Data)
  95          {
  96   1          LCD_E = 0;
  97   1          LCD_RS = 1;
  98   1          LCD_RW = 0;
  99   1          LCD_Bus = Data;
 100   1          SomeNop();
 101   1          LCD_E = 1;
 102   1          SomeNop();
 103   1          LCD_E = 0;
 104   1      
 105   1      }
 106          /*-------------------讀LCD數據----------------------------*/
 107          #if 0
              U8 ReadData_0108(void)
              {   U8 Temp;
                  LCD_Bus = 0xFF;//切換成輸入
                  LCD_RS = 1;
                  LCD_RW = 1;
                  SomeNop();
                  LCD_E = 1;
                  SomeNop();
                  Temp = LCD_Bus;
C51 COMPILER V7.20   KS0108                                                                09/04/2007 22:35:41 PAGE 3   

                  return(Temp);
              /*
                  U8 Temp;
                  PIN_KS0108_Di_HIGH;
                  PIN_KS0108_RW_HIGH;
                  DelayS(0);
                  PIN_KS0108_Enable_HIGH;
                  DelayS(0);
                  PIN_KS0108_Enable_LOW;
                  Temp = PIN_KS0108_Lcd_InBus;
                  return (Temp);
              */
              }
              
              U8 ReadState_0108(void)
              {
                  U8 Temp;
                  LCD_Bus = 0xFF;
                  LCD_RS = 0;
                  LCD_RW = 1;
                  SomeNop();
                  LCD_E = 1;
                  SomeNop();
                  LCD_E = 0;
                  Temp = LCD_Bus;
                  return (Temp);
              
              
              }
              
              U8 Busy(void)
              {
                  U16 TimeOut;
                  U8 Flag;
                  TimeOut = 200;
                  do{
                      Flag = ReadState_0108();
                      LED1 ^= 0x01;
                      if (TimeOut-- == 0){
                          return 0;
                      }
                  }while(Flag &0x80);
                  return 1;
              }
              #endif
 162          //Option = 1   --->Disp On
 163          //Option = 0   --->Disp Off
 164          void KS0108_DisplayOn(U8 Option)
 165          {
 166   1          if (Option == 1) {
 167   2              WriteCommand_0108(Ks0108_CMD_Disp_ON);
 168   2          }else{
 169   2              WriteCommand_0108(Ks0108_CMD_Disp_OFF);
 170   2          }
 171   1      }
 172          
 173          void KS0108_SetStartRow(U8 Row)
 174          {
 175   1          WriteCommand_0108(Ks0108_CMD_Disp_Start_Line + Row);
 176   1      }
 177          /*
 178          *****************************************************************************
C51 COMPILER V7.20   KS0108                                                                09/04/2007 22:35:41 PAGE 4   

 179          * Display_Locate - LCD上指定位置 顯示指定數據
 180          * DESCRIPTION: -
 181          *
 182          * @Param x0:0--191橫向坐標
 183          * @Param y0:0--7  縱向坐標
 184          * @Param DisplayData:寫入的數據
 185          * @Return :
 186          * ----
 187          *****************************************************************************
 188          */
 189          void Display_Locate(U8 DisplayData, U8 x0, U8 y0)
 190          {
 191   1          if ((x0 <= (LCD_XSIZE-1))&(y0 <= (LCD_YSIZE-1))){
 192   2              if (x0 <= 63){                                //0--191
 193   3                  LCD_CSA();
 194   3      //            Busy();//判忙
 195   3                  WriteCommand_0108(Ks0108_CMD_Set_Addr + x0);
 196   3              } else if (x0 <= 127){
 197   3                  LCD_CSB();
 198   3      //            Busy();//判忙
 199   3                  WriteCommand_0108(Ks0108_CMD_Set_Addr + x0 - 64);
 200   3              } else if (x0 <= 191){
 201   3                  LCD_CSC();
 202   3      //            Busy();//判忙
 203   3                  WriteCommand_0108(Ks0108_CMD_Set_Addr + x0 -128);
 204   3              }
 205   2      //        Busy();//判忙
 206   2              WriteCommand_0108(y0 + Ks0108_CMD_Set_Page);   //0--7
 207   2      //        Busy();//判忙
 208   2              WriteData_0108(DisplayData);
 209   2              LCD_CS_None();//不再片選任何一個Ks0108
 210   2          }
 211   1      }
 212          
 213          
 214          /*
 215          *****************************************************************************
 216          * Display_Clear - 清空LCD顯示
 217          * DESCRIPTION: -
 218          *
 219          * @Param void:
 220          * @Return :
 221          * ----
 222          *****************************************************************************
 223          */
 224          void Display_Clear(void)
 225          {
 226   1          U8 j,k;
 227   1      //--------------------------------------
 228   1          LCD_CSA();
 229   1          for(k = 0; k < 8; k++){
 230   2              WriteCommand_0108(0 + Ks0108_CMD_Set_Addr); //0--7
 231   2              WriteCommand_0108(k + Ks0108_CMD_Set_Page); //0--63
 232   2              for(j = 0;j < 64;j++){
 233   3                  WriteData_0108(0x00);
 234   3              }
 235   2          }
 236   1          KS0108_SetStartRow(0);
 237   1      //--------------------------------------
 238   1          LCD_CSB();
 239   1          for(k = 0; k < 8; k++){
 240   2              WriteCommand_0108(0 + Ks0108_CMD_Set_Addr); //0--7
C51 COMPILER V7.20   KS0108                                                                09/04/2007 22:35:41 PAGE 5   

 241   2              WriteCommand_0108(k + Ks0108_CMD_Set_Page); //0--63
 242   2              for(j = 0;j < 64;j++){
 243   3                  WriteData_0108(0x00);
 244   3              }
 245   2          }
 246   1          KS0108_SetStartRow(0);
 247   1      //-------------------------------------
 248   1          LCD_CSC();
 249   1          for(k = 0; k < 8; k++){
 250   2              WriteCommand_0108(0 + Ks0108_CMD_Set_Addr);//0--7
 251   2              WriteCommand_0108(k + Ks0108_CMD_Set_Page);//0-63
 252   2              for(j = 0;j < 64;j++){
 253   3                  WriteData_0108(0x00);
 254   3              }
 255   2          }
 256   1          KS0108_SetStartRow(0);
 257   1      //-------------------------------------
 258   1          LCD_CS_None();
 259   1      }
 260          
 261          
 262          /*
 263          *****************************************************************************
 264          * Display_Init - 初始化LCD
 265          * DESCRIPTION: -
 266          *
 267          * @Param void:
 268          * @Return :
 269          * ----
 270          *****************************************************************************
 271          */
 272          void Display_Init(void)
 273          {
 274   1      //---------------------------
 275   1          LCD_CSA();
 276   1          KS0108_DisplayOn(0);
 277   1          KS0108_SetStartRow(0);
 278   1          KS0108_DisplayOn(1);
 279   1      //---------------------------
 280   1          LCD_CSB();
 281   1          KS0108_DisplayOn(0);
 282   1          KS0108_SetStartRow(0);
 283   1          KS0108_DisplayOn(1);
 284   1      //---------------------------
 285   1          LCD_CSC();
 286   1          KS0108_DisplayOn(0);
 287   1          KS0108_SetStartRow(0);
 288   1          KS0108_DisplayOn(1);
 289   1      //---------------------------
 290   1          LCD_CS_None();
 291   1      }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品进线69影院| 日韩亚洲欧美中文三级| 久久99热国产| 免费看日韩精品| 日韩电影在线一区二区| 日韩高清不卡在线| 免费成人你懂的| 麻豆国产精品官网| 国产乱码精品一区二区三| 国产呦萝稀缺另类资源| 激情av综合网| 成人综合婷婷国产精品久久| 成人avav影音| 色又黄又爽网站www久久| 日本电影亚洲天堂一区| 欧美日韩一级黄| 777奇米成人网| 26uuu久久综合| 中文字幕在线一区免费| 亚洲一区二区精品3399| 日韩av网站免费在线| 狠狠色丁香久久婷婷综| 成人午夜激情片| 在线观看国产一区二区| 日韩欧美中文字幕制服| 亚洲国产精品传媒在线观看| 亚洲激情中文1区| 日本vs亚洲vs韩国一区三区| 国产高清精品网站| 在线观看日产精品| 久久久久国产精品人| 日韩毛片高清在线播放| 日韩av电影天堂| 成人网在线播放| 欧美日本高清视频在线观看| 久久久精品黄色| 一区二区高清视频在线观看| 久久国产欧美日韩精品| 91国在线观看| 久久久99免费| 石原莉奈在线亚洲二区| 成人网页在线观看| 日韩一级片在线播放| 日韩伦理电影网| 国产美女主播视频一区| 欧美三级资源在线| 国产精品视频一二| 男人的天堂久久精品| 色偷偷88欧美精品久久久| 亚洲精品在线观看网站| 丝袜亚洲另类欧美| 91在线看国产| 中文字幕精品一区二区精品绿巨人 | 色综合一个色综合亚洲| 亚洲精品一区在线观看| 天天综合日日夜夜精品| 91国偷自产一区二区三区成为亚洲经典| 欧美mv日韩mv亚洲| 日韩国产在线一| 欧美亚洲动漫精品| 亚洲视频你懂的| 成人app网站| 国产精品日韩成人| 风间由美性色一区二区三区| 欧美电影免费观看高清完整版在 | 日韩中文欧美在线| 欧美综合一区二区| 一区二区三区欧美亚洲| 成人午夜视频免费看| 国产午夜精品福利| 国产精品996| 国产三级精品三级| 国产成人一级电影| 国产欧美日韩视频一区二区| 国产九色精品成人porny| 久久亚洲欧美国产精品乐播 | 国产91精品一区二区麻豆网站| 日韩精品一区二区三区视频在线观看 | 国产一区二区在线电影| 欧美成人免费网站| 国产一区二区三区| 中文字幕第一页久久| 成人网在线播放| 亚洲免费观看高清完整版在线| 色婷婷av一区二区三区软件| 日韩毛片视频在线看| 欧美亚洲一区三区| 日韩成人午夜电影| 91精品欧美综合在线观看最新| 日韩精品一二区| 久久综合成人精品亚洲另类欧美| 极品少妇xxxx精品少妇偷拍| 精品成人在线观看| 成人免费视频国产在线观看| 亚洲精品免费电影| 欧美日韩在线直播| 韩国成人福利片在线播放| 欧美国产一区二区在线观看| 一本久久a久久免费精品不卡| 亚洲国产一区二区三区青草影视| 8x8x8国产精品| 成人一区二区在线观看| 一区二区三区在线视频观看| 日韩一区二区在线看片| 国产成人aaa| 亚洲国产精品久久不卡毛片| 精品久久久久99| 99国产精品久久久| 日韩不卡在线观看日韩不卡视频| 国产欧美在线观看一区| 色8久久人人97超碰香蕉987| 免费在线观看不卡| 国产精品毛片a∨一区二区三区| 欧美日韩一级二级三级| 国产福利电影一区二区三区| 亚洲国产综合91精品麻豆| 久久久久久影视| 欧美性受极品xxxx喷水| 国产盗摄精品一区二区三区在线 | 国产曰批免费观看久久久| 亚洲黄色免费电影| 久久久久青草大香线综合精品| 色欧美片视频在线观看| 国产麻豆精品95视频| 香蕉加勒比综合久久| 中文字幕精品一区二区精品绿巨人| 欧美日韩国产三级| 91免费看片在线观看| 国产精品综合视频| 美脚の诱脚舐め脚责91 | 亚洲精品网站在线观看| wwwwxxxxx欧美| 制服丝袜日韩国产| 日本久久一区二区| 成人午夜精品一区二区三区| 麻豆精品久久精品色综合| 亚洲777理论| 亚洲乱码国产乱码精品精的特点| 久久久www成人免费无遮挡大片| 91.麻豆视频| 欧美精品一二三| 欧美三级中文字幕| 欧洲精品视频在线观看| 99久久久久久| 99国产精品久| 91麻豆免费看片| 91视频免费播放| 91社区在线播放| 99精品偷自拍| 色哟哟一区二区在线观看| 91在线丨porny丨国产| av亚洲产国偷v产偷v自拍| 成人福利在线看| 99久久精品国产观看| aaa亚洲精品| 一本色道久久综合亚洲精品按摩 | 日本道精品一区二区三区| 91在线精品一区二区| 91丨九色丨国产丨porny| 色综合视频一区二区三区高清| 91丨porny丨国产入口| 色老汉一区二区三区| 在线观看91视频| 欧美卡1卡2卡| 精品久久久影院| 久久久久97国产精华液好用吗| 国产人久久人人人人爽| 国产精品久久久久久久浪潮网站| 亚洲同性gay激情无套| 亚洲一卡二卡三卡四卡五卡| 亚洲国产精品久久不卡毛片| 日本在线不卡一区| 国产一区二区免费在线| 91在线云播放| 911精品产国品一二三产区| 久久综合色8888| 亚洲欧洲另类国产综合| ...av二区三区久久精品| 一区二区激情视频| 韩国理伦片一区二区三区在线播放| 国产盗摄一区二区| 欧美亚一区二区| 久久女同互慰一区二区三区| 最新国产精品久久精品| 亚洲va欧美va人人爽| 经典三级视频一区| 色偷偷成人一区二区三区91| 日韩一区二区三区免费看 | 国产精品嫩草99a| 午夜电影网亚洲视频| 国产自产高清不卡| 色综合久久综合| 精品国产欧美一区二区| 亚洲人成电影网站色mp4| 麻豆国产欧美一区二区三区| 色综合天天综合网天天看片| 精品美女一区二区三区| 亚洲一区二区av电影| 国产成人高清视频| 91精品国产91久久综合桃花|