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

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

?? main.lst

?? 步進電機控制的C程序
?? LST
字號:
C51 COMPILER V8.08   MAIN                                                                  12/21/2008 10:38:58 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <REGX52.H>
   2          //#include <SST89X5XXRD2.H>
   3          #include<math.h>
   4          #define uchar unsigned char 
   5          #define uint unsigned int
   6          
   7          char code sxf[][4]={" ","1  ","2  ","4  ","8  ","16 ","32 ","64 ","128","256","5  ","10 ","20 ","40 ","80 
             -","160","   "};
   8          
   9          char code workshow[][4]={"OFF","ON "};
  10          char code runflash[][4] = {"ON-","ON_"};
  11          char dirshow[][4]= {"R->","<-F"};
  12          uchar idata recbuf[30];//串口接收緩沖區(qū)
  13          uchar outbuf[10];//串口發(fā)送緩沖區(qū);
  14          uchar reclen;   
  15          uchar sendlen;  // 發(fā)送計數器
  16          uchar *sendbuf; // 發(fā)送指針
  17          bit work;               // 運行控制      0--停止,1--轉動
  18          uchar k=0;
  19          bit dir;  // 運轉方向
  20          uint steplen;    // 運動步數
  21          uchar uxifen;   // 細分值 
  22          
  23          sbit  s0 = P2^0; //細分設置
  24          sbit  s1 = P2^1; //細分設置
  25          sbit  s2 = P2^2; //細分設置
  26          sbit  s3 = P2^3;  //細分設置
  27          #define  XIFEN  P2
  28          #define XFMASK 0xf0
  29          sbit KEYUP = P2^6;
  30          sbit KEYDN = P2^7;
  31          
  32          sbit  QA   = P1^0;
  33          sbit  QB   = P2^5;
  34          
  35          sbit  FREE = P2^4;  // 脫機控制 
  36          uchar phase[]={0,1,3,2,0,1,3,2}; // 相位控制
  37          uchar zx[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
  38          bit ReadVer;
  39          
  40          uint position =0;
  41          uint posmax=60000;
  42          
  43          sbit  KEY1 = P2^4;
  44          sbit  KEY2 = P2^5;
  45          sbit  KEY3 = P2^6;
  46          sbit  KEY4 = P2^7;
  47                                                     
  48          //函數聲明
  49          void sysinit(void);    // 系統(tǒng)初始化
  50          void xifenset(uint i); //細分設置函數
  51          void delay(uint t);   // 延時函數 //
  52          void LcdReset(void);/*初始化*/
  53          void lcd_cls();/*清除顯示*/
  54          void ePut_str(char x,char y,char *strpoint); /*在當前顯示位置顯示LCD 字符串*/
C51 COMPILER V8.08   MAIN                                                                  12/21/2008 10:38:58 PAGE 2   

  55          //void lcd_string(char *strpoint) ;
  56          void showx(char x,char y,unsigned int n);
  57          void Delay50ms(uchar n); // 延時n*50ms
  58          void Delayms(uint n);//延時n(ms);
  59          //void show(); //
  60          void senddata(uchar m);//串口發(fā)送程序
  61          void SendStr(unsigned char *buf);// 發(fā)送字符串
  62          
  63          bit bwork;
  64          //%*3011020
  65          
  66          void bytewrite (unsigned  int um, unsigned char dat)     ;
  67          unsigned char byteread(unsigned int um);
  68          
  69          
  70          void main(void)
  71          {
  72   1          uchar i;uchar p;
  73   1              sysinit(); //初始化
  74   1              //senddata('O');
  75   1          LcdReset();
  76   1              lcd_cls();
  77   1              P0=0xFE;
  78   1          EA=1;
  79   1              SendStr("V數字共交顯微控制 V1.0");
  80   1              Delay50ms(4); // 延時2s
  81   1              ePut_str(0,0,"Run:OFF XF:     ");
  82   1              ePut_str(0,1,"Dir:    ST:     ");
  83   1              position = (byteread(10)<<8) | byteread(11);
  84   1              delay(1000);     
  85   1              while(1)
  86   1         { 
  87   2               if(work) ET0 = 1;
  88   2               else ET0 =0;
  89   2               KEYUP=1;KEYDN=1;
  90   2               if(KEYUP==0) {
  91   3                  work=1;
  92   3                  dir=1;steplen=10;
  93   3                      ET0=1;
  94   3                      }
  95   2               if(KEYDN==0) {
  96   3                  work=1;
  97   3                      dir=0;steplen=10;
  98   3                      ET0=1;}
  99   2      
 100   2               ePut_str(4,0,workshow[work]);  
 101   2               ePut_str(11,0,sxf[uxifen]);
 102   2               showx (15,0,work);
 103   2               ePut_str(4,1,dirshow[dir]);
 104   2               showx (11,1,steplen);
 105   2               if(ReadVer){ReadVer=0;SendStr("V數字共交顯微控制 V1.0"); }
 106   2               //P0 = zx[uxifen];
 107   2         } 
 108   1      }
*** WARNING C280 IN LINE 72 OF MAIN.C: 'i': unreferenced local variable
*** WARNING C280 IN LINE 72 OF MAIN.C: 'p': unreferenced local variable
 109          
 110          void timer0(void) interrupt 1
 111          {
 112   1         uchar p=0;
 113   1         static int t=0;   
 114   1      
C51 COMPILER V8.08   MAIN                                                                  12/21/2008 10:38:58 PAGE 3   

 115   1         if((work ==1) && steplen)
 116   1         { 
 117   2                       p = k&0x03;
 118   2                       QA =  phase[p]&0x01;
 119   2                       QB =  (phase[p]>>1)&0x01;
 120   2       
 121   2                       if(work==1 && steplen) steplen--;      
 122   2      
 123   2                       if(dir) { k--;if(position) position--;}        // 正向控制       
 124   2                       else    { k++;if((position<posmax)) position++;}          // 反向控制   
 125   2      
 126   2         } 
 127   1                 /*
 128   1                 else if( work==3 )   
 129   1                 {
 130   1                       p = k&0x03;
 131   1                       QA =  phase[p]&0x01;
 132   1                       QB =  (phase[p]>>1)&0x01;
 133   1                   if(dir) { k--;position--;}         // 正向控制       
 134   1                       else    { k++;position++;}        // 反向控制   
 135   1                 }
 136   1                 */
 137   1                 else 
 138   1                 { 
 139   2                   QA=0;QB=0; work=0;ET0=0;
 140   2                       TI =0;SBUF = '$';while(!TI) ;
 141   2                       TI =0;SBUF = position>>8;
 142   2                       bytewrite(10,(uchar)(position>>8));
 143   2                       bytewrite(11,(uchar)position);
 144   2                 }               
 145   1      }
*** WARNING C280 IN LINE 113 OF MAIN.C: 't': unreferenced local variable
 146          
 147          //**************************************************************//
 148          // 細分設置函數 //
 149          //**************************************************************//
 150          void xifenset(uchar i)
 151          {  uchar res;
*** WARNING C235 IN LINE 151 OF MAIN.C: parameter 1: different types
 152   1         uchar k=0;
 153   1         i = i&0x0f;
 154   1         k |=(i & 0x08)>>3;
 155   1         k |=(i & 0x04)>>1;    
 156   1         k |=(i & 0x02)<<1;
 157   1         k |=(i & 0x01)<<3;
 158   1      
 159   1         res = XIFEN;
 160   1         res = (res & 0xF0) | ((~k) & 0x0F);
 161   1         XIFEN = res;
 162   1         uxifen = i+1;      
 163   1      }
 164          
 165          
 166          void senddata(uchar m)
 167          {
 168   1         TI=0;SBUF=m;
 169   1      }                                 
 170          //==========串口中斷處理函數===========================
 171          // 格式1 "%*xdttttr\r" 其中: x為細分值;d=0正轉,d=1反轉;tttt為步數;r=0不控制,r=1執(zhí)行;
 172          // 格式2 "#*s\r"  其中:s=0讀狀態(tài)及參數;s=1正轉;s=2反轉;s=3停止;
 173          #define DDIV  2
 174          #define DDIR  3
C51 COMPILER V8.08   MAIN                                                                  12/21/2008 10:38:58 PAGE 4   

 175          #define DRUN  4
 176          #define DTIME 5
 177          
 178          void uart0(void) interrupt 4
 179          {
 180   1              uchar res;
 181   1              static uchar index=0;
 182   1              if(RI)
 183   1              {//接收中斷處理
 184   2                      RI = 0;
 185   2                      res = SBUF;
 186   2                      recbuf[index]=res;               
 187   2                      if(res!='*' && index==1) {index=0;recbuf[index]=res;}            
 188   2                      if(index) index++;
 189   2                      if(res=='%'||res=='#')       {index=1;recbuf[0]=res; }
 190   2                      
 191   2                      if(res==0x0a && index >3)// 收到有效的控制碼
 192   2                      {
 193   3                      recbuf[index]=0;// 添加字符串結束符
 194   3                      reclen = index;         
 195   3                      index =0;               
 196   3                      if(recbuf[0]=='%' && reclen==11)                
 197   3                      {                  
 198   4                         xifenset(recbuf[DDIV]&0x0f); // 設置細分數
 199   4                         dir = recbuf[DDIR]&0x01;  // 正反轉
 200   4                         work = recbuf[DRUN] & 0x03;
 201   4                         steplen =(recbuf[DTIME]&0x0f);  steplen<<=4;
 202   4                         steplen |=(recbuf[DTIME+1]&0x0f);steplen<<=4;
 203   4                         steplen |=(recbuf[DTIME+2]&0x0f);steplen<<=4;
 204   4                         steplen |=(recbuf[DTIME+3]&0x0f);
 205   4                      }
 206   3                      else if(recbuf[0]=='#' && reclen==5)
 207   3                      {  //index =0; 
 208   4                         switch(recbuf[2]&0x0f)
 209   4                         {
 210   5                            case 0: work =0;break;
 211   5                                case 1: work =1;dir = 0; break;
 212   5                                case 2: work =1;dir = 1; break;
 213   5                                case 3: work =0;break;
 214   5                                case 8: ReadVer=1; break;
 215   5                                default: work =0; break;                 
 216   5                         }
 217   4                      }
 218   3                      }               
 219   2                      if(index>=20) index =0;   // 如果收到亂碼重置  
 220   2              }                
 221   1              else 
 222   1              { // 發(fā)送中斷處理
 223   2                      TI=0;
 224   2                      if(sendlen) 
 225   2                      {
 226   3                              sendlen--;
 227   3                              if(sendlen) SBUF = *sendbuf++;           
 228   3                      }               
 229   2              }
 230   1      
 231   1      }
 232          void SendStr(unsigned char *buf)
 233          { 
 234   1        unsigned char len=0;
 235   1        while(sendlen);
 236   1        while(buf[len]) len++;
C51 COMPILER V8.08   MAIN                                                                  12/21/2008 10:38:58 PAGE 5   

 237   1        sendlen = len;
 238   1        TI=0;
 239   1        sendbuf = buf;
 240   1        SBUF = *sendbuf++;  
 241   1       
 242   1      }
 243          
 244          //**************************************************************//
 245          //系統(tǒng)初始化//
 246          //**************************************************************//
 247          void sysinit(void)
 248          {
 249   1              // == 定時器0 工作在 1ms, Fosc =11.052MHz
 250   1          TMOD=0x02;
 251   1              TH0=0x00;
 252   1              TL0=0x00;
 253   1      
 254   1          TMOD &=0x0f;
 255   1          TMOD|=0x20;
 256   1          SCON=0x50;
 257   1          PCON|=0x80;
 258   1          TH1=0xfd;
 259   1          TL1=0xfd;
 260   1          TR1=1;
 261   1      
 262   1          P3 = 0xff;
 263   1      
 264   1              TR0=1;
 265   1              ET0=0;
 266   1      
 267   1              ES=1; //允許串口中斷
 268   1          PS=0; //串口中斷優(yōu)先級別最高
 269   1          //EA=1; //開所有中斷 
 270   1      }
 271          
 272          //**************************************************************//
 273          // 延時函數 //
 274          //**************************************************************//
 275           void delay(uint N)
 276           {
 277   1         uint i;
 278   1         for(i=0;i<N;i++);
 279   1       }
 280          
 281           void Delayms(unsigned int ms)
 282          {
 283   1          unsigned int i,j;
 284   1          for(i=0;i<ms;i++)
 285   1          for(j=0;j<113;j++);
 286   1      }
 287          
 288          void Delay50ms(unsigned char ms)
 289          {
 290   1          unsigned int i;
 291   1          unsigned char j;
 292   1          for(j=0;j<ms;j++)
 293   1          for(i=0;i<9135;i++);
 294   1      }
 295          
 296          


C51 COMPILER V8.08   MAIN                                                                  12/21/2008 10:38:58 PAGE 6   

MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1030    ----
   CONSTANT SIZE    =    140    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     50       5
   IDATA SIZE       =     30    ----
   BIT SIZE         =      4    ----
END OF MODULE INFORMATION.


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

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩高清欧美激情| 色美美综合视频| proumb性欧美在线观看| 91久久人澡人人添人人爽欧美 | 国产91精品露脸国语对白| 色综合久久久久久久| 亚洲精品在线电影| 亚洲午夜久久久久久久久电影网 | 久久精品国产亚洲aⅴ| 99精品久久只有精品| www精品美女久久久tv| 亚洲成a人片在线不卡一二三区 | 国产人成亚洲第一网站在线播放| 亚洲成人激情自拍| 波多野结衣亚洲一区| 日韩一级片网址| 亚洲国产日产av| 97久久精品人人做人人爽| www激情久久| 激情另类小说区图片区视频区| 欧美无砖专区一中文字| 一区av在线播放| 国产乱码精品一品二品| 欧美一级片免费看| 午夜a成v人精品| 欧美三级视频在线播放| 亚洲男人天堂一区| 99精品久久免费看蜜臀剧情介绍| 国产午夜精品一区二区| 国模娜娜一区二区三区| 久久综合成人精品亚洲另类欧美 | 韩国av一区二区三区| 欧美一区二区播放| 视频在线在亚洲| 91麻豆精品国产91久久久久久| 亚洲精品写真福利| 色视频成人在线观看免| 亚洲一二三级电影| 欧美色倩网站大全免费| 亚洲国产视频a| 欧美一二三四在线| 蜜臀91精品一区二区三区| 日韩一区二区免费在线观看| 极品少妇xxxx偷拍精品少妇| 精品乱人伦一区二区三区| 国精产品一区一区三区mba视频 | 韩国精品免费视频| 久久综合网色—综合色88| 精品无人区卡一卡二卡三乱码免费卡 | 精品国产一区二区亚洲人成毛片 | 欧美色综合影院| 亚洲国产综合视频在线观看| 欧美一区二区三区视频在线 | 亚洲国产视频一区| 91精品国产综合久久久久久| 九一九一国产精品| 中文字幕精品一区二区精品绿巨人 | 欧美综合欧美视频| 青青草国产成人av片免费| 精品福利av导航| 成人在线综合网| 亚洲福利国产精品| 日韩欧美成人午夜| 国产.欧美.日韩| 亚洲综合在线电影| 日韩欧美国产高清| 成人黄色777网| 午夜精品免费在线| 久久久综合精品| 在线精品视频免费播放| 久久成人综合网| 亚洲欧美视频一区| 日韩视频国产视频| 91小宝寻花一区二区三区| 三级在线观看一区二区 | 亚洲人成亚洲人成在线观看图片| 欧美日韩在线不卡| 国产美女一区二区三区| 亚洲第一福利一区| 欧美激情艳妇裸体舞| 欧美美女激情18p| 成人免费看黄yyy456| 婷婷开心激情综合| 欧美国产成人在线| 91精品国产高清一区二区三区蜜臀| 成人黄色片在线观看| 免费av成人在线| 亚洲自拍另类综合| 欧美精彩视频一区二区三区| 91精品午夜视频| 97久久超碰国产精品| 狠狠色伊人亚洲综合成人| 亚洲电影第三页| 亚洲欧美日韩国产综合在线| 久久精品日韩一区二区三区| 欧美一区二区不卡视频| 在线观看不卡视频| 99综合影院在线| 国产乱码字幕精品高清av| 日韩国产高清影视| 亚洲一区二区三区四区不卡| 亚洲欧洲性图库| 久久久电影一区二区三区| 日韩免费高清av| 91精品黄色片免费大全| 欧美亚洲动漫精品| 色94色欧美sute亚洲13| av中文字幕一区| 成人精品免费视频| 国产精品996| 粉嫩在线一区二区三区视频| 国产乱码精品一区二区三| 成人久久视频在线观看| 国产一区二区成人久久免费影院| 久久99精品久久久久久| 喷水一区二区三区| 美脚の诱脚舐め脚责91| 男女激情视频一区| 伦理电影国产精品| 免费成人结看片| 国产在线一区二区| 国产黄人亚洲片| 丰满岳乱妇一区二区三区| 国产成人av电影在线| 丁香桃色午夜亚洲一区二区三区| 国产成人午夜视频| 国产a久久麻豆| av电影在线观看一区| 一本大道综合伊人精品热热| 欧洲国产伦久久久久久久| 欧美揉bbbbb揉bbbbb| 91麻豆精品久久久久蜜臀| 欧美成人女星排名| 欧美精品一区二区三区在线| 中文字幕精品一区二区三区精品| 国产精品高清亚洲| 一个色在线综合| 日韩福利视频网| 国产麻豆视频精品| 国产精品一线二线三线| 9i看片成人免费高清| 欧美亚洲动漫另类| 精品国产亚洲在线| 国产精品乱码人人做人人爱| 亚洲激情图片一区| 肉丝袜脚交视频一区二区| 精品无人区卡一卡二卡三乱码免费卡 | 91美女在线看| 欧美高清性hdvideosex| 久久久亚洲午夜电影| 亚洲激情网站免费观看| 青青草国产精品97视觉盛宴| 成人免费三级在线| 欧美性生活久久| 国产校园另类小说区| 夜夜精品浪潮av一区二区三区| 美女视频黄频大全不卡视频在线播放| 国产成人午夜视频| 欧美日本视频在线| 日本一区二区成人在线| 午夜在线电影亚洲一区| 国产精品66部| 555www色欧美视频| 中文字幕中文字幕在线一区| 奇米在线7777在线精品| 99久久er热在这里只有精品66| 日韩一区二区三区在线| 国产精品久久久久久久久动漫| 美脚の诱脚舐め脚责91 | 国内久久婷婷综合| 色噜噜夜夜夜综合网| 精品福利在线导航| 亚洲午夜久久久久久久久电影院| 国产99久久久精品| 51精品国自产在线| 亚洲免费在线观看视频| 国产精品性做久久久久久| 欧美日韩成人综合天天影院 | 亚洲国产一二三| 懂色av一区二区三区免费看| 欧美一区二区三区公司| 一区二区三区资源| 99久久精品免费看国产| 久久久久久日产精品| 人禽交欧美网站| 4438x成人网最大色成网站| 亚洲免费观看高清完整版在线| 国产成人av资源| 精品久久久久香蕉网| 日本在线不卡视频| 欧美日韩国产影片| 亚洲一区二区精品久久av| 成人久久久精品乱码一区二区三区| 精品久久久久一区二区国产| 麻豆久久一区二区| 欧美精选午夜久久久乱码6080| 亚洲综合小说图片| 色综合久久天天| 亚洲精品一卡二卡| 色欧美片视频在线观看在线视频|