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

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

?? anglesensor.lst

?? 一個通過方向判別芯片進行角度計算的程序
?? LST
字號:
C51 COMPILER V8.05a   ANGLESENSOR                                                          02/04/2007 13:32:01 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE ANGLESENSOR
OBJECT MODULE PLACED IN AngleSensor.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE AngleSensor.C ROM(SMALL) DEBUG OBJECTEXTEND

line level    source

   1          
   2          /********************************************************************************************************
   3          **
   4          **                                                             AngleSensor
   5          **
   6          **                                                V2.0
   7          **
   8          **--------------文件信息--------------------------------------------------------------------------------
   9          **文   件   名: AngleSensor.c
  10          **創   建   人: 呂江波
  11          **最后修改日期: 2006年12月25日
  12          **描        述: 角度傳感器源代碼。
  13          **
  14          **--------------歷史版本信息----------------------------------------------------------------------------
  15          ** 創建人: 呂江波
  16          ** 版  本: V1.0
  17          ** 日 期: 2006年11月2日
  18          ** 描 述: 配套助推機芯(I/O中斷控制)
  19          **
  20          **------------------------------------------------------------------------------------------------------
  21          ** 創建人: 呂江波
  22          ** 版  本: V2.0
  23          ** 日 期: 2006年12月22日
  24          ** 描 述: 配套電動機芯(I/O中斷控制)
  25          **
  26          **------------------------------------------------------------------------------------------------------
  27          ********************************************************************************************************/
  28          
  29          #include "config.h"
  30          
  31          #include <STC12C2052AD.H>
  32          #include <INTRINS.H>
  33          
  34          /********** Port define ***********/
  35          
  36                  #define DIR     P3_7
  37          
  38                  #define NUM2    P1_7    
  39                  #define NUM1    P1_6
  40                  #define NUM0    P1_5
  41                  #define IRQ     P1_4    
  42          
  43                  #define LEFT    0x55
  44                  #define RIGHT   0xaa
  45                  #define RESET   0x5a
  46                  
  47                  #define STATE1  2
  48                  #define STATE2  3
  49                  #define STATE3  10
  50          
  51                  #define OTHER   4
  52                  #define ZERO    0
  53                  #define ERROR1  2
  54                  #define ERROR2  3
  55                  #define WARN1   254
