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

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

?? lcm-1602a.lst

?? LCD1602.rar
?? LST
字號:
C51 COMPILER V8.08   LCM_1602A                                                             11/24/2009 12:52:21 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE LCM_1602A
OBJECT MODULE PLACED IN LCM-1602A.OBJ
COMPILER INVOKED BY: f:\Keil3\C51\BIN\C51.EXE LCM-1602A.C BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /**********************************************************************************************
   2              作者:   李雪川
   3              時間:   2009-7-29
   4              說明:   YJD1602A-1液晶顯示程序
   5              地址設置:地址為后7位,第8位為1
   6                  N=0 一行顯示 地址0x00-0x4f
   7                  N= 1 兩行顯示 首行 0x00-0x2f, 次行0x40-0x67
   8              版本:   V1
   9              注意:u = LCM_BYTE;  ***********特別注意:往往一時大意容易出小錯,結果出不來*******
  10                   while (u & 0x80);  BF=1:忙 BF = 0: 空閑 
  11                   return(u);
  12          **------------------------------------------------------------------------------------
  13          **  修改信息:
  14          **  修改  人:       李雪川
  15          **  修改日期:       2009-10-25
  16          **  修改內容:       添加液晶測試宏定義,方便測試
  17          ***********************************************************************************************/
  18          
  19          /* LCM-1602A.C */
  20          
  21          #include "LCM-1602A.H"
  22          
  23          
  24          /******************************************************************************************* 
  25          **  函數名稱:delay_ms 
  26          **  函數功能:延時ms 
  27          *******************************************************************************************/ 
  28          
  29          
  30          /******************************************************************************************* 
  31          **  函數名稱: uchar lcm_rdbyte(void)
  32          **  函數功能:向1602a-1讀一個數據
  33          *******************************************************************************************/
  34          uchar lcm_rdbyte(void)
  35          {
  36   1          LCM_RS = 1; /* 讀數據 */
  37   1          LCM_R_W = 1; 
  38   1          LCM_E = 1; /* 高電平有效 */
  39   1          return(LCM_BYTE);
  40   1      }
  41          
  42          /******************************************************************************************* 
  43          **  函數名稱: uchar lcm_rdint(void)
  44          **  函數功能:向1602a-1讀BF , AC
  45          *******************************************************************************************/
  46          uchar lcm_rdint(void)
  47          {
  48   1          LCM_BYTE = 0xff;
  49   1          LCM_RS = 0; /* 讀寄存器 */
  50   1          LCM_R_W = 1; 
  51   1          LCM_E = 1; /* 高電平有效 */
  52   1      /***u = LCM_BYTE;  //***********特別注意:往往一時大意容易出小錯,結果出不來*************/
  53   1          while (LCM_BYTE & 0x80); /* BF=1:忙 BF = 0: 空閑 */
  54   1          return(LCM_BYTE);
  55   1      }