C51 COMPILER V8.05a   ANGLESENSOR                                                          02/04/2007 13:32:01 PAGE 2   

  56                  #define WARN2   253
  57          
  58          /********** Common variable **********/
  59          
  60                  uint8 OS_Q_MEM_SEL angleSet [ 32 ] ;
  61                  uint8 OS_Q_MEM_SEL angleOut [ 32 ] ; 
  62          
  63          /*************************************/
  64          
  65          void AppInit ( void ) ;
  66          
  67          void AngleSet_task ( void ) ;
  68          void AngleOut_task ( void ) ;
  69          
  70          void main(void)
  71          {
  72   1          OSInit() ;
  73   1      
  74   1              OSQCreate ( angleSet , 32 ) ;
  75   1              OSQCreate ( angleOut , 32 ) ;   
  76   1      
  77   1          OSTaskCreate ( AngleSet_task , NULL , 0 ) ;
  78   1              OSTaskCreate ( AngleOut_task , NULL     , 1 ) ;
  79   1      
  80   1              AppInit () ;
  81   1      
  82   1          while(1)
  83   1              {
  84   2                      WDT_CONTR |= 0x10 ;
  85   2              }
  86   1      }
  87          
  88          //ID : 0
  89          
  90          void AngleSet_task( void ) 
  91          {
  92   1              static uint8 angleValue = 0 ;
  93   1              uint8 setData ;
  94   1      
  95   1              while (1)
  96   1          {
  97   2                      OSQPend ( &setData , angleSet , 0 ) ;
  98   2      
  99   2                      switch ( setData )
 100   2                      {
 101   3                              case LEFT :
 102   3      
 103   3                                      angleValue++ ;
 104   3                                      break ;
 105   3      
 106   3                              case RIGHT :
 107   3      
 108   3                                      angleValue-- ;
 109   3                                      break ;
 110   3                              
 111   3                              case RESET :
 112   3      
 113   3                                      angleValue = 0 ;
 114   3                                      OSQPost ( angleOut , ZERO ) ;
 115   3                                      break ;
 116   3      
 117   3                              default :
C51 COMPILER V8.05a   ANGLESENSOR                                                          02/04/2007 13:32:01 PAGE 3   

 118   3                                      
 119   3                                      continue ;
 120   3                                      break ;
 121   3                      }
 122   2                      
 123   2                      switch ( angleValue )
 124   2                      {
 125   3      /*
 126   3                              case ZERO        :
 127   3      
 128   3                                      OSQPost ( angleOut , ZERO ) ;
 129   3                                      break ;
 130   3      */
 131   3                              case STATE1 :
 132   3      
 133   3                                      OSQPost ( angleOut , STATE1 ) ;
 134   3                                      break ;
 135   3                              
 136   3                              case STATE2 :
 137   3      
 138   3                                      OSQPost ( angleOut , STATE2 ) ;
 139   3                                      break ;
 140   3                              
 141   3                              case STATE3 :
 142   3      
 143   3                                      OSQPost ( angleOut , STATE3 ) ;
 144   3                                      break ;
 145   3      
 146   3                              case WARN1 :
 147   3      
 148   3                                      OSQPost ( angleOut , WARN1 ) ;
 149   3                                      break ;
 150   3      
 151   3                              case WARN2 :
 152   3      
 153   3                                      OSQPost ( angleOut , WARN2 ) ;
 154   3                                      break ;
 155   3      
 156   3                              case OTHER :
 157   3      
 158   3                                      OSQPost ( angleOut , OTHER ) ;
 159   3                                      break ;
 160   3      
 161   3                              default :
 162   3                                      break ;
 163   3                      }                                       
 164   2          }
 165   1              
 166   1              return ; 
 167   1      }
 168          
 169          //ID : 1
 170          
 171          void AngleOut_task ( void )
 172          {
 173   1              uint8 outData ;
 174   1      
 175   1              while ( 1 )
 176   1              {
 177   2                      OSQPend ( &outData , angleOut , 0 ) ;
 178   2                      
 179   2                      switch ( outData )
C51 COMPILER V8.05a   ANGLESENSOR                                                          02/04/2007 13:32:01 PAGE 4   

 180   2                      {
 181   3                              case ZERO :
 182   3      
 183   3                                      NUM2 = 0 ; NUM1 = 0 ; NUM0 = 0 ;
 184   3                                      break ;
 185   3      
 186   3                              case STATE1 :
 187   3              
 188   3                                      NUM2 = 0 ; NUM1 = 0 ; NUM0 = 1 ;
 189   3                                      break ;
 190   3                              
 191   3                              case STATE2 :
 192   3      
 193   3                                      NUM2 = 0 ; NUM1 = 1 ; NUM0 = 0 ;
 194   3                                      break ;
 195   3      
 196   3                              case WARN1 :
 197   3      
 198   3                                      NUM2 = 0 ; NUM1 = 1 ; NUM0 = 1 ;
 199   3                                      break ;
 200   3      
 201   3                              case WARN2 :
 202   3      
 203   3                                      NUM2 = 1 ; NUM1 = 0 ; NUM0 = 0 ;
 204   3                                      break ;
 205   3      
 206   3                              case OTHER :
 207   3      
 208   3                                      NUM2 = 1 ; NUM1 = 0 ; NUM0 = 1 ;
 209   3                                      break ;
 210   3      
 211   3                              case STATE3 :
 212   3      
 213   3                                      NUM2 = 1 ; NUM1 = 1 ; NUM0 = 0 ;
 214   3                                      break ;
 215   3      
 216   3                              default :
 217   3                                      
 218   3                                      continue ;
 219   3                                      break ;
 220   3                      }
 221   2      
 222   2                      _nop_() ; _nop_() ; _nop_() ; _nop_() ; _nop_() ; _nop_() ;
 223   2                      IRQ = 0 ;               
 224   2                      _nop_() ; _nop_() ; _nop_() ; _nop_() ; _nop_() ; _nop_() ;
 225   2                      IRQ = 1 ;
 226   2              }
 227   1      
 228   1              return ;
 229   1      }                       
 230          
 231          /******** System initialize *********/
 232          
 233          void AppInit ( void )
 234          {
 235   1      /* ========== IO define =========== */
 236   1      
 237   1              P3M1 = 0x42 ; P3M0 = 0xBD ;
 238   1              P1M1 = 0xff ; P1M0 = 0x00 ;
 239   1      
 240   1              IRQ = 1 ;
 241   1              NUM2 = 0 ; NUM1 = 0 ; NUM0 = 0 ;
C51 COMPILER V8.05a   ANGLESENSOR                                                          02/04/2007 13:32:01 PAGE 5   

 242   1      
 243   1      /* ========== WDT define ========== */
 244   1      
 245   1              AUXR = 0x00 ;
 246   1      
 247   1      /* ========== SIO define ========== */
 248   1      
 249   1              SCON = 0x50 ;
 250   1              ES = 0 ;
 251   1      
 252   1      /* ========== INT define ========== */
 253   1      
 254   1              IT0 = 1 ; 
 255   1              EX0 = 1 ;
 256   1      
 257   1              IT1 = 1 ;
 258   1              EX1 = 1 ;
 259   1      
 260   1      /* ========= TIMER define ========= */
 261   1      
 262   1              TMOD = 0x21 ;
 263   1      
 264   1              TH1 = 0xfa ; TL1 = 0xfa ;
 265   1              TR1 = 1 ;
 266   1              ET1 = 0 ;
 267   1      
 268   1              TH0 = 0x70 ; TL0 = 0x00 ; 
 269   1              TR0 = 1;
 270   1              ET0 = 1;
 271   1      
 272   1      /* ======== GLOBAL define ========= */
 273   1              
 274   1              IPH = 0x05 ; IP = 0x03 ;
 275   1              EA = 1 ;
 276   1      
 277   1      /* ========== WDT define ========== */
 278   1      
 279   1              WDT_CONTR = 0x25 ;
 280   1              
 281   1              return ;
 282   1      }       
 283          
 284          /******** Interrupt server *********/
 285          
 286          #pragma disable
 287          void AngleChange ( void ) interrupt IE0_VECTOR
 288          {
 289   1          OS_INT_ENTER() ;
 290   1      
 291   1              //ISR
 292   1              
 293   1              if ( DIR == 1 ) 
 294   1                      OSQIntPost ( angleSet , LEFT ) ;
 295   1              else if ( DIR == 0 )
 296   1                      OSQIntPost ( angleSet , RIGHT ) ;
 297   1      
 298   1              OSIntExit() ;   
 299   1      
 300   1              return ;
 301   1      }
 302          
 303          #pragma disable
C51 COMPILER V8.05a   ANGLESENSOR                                                          02/04/2007 13:32:01 PAGE 6   

 304          void AngleReset ( void ) interrupt IE1_VECTOR
 305          {
 306   1          OS_INT_ENTER() ;
 307   1      
 308   1              //ISR
 309   1      
 310   1              OSQIntPost ( angleSet , RESET ) ;
 311   1      //      angleValue = 0 ;
 312   1      //      OSQIntPost ( angleOut , ZERO ) ;
 313   1      
 314   1              OSIntExit() ;   
 315   1      
 316   1              return ;
 317   1      }
 318          /*
 319          #pragma disable
 320          void ErrorISR_SIO ( void ) interrupt SIO_VECTOR
 321          {
 322                  _nop_() ;
 323                  _nop_() ;
 324                  
 325                  ES = 0 ;        
 326          
 327                  return ;
 328          }
 329          */
 330          /*
 331          #pragma disable
 332          void ErrorISR_T1 ( void ) interrupt TF1_VECTOR
 333          {
 334                  _nop_() ;
 335                  _nop_() ;
 336          
 337                  ET1 = 0 ;
 338          
 339                  return ;
 340          }
 341          */
 342          /********* Timer 0 reset **********/
 343          
 344          void UserTickTimer ( void ) 
 345          {
 346   1              TH0 = 0x70 ; TL0 = 0x00;        
 347   1      
 348   1              return ;
 349   1      }       
 350          
 351          /**************************************************************************************
 352                                                                                  End Of File
 353          **************************************************************************************/


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    481    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1       2
   IDATA SIZE       =     64    ----
   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一区二区三区免费野_久草精品视频