C51 COMPILER V8.08   LCM_1602A                                                             11/24/2009 12:52:21 PAGE 2   

  56          
  57          
  58          /******************************************************************************************* 
  59          **  函數名稱: void lcm_wrint(uchar byte, uchar busyc)
  60          **  函數功能:向1602a-1寫寄存器. 包括些控制字和地址
  61          **  地址設置:地址為后7位,第8位為1
  62                  N=0 一行顯示 地址0x00-0x4f
  63                  N= 1 兩行顯示 首行 0x00-0x2f, 次行0x40-0x67
  64          *******************************************************************************************/
  65          void lcm_wrint(uchar byte, uchar busyc)
  66          {
  67   1          if (busyc) lcm_rdint(); /* busyc 為0 忽略遇忙檢測 */
  68   1      //    LCM_BYTE = byte;
  69   1          LCM_RS = 0; /* 寫寄存器 */
  70   1          LCM_R_W = 0; 
  71   1          LCM_BYTE = byte;
  72   1          LCM_E = 0; /*下降沿有效 */
  73   1          _nop_();
  74   1          LCM_E = 1;//////////////////////////////////////////////////////////////////
  75   1      }
  76          
  77          
  78          /******************************************************************************************* 
  79          **  函數名稱: void lcm_wrbyte(uchar byte)
  80          **  函數功能:向1602a-1寫一個數據,(寫完后ac可設置自動加一)
  81          *******************************************************************************************/
  82          void lcm_wrbyte(uchar byte)
  83          {
  84   1          lcm_rdint(); /* 遇忙檢測 */
  85   1          LCM_RS = 1; /* 寫數據 */
  86   1          LCM_R_W = 0; 
  87   1          LCM_BYTE = byte;
  88   1          LCM_E = 0; /*下降沿有效 */
  89   1          _nop_();
  90   1          LCM_E = 1;    
  91   1      }
  92          
  93          
  94          /******************************************************************************************* 
  95          **  函數名稱: void lcm_ac(uchar x, uchar y) 
  96          **  函數功能:  將AC光標移動到指定位置
  97          *******************************************************************************************/
  98          void lcm_ac(uchar x, uchar y) 
  99          { 
 100   1          y &= 0x01;  /* 算地址 */
 101   1          x &= 0x0F; //限制X不能大于15,Y不能大于1 
 102   1          if (y) x |= 0x40; //當要顯示第二行時地址碼+0x40; 
 103   1          x |= 0x80; // 算出指令碼 
 104   1          lcm_wrint(x, 0); //這里不檢測忙信號,發送地址碼 
 105   1      } 
 106          
 107          
 108          /******************************************************************************************* 
 109          **  函數名稱: void lcm_displist(uchar x, uchar y, uchar *ddata) 
 110          **  函數功能:向1602a-1任意地址顯示一串字符
 111          *******************************************************************************************/
 112          void lcm_displist(uchar x, uchar y, uchar *ddata)
 113          {
 114   1          uchar line = x; /* 字符串首列地址 */
 115   1          uchar listlength = 0;
 116   1          y &= 0x01; 
 117   1          x &= 0x0F; //限制X不能大于15,Y不能大于1 
C51 COMPILER V8.08   LCM_1602A                                                             11/24/2009 12:52:21 PAGE 3   

 118   1          
 119   1          if (y) line |= 0x40; //當要顯示第二行時地址碼+0x40; 
 120   1          line |= 0x80; // 算出指令碼 
 121   1          lcm_wrint(line, 1); //檢測忙信號,發送地址碼 
 122   1          
 123   1          while(ddata[listlength] != '\0') //若到達字串尾則退出
 124   1          {
 125   2              if (x <= 0x0F) //X坐標應小于0xF 
 126   2              {
 127   3                 // lcm_diapchar(x, y, ddata[listlength]);
 128   3                  lcm_wrbyte(ddata[listlength]);
 129   3                  x++;
 130   3                  listlength++;
 131   3              }
 132   2              else
 133   2              {
 134   3                  break;
 135   3              }
 136   2          }
 137   1      }
 138          
 139          /******************************************************************************************* 
 140          **  函數名稱: void lcm_init() 
 141          **  函數功能:1602a-1初始設置
 142          *******************************************************************************************/
 143          void lcm_init()
 144          {
 145   1      
 146   1          lcm_wrint(0x38,1); /* D4= 1:8位數據接口,0:4位數據接口,D3=1:兩行顯示 0:一行顯示 
 147   1                                  D2 = 1: 5*10點陣 0 :5*7點陣*/
 148   1          lcm_wrint(0x08,1); /* 顯示開關控制D3=1, D2顯示開關,D1光標開關,D0閃爍開關. 1:開,0:關 */
 149   1      
 150   1          lcm_wrint(0x0e,1);
 151   1          lcm_wrint(0x01,1); /* 清零 */
 152   1          lcm_wrint(0x02,1); /* 光標歸為到HOME */  
 153   1          lcm_wrint(0x06,1); /* 輸入方式設置,D2=1, D1=1:AC自加,0:自減, D0=1:畫面平移,0:不動\
 154   1                              這里畫面設置為不動*/
 155   1          //lcm_wrint(0x1c,1); /* 光標畫面移位,D3=1:畫面移 0:光標移動,D2=1:右移0:左移 */  
 156   1      }
 157          
 158          
 159          
 160          
 161          
 162          
 163          
 164          /*--------------------------------宏編譯---------------------------------------------------*/
 165          #if LCM_1602A_TEST > 0
 166          
 167          
 168          void main()
 169          {
 170   1          uint i = 500000;
 171   1          uchar code tab1[] = {"zhu yao xing fu!!!!"};
 172   1          uchar code tab2[] = {"   yong yuan!   "};
 173   1          while(i--);
 174   1          lcm_init();
 175   1      
 176   1          lcm_wrbyte('a');
 177   1          lcm_wrbyte('a');
 178   1          lcm_wrbyte('a');
 179   1          lcm_wrbyte('a');
C51 COMPILER V8.08   LCM_1602A                                                             11/24/2009 12:52:21 PAGE 4   

 180   1      
 181   1      
 182   1          lcm_displist(0,1,tab2);
 183   1          lcm_displist(0,0,tab1);
 184   1          lcm_rdbyte(); //測試可不要
 185   1          while(1);
 186   1      }
 187          
 188          #endif
 189          /*----------------------------宏編譯結束------------------------------------------------------*/
 190          
 191          
 192          
 193          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    238    ----
   CONSTANT SIZE    =     37    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       4
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产三级| 国产欧美日韩在线看| 91欧美一区二区| 成人精品在线视频观看| 丰满岳乱妇一区二区三区| 黑人精品欧美一区二区蜜桃| 麻豆国产精品官网| 蜜臀av一区二区三区| 青娱乐精品在线视频| 中文文精品字幕一区二区| 成人高清视频在线| 视频一区视频二区在线观看| 午夜激情一区二区| 图片区日韩欧美亚洲| 日韩国产高清影视| 精品综合久久久久久8888| 国产在线精品一区二区不卡了| 韩国女主播成人在线| 国产精品一级黄| 成人免费视频视频在线观看免费 | 97久久超碰国产精品| 色综合天天综合在线视频| 色八戒一区二区三区| 欧美日韩中文国产| 日韩一区二区三区av| 精品999久久久| 中文字幕高清不卡| 亚洲欧美国产毛片在线| 亚洲一区二区三区四区中文字幕| 日本中文一区二区三区| 国产自产视频一区二区三区| 成人高清在线视频| 欧美日韩二区三区| 久久久久久99精品| 亚洲欧美日韩国产另类专区| 日一区二区三区| 国产精品一区二区果冻传媒| 色综合久久久久久久久久久| 欧美日韩一区三区| 久久久一区二区三区| 自拍av一区二区三区| 天天综合天天做天天综合| 国产一区二区福利| 色婷婷av一区二区三区软件| 日韩一区二区三区视频在线| 中国色在线观看另类| 亚洲成人激情自拍| 丁香婷婷综合网| 欧美丰满少妇xxxxx高潮对白| 国产日韩在线不卡| 偷偷要91色婷婷| 成人小视频免费在线观看| 欧美精品在线观看一区二区| 中文字幕精品—区二区四季| 日本人妖一区二区| proumb性欧美在线观看| 亚洲男同性视频| 韩国精品在线观看| 欧美这里有精品| 国产人成亚洲第一网站在线播放| 五月天婷婷综合| a级精品国产片在线观看| 日韩欧美另类在线| 亚洲一区二区三区爽爽爽爽爽| 国产精品1区2区3区在线观看| 欧美日韩精品一区二区天天拍小说| 国产精品丝袜一区| 久99久精品视频免费观看| 欧洲精品在线观看| 国产精品沙发午睡系列990531| 日本欧美在线看| 欧美日韩视频在线第一区| 亚洲欧美怡红院| 国产酒店精品激情| 日韩网站在线看片你懂的| 午夜亚洲福利老司机| 99久久精品费精品国产一区二区| 久久久另类综合| 久久精品久久久精品美女| 91久久精品一区二区| 亚洲欧洲美洲综合色网| 国产福利一区二区三区视频在线| 欧美一二三区在线观看| 亚洲无人区一区| 欧美亚洲综合另类| 樱桃视频在线观看一区| 波多野洁衣一区| 国产精品人人做人人爽人人添| 久久av资源网| 日韩三级av在线播放| 三级欧美在线一区| 欧美日韩国产经典色站一区二区三区| 亚洲四区在线观看| 成人av在线资源| 国产日韩精品一区| 国产精品一区二区在线观看网站| 精品国产亚洲在线| 麻豆精品一区二区| 五月天国产精品| 欧美视频精品在线| 亚洲va天堂va国产va久| 欧美日韩国产美女| 午夜精品福利久久久| 欧美老年两性高潮| 日日夜夜精品视频免费| 制服丝袜激情欧洲亚洲| 日韩高清不卡一区二区| 制服丝袜中文字幕一区| 美国十次综合导航| 久久先锋资源网| 国产.精品.日韩.另类.中文.在线.播放 | 91性感美女视频| 亚洲免费观看在线视频| 在线免费亚洲电影| 午夜电影网亚洲视频| 4438x亚洲最大成人网| 久草中文综合在线| 中文字幕巨乱亚洲| av网站免费线看精品| 亚洲女人的天堂| 在线播放亚洲一区| 激情欧美一区二区三区在线观看| 久久精品免费在线观看| www.亚洲精品| 亚洲图片一区二区| 精品成人一区二区三区四区| 国产91精品久久久久久久网曝门| 1000部国产精品成人观看| 91黄色免费看| 免费av网站大全久久| 久久精品日产第一区二区三区高清版| 99久久伊人精品| 亚洲成精国产精品女| 精品嫩草影院久久| 丁香婷婷综合网| 亚洲图片欧美色图| 久久综合色之久久综合| 9色porny自拍视频一区二区| 亚洲国产精品精华液网站| 日韩一区二区三区av| 波多野结衣亚洲| 婷婷中文字幕一区三区| 久久蜜臀精品av| 欧美色老头old∨ideo| 韩国v欧美v日本v亚洲v| 亚洲天堂网中文字| 欧美一区二区视频网站| 成人精品免费视频| 日韩中文字幕区一区有砖一区| 久久久久高清精品| 欧美日韩国产小视频| 国产成人精品三级| 视频一区中文字幕国产| 最新热久久免费视频| 91精品国产色综合久久不卡蜜臀| 成人国产精品免费观看动漫| 丝袜a∨在线一区二区三区不卡| 欧美激情一区二区三区全黄| 欧美日韩一区三区| 成人福利视频在线| 免费成人美女在线观看.| 亚洲激情图片一区| 久久精品人人爽人人爽| 91精品久久久久久蜜臀| 成人av免费在线| 精品一区二区免费| 五月婷婷综合网| 亚洲乱码国产乱码精品精的特点| 久久午夜色播影院免费高清| 欧美精品一二三四| 91一区二区在线| 国产超碰在线一区| 蓝色福利精品导航| 亚洲大片免费看| 亚洲免费大片在线观看| 久久九九久精品国产免费直播| 欧美久久一二三四区| 色香蕉久久蜜桃| 成人激情免费电影网址| 精品一区二区精品| 日韩高清不卡在线| 亚洲动漫第一页| 一区二区在线观看视频在线观看| 国产日韩欧美亚洲| 欧美成人性战久久| 69堂亚洲精品首页| 欧美日韩免费在线视频| 色哟哟国产精品| 91免费看`日韩一区二区| 风流少妇一区二区| 国产一区二区三区高清播放| 麻豆高清免费国产一区| 天堂成人免费av电影一区| 亚洲影院理伦片| 亚洲综合免费观看高清完整版| 亚洲精品中文字幕乱码三区| 国产精品白丝在线| 国产精品乱码久久久久久| 欧美激情一区在线| 国产欧美一区二区在线|