在线视频中文字幕一区二区| 国产成人免费av在线| 欧美视频完全免费看| 亚洲午夜久久久久中文字幕久| 国产夫妻精品视频| 欧美国产丝袜视频| 91丨九色丨尤物| 丝袜美腿成人在线| 日韩精品一区国产麻豆| 黄色小说综合网站| 国产精品初高中害羞小美女文| 99综合影院在线| 天天av天天翘天天综合网| 日韩精品专区在线影院重磅| 国产乱人伦偷精品视频免下载| 国产精品国产a级| 欧美日韩一区二区三区高清| 久久狠狠亚洲综合| 日韩理论在线观看| 91麻豆精品国产91| 国产成a人亚洲精| 亚洲成人在线免费| 精品国产欧美一区二区| 91香蕉国产在线观看软件| 蜜桃av一区二区在线观看| 国产欧美一区二区精品性色超碰 | 亚洲男人的天堂网| 这里只有精品免费| 成人午夜私人影院| 日韩国产欧美在线播放| 国产精品系列在线| 制服丝袜亚洲网站| 99re热视频精品| 美腿丝袜亚洲一区| 一区二区三区中文字幕电影| 久久免费美女视频| 91精品国产全国免费观看| jiyouzz国产精品久久| 精品亚洲成a人| 亚洲午夜影视影院在线观看| 国产拍欧美日韩视频二区| 91精品欧美久久久久久动漫| 成人一区在线看| 久久福利资源站| 亚洲电影第三页| 亚洲欧美日本在线| 国产丝袜欧美中文另类| 日韩手机在线导航| 欧美日韩国产成人在线免费| 99久久99久久久精品齐齐| 国产精品一区二区免费不卡| 日本亚洲欧美天堂免费| 一区二区国产视频| 国产精品二三区| 欧美激情一区二区三区蜜桃视频| 91精品国产综合久久精品性色 | 色老汉一区二区三区| 国产高清在线观看免费不卡| 麻豆精品一区二区av白丝在线| 一区二区三区在线观看动漫| 国产欧美精品一区aⅴ影院| 日韩欧美中文一区二区| 欧美色视频一区| 日本福利一区二区| 色综合久久久久久久| 99精品一区二区三区| 成人免费视频视频在线观看免费| 国产一区二区精品久久| 久久精品国产一区二区三区免费看 | 日韩欧美国产一区在线观看| 欧美日韩免费视频| 欧美在线看片a免费观看| 91日韩精品一区| 97se亚洲国产综合自在线| 99久久精品免费观看| www.欧美日韩国产在线| 91香蕉视频mp4| 欧美在线你懂的| 欧美放荡的少妇| 欧美一卡二卡三卡| 精品国产91洋老外米糕| 2022国产精品视频| 国产偷国产偷精品高清尤物 | 91麻豆精品国产91久久久| 欧美精品丝袜中出| 91精品在线观看入口| 精品国产乱码久久久久久图片 | 国产精品久久久久婷婷| 国产精品全国免费观看高清| 国产精品久久久久久久久免费樱桃 | 91麻豆精品国产91久久久久久久久 | 免费一级片91| 国产精品99久久不卡二区| 成人一道本在线| 欧美丝袜自拍制服另类| 欧美大片一区二区| 久久久不卡影院| 亚洲欧洲制服丝袜| 亚洲一区二区美女| 六月婷婷色综合| 91小宝寻花一区二区三区| 欧美日韩国产片| xf在线a精品一区二区视频网站| 久久久国产综合精品女国产盗摄| 亚洲欧美在线视频| 三级久久三级久久| 从欧美一区二区三区| 欧美日韩在线播放| 久久久精品免费免费| 一区二区三区四区视频精品免费| 奇米影视一区二区三区小说| 国产白丝精品91爽爽久久| 在线观看视频一区| 日韩三级视频中文字幕| 亚洲视频图片小说| 精品一区二区在线看| 色中色一区二区| 精品国产污网站| 亚洲一本大道在线| 国产不卡在线一区| 日韩三级av在线播放| 国产精品久久免费看| 蜜臀久久久久久久| 色婷婷久久久久swag精品| 精品1区2区在线观看| 亚洲二区在线观看| 国产老女人精品毛片久久| 欧美中文字幕一二三区视频| 久久久99免费| 日本亚洲三级在线| 在线观看国产精品网站| 中文乱码免费一区二区| 另类的小说在线视频另类成人小视频在线| 91在线观看污| 国产欧美日韩不卡免费| 美女国产一区二区三区| 91福利资源站| 亚洲图片你懂的| 国产精品资源网| 欧美大片日本大片免费观看| 亚洲一二三四久久| 成人动漫在线一区| 久久免费午夜影院| 久国产精品韩国三级视频| 欧美伦理视频网站| 亚洲图片有声小说| 色综合天天在线| 亚洲日本在线天堂| 99视频有精品| 国产精品免费人成网站| 国产电影一区二区三区| 26uuu精品一区二区三区四区在线| 日韩黄色小视频| 欧美一级夜夜爽| 日本伊人色综合网| 日韩欧美亚洲国产另类| 视频在线观看一区二区三区| 欧美三级蜜桃2在线观看| 亚洲在线视频网站| 欧美亚洲动漫精品| 一区二区三区精品在线观看| 色综合久久久久网| 一区二区三区色| 欧美天天综合网| 五月天中文字幕一区二区| 欧美日韩综合不卡| 日日嗨av一区二区三区四区| 7777精品伊人久久久大香线蕉完整版 | 国产区在线观看成人精品| 精品一区二区三区蜜桃| 精品久久久久久综合日本欧美 | 国产精品福利一区二区| 99久久99久久精品国产片果冻| 亚洲欧美综合另类在线卡通| 色噜噜狠狠成人网p站| 亚洲图片欧美一区| 91麻豆精品国产91久久久久久 | 国产精品一区二区在线看| 国产三级欧美三级| 成人视屏免费看| 亚洲欧美日韩国产成人精品影院| 在线精品视频一区二区| 午夜精品久久久久| 精品电影一区二区三区| 成人理论电影网| 亚洲一级片在线观看| 欧美一级片免费看| 国产成人免费视频网站| 亚洲天堂精品在线观看| 69堂精品视频| 国产精品一区二区视频| 亚洲免费在线观看视频| 7777精品伊人久久久大香线蕉超级流畅 | 亚洲亚洲精品在线观看| 日韩精品中文字幕在线一区| 国产成人精品在线看| 一区二区三区免费看视频| 日韩三级在线观看| 91片黄在线观看| 久久精品免费看|