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

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

?? sja1000.lst

?? 介紹關于can總線的實驗程序
?? LST
?? 第 1 頁 / 共 2 頁
字號:
C51 COMPILER V7.06   SJA1000                                                               06/08/2005 22:08:24 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE SJA1000
OBJECT MODULE PLACED IN sja1000.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil20\C51\BIN\C51.EXE sja1000.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          //-----------------------函數聲明,變量定義--------------------------------------------------------
   2          #include <reg52.h>
   3          sbit  int0 = P3^2;
   4          //-----------------------定義尋址的基址--------------------------------------------------------
   5          #define base_Adr 0x00   
   6          //-----------------------定義總線定時寄存器的值--------------------------------------------------------
   7          #define SJA_BTR0 0x00                                  //該值需要用戶根據實際需要的波特率進行計算
   8          #define SJA_BTR1 0x16                                  //具體計算見文章說明
   9          //-----------------------設置接收報文類型(標示符)-------------------------------------------------------
             --
  10                                                                //該值需要用戶根據實際需要重新配置
  11          #define SJA_ACR 0x00                                  //驗收代碼寄存器的值
  12          #define SJA_AMR 0x16                                  //驗收屏蔽寄存器的值
  13          //-----------------------設置輸出始終類型--------------------------------------------------------
  14                                                                //該值需要用戶根據實際需要重新配置
  15          #define SJA_OCR 0x00                                  //輸出控制寄存器的值
  16          #define SJA_CDR 0x16                                  //始終分頻寄存器的值
  17          //-----------------------設置SJA中斷,1為開中斷--------------------------------------------------------
  18          #define SJA_OIE 0                                    //溢出中斷
  19          #define SJA_EIE 0                                    //錯誤中斷
  20          #define SJA_TIE 0                                    //發送中斷
  21          #define SJA_RIE 0                                    //接收中斷
  22          //-----------------------定義地址指針,指向基址--------------------------------------------------------
  23          unsigned char xdata *SJA_base_Adr = base_Adr;
  24          //-----------------------定義硬件故障標志位--------------------------------------------------------
  25          bit bdata    connect_OK=0;                            //connect_OK=1設備連接正常
  26                                                                //connect_OK=0設備連接故障
  27          //-----------------------定義硬件故障標志位--------------------------------------------------------
  28          bit bdata    SJA_workmode=1;                          //SJA_workmode=1SJA工作在工作模式
  29                                                                //SJA_workmode=0工作在復位模式
  30          //-----------------------定義SJA1000讀寫緩沖區的數據結構--------------------------------------------------
             -------
  31          struct BASICCAN_BUFstruct{
  32                         unsigned char FrameID_H;
  33                         unsigned char FrameLENTH ;
  34                                     unsigned char FrameKIND  ;
  35                                     unsigned char FrameID_L3 ;
  36                                     unsigned char Frame_Data[8];
  37                                     }BASICCAN_FRAME,receive_BUF,send_BUF;
  38          //BASICCAN_BUFstruct send_BUF;
  39          //------------------------------------------------------------------------------------------------------
  40          // 函數類別 SJA1000基本操作
  41          // 函數名稱 CANREG_write
  42          // 入口函數 SJAREG_ADR,setting
  43          // 出口函數 無
  44          // 函數功能 寫SJA1000的寄存器
  45          //------------------------------------------------------------------------------------------------------
  46          void CANREG_write(unsigned char SJAREG_ADR, unsigned char setting)
  47                     {
  48   1                          *(SJA_base_Adr+SJAREG_ADR)=setting;
  49   1                  }
  50          //------------------------------------------------------------------------------------------------------
  51          // 函數類別 SJA1000基本操作
  52          // 函數名稱 CANREG_write
  53          // 入口函數 SJAREG_ADR
C51 COMPILER V7.06   SJA1000                                                               06/08/2005 22:08:24 PAGE 2   

  54          // 出口函數 SJAREG_data
  55          // 函數功能 讀SJA1000的寄存器
  56          //------------------------------------------------------------------------------------------------------
  57          unsigned char CANREG_read(unsigned char SJAREG_ADR)
  58          {
  59   1      unsigned char SJAREG_data;
  60   1      SJAREG_data=*(SJA_base_Adr+SJAREG_ADR);
  61   1      return(SJAREG_data);
  62   1      }
  63          //------------------------------------------------------------------------------------------------------
  64          // 函數類別   SJA1000基本操作
  65          // 函數名稱   SJAconnect_judge
  66          // 入口函數   無
  67          // 出口函數   無
  68          // 全局變量   connect_OK
  69          // 操作寄存器 測試寄存器(地址09)
  70          // 函數功能   判斷SJA1000與控制器連接是否正常
  71          //------------------------------------------------------------------------------------------------------
  72          void SJAconnect_judge(void)
  73          {
  74   1         CANREG_write(0x09,0xAA);                //寫AA到測試寄存器(地址09)
  75   1         if(CANREG_read(0x09)==0xAA)
  76   1          {
  77   2           connect_OK=1;                         //連接正常 
  78   2           }
  79   1              else 
  80   1              {
  81   2              connect_OK=0;                         //連接故障
  82   2              }  
  83   1      }
  84          
  85          //------------------------------------------------------------------------------------------------------
  86          // 函數類別   SJA1000基本操作
  87          // 函數名稱   setting_SJA_resetmode
  88          // 入口函數   無
  89          // 出口函數   無
  90          // 全局變量   SJA_workmode
  91          // 操作寄存器 控制寄存器(地址00)
  92          // 函數功能   設置SJA工作在復位模式
  93          //------------------------------------------------------------------------------------------------------
  94          void setting_SJA_resetmode(void)
  95          {
  96   1      unsigned char CONTROL_REGdata;  
  97   1      CONTROL_REGdata=CANREG_read(0x00);
  98   1      CONTROL_REGdata=CONTROL_REGdata|0x01;
  99   1           CANREG_write(0x00,CONTROL_REGdata);
 100   1           if((CANREG_read(0x00)&0x01)==1) 
 101   1                  {
 102   2               SJA_workmode=0;                        //置復位模式成功
 103   2                      }
 104   1               else 
 105   1                 {
 106   2              SJA_workmode=1;                         //置復位模式失敗
 107   2                  }  
 108   1      }
 109          
 110          //------------------------------------------------------------------------------------------------------
 111          // 函數類別   SJA1000基本操作
 112          // 函數名稱   setting_SJA_resetmode
 113          // 入口函數   無
 114          // 出口函數   無
 115          // 全局變量   SJA_workmode
C51 COMPILER V7.06   SJA1000                                                               06/08/2005 22:08:24 PAGE 3   

 116          // 操作寄存器 控制寄存器(地址00)
 117          // 函數功能   設置SJA工作在正常工作模式
 118          //------------------------------------------------------------------------------------------------------
 119          void setting_SJA_workingmode(void)
 120          {
 121   1      unsigned char CONTROL_REGdata;  
 122   1      CONTROL_REGdata=CANREG_read(0x00);
 123   1      CONTROL_REGdata=CONTROL_REGdata&0xFE;
 124   1           CANREG_write(0x00,CONTROL_REGdata);
 125   1           if((CANREG_read(0x00)&0x01)==0) 
 126   1                  {
 127   2               SJA_workmode=1;                        //置工作模式成功
 128   2                      }
 129   1               else 
 130   1                 {
 131   2              SJA_workmode=0;                         //置工作模式失敗
 132   2                  }  
 133   1      }
 134          //------------------------------------------------------------------------------------------------------
 135          // 函數類別   SJA1000基本操作
 136          // 函數名稱   setting_SJA_rate
 137          // 入口函數   SJA_BTR0,SJA_BTR1
 138          // 出口函數   setting_success
 139          // 操作寄存器 總線定時寄存器BTR1(地址07)和BTR0(地址06)
 140          // 函數功能   設置SJA波特率
 141          // 特殊要求   只能在復位工作模式下設置
 142          //------------------------------------------------------------------------------------------------------
 143          bit setting_SJA_rate(void)
 144          {
 145   1      bit setting_success;  
 146   1      while(SJA_workmode)
 147   1            {
 148   2                setting_SJA_resetmode();                   //設置SJA工作在復位模式
 149   2                }
 150   1           CANREG_write(0x06,SJA_BTR0);
 151   1               CANREG_write(0x07,SJA_BTR1);
 152   1           if((CANREG_read(0x06)==SJA_BTR0)&(CANREG_read(0x07)==SJA_BTR1))
 153   1                  {
 154   2               setting_success=1;                        //波特率設置成功
 155   2                      }
 156   1               else 
 157   1                 {
 158   2              setting_success=0;                         //波特率設置失敗
 159   2                  }  
 160   1      return(setting_success);
 161   1      }
 162          
 163          //------------------------------------------------------------------------------------------------------
 164          // 函數類別   SJA1000基本操作
 165          // 函數名稱   setting_SJA_dataselect
 166          // 入口函數   SJA_ACR,SJA_AMR
 167          // 出口函數   setting_success
 168          // 操作寄存器 驗收代碼寄存器ACR(地址04)和驗收屏蔽寄存器AMR(地址05)
 169          // 函數功能   設置SJA接收數據類型
 170          // 特殊要求   只能在復位工作模式下設置
 171          //------------------------------------------------------------------------------------------------------
 172          bit setting_SJA_dataselect(void)
 173          {
 174   1      bit setting_success;  
 175   1      while(SJA_workmode)
 176   1            {
 177   2                setting_SJA_resetmode();                   //設置SJA工作在復位模式
C51 COMPILER V7.06   SJA1000                                                               06/08/2005 22:08:24 PAGE 4   

 178   2                }
 179   1           CANREG_write(0x04,SJA_ACR);
 180   1               CANREG_write(0x05,SJA_AMR);
 181   1           if((CANREG_read(0x04)==SJA_ACR)&(CANREG_read(0x05)==SJA_AMR))
 182   1                  {
 183   2               setting_success=1;                        //濾波器設置成功
 184   2                      }
 185   1               else 
 186   1                 {
 187   2              setting_success=0;                         //濾波器設置失敗
 188   2                  }  
 189   1      return(setting_success);
 190   1      }
 191          
 192          //------------------------------------------------------------------------------------------------------
 193          // 函數類別   SJA1000基本操作
 194          // 函數名稱   setting_SJA_CLK
 195          // 入口函數   SJA_OCR,SJA_CDR
 196          // 出口函數   setting_success
 197          // 操作寄存器 輸出控制寄存器OCR(地址08)和時鐘分頻寄存器CDR(地址31)
 198          // 函數功能   設置SJA輸出始終類型
 199          // 特殊要求   只能在復位工作模式下設置
 200          //------------------------------------------------------------------------------------------------------
 201          bit setting_SJA_CLK(void)
 202          {
 203   1      bit setting_success;  
 204   1      while(SJA_workmode)
 205   1            {
 206   2                setting_SJA_resetmode();                   //設置SJA工作在復位模式
 207   2                }
 208   1           CANREG_write(0x08,SJA_OCR);
 209   1               CANREG_write(31,SJA_CDR);
 210   1           if((CANREG_read(0x08)==SJA_OCR)&(CANREG_read(31)==SJA_CDR))
 211   1                  {
 212   2               setting_success=1;                        //濾波器設置成功
 213   2                      }
 214   1               else 
 215   1                 {
 216   2              setting_success=0;                         //濾波器設置失敗
 217   2                  }  

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美一二三四区| 天堂va蜜桃一区二区三区漫画版| 亚洲一区二区三区四区五区黄 | 国产乱对白刺激视频不卡| av不卡在线观看| 精品久久久久av影院| 亚洲在线观看免费| 99久久精品久久久久久清纯| 日韩一级免费一区| 天天免费综合色| 色哟哟一区二区在线观看| 2021中文字幕一区亚洲| 日韩高清不卡一区二区三区| 91网站视频在线观看| 欧美国产综合色视频| 久久er精品视频| 欧美成人猛片aaaaaaa| 奇米四色…亚洲| 欧美一级久久久久久久大片| 亚洲国产视频在线| 欧美午夜电影网| 一区二区在线观看不卡| jvid福利写真一区二区三区| 国产欧美1区2区3区| 国产一区二区三区免费看| 精品欧美一区二区在线观看| 美女www一区二区| 欧美一区二区三区公司| 视频一区二区三区中文字幕| 欧美三级日韩在线| 五月婷婷另类国产| 日韩一区二区免费电影| 美腿丝袜在线亚洲一区| 日韩一区二区三区在线| 日韩高清欧美激情| 精品欧美一区二区三区精品久久 | 91亚洲精品久久久蜜桃网站| 午夜精品在线视频一区| 欧美日韩一级视频| 日本aⅴ免费视频一区二区三区 | 欧美日韩一区成人| 视频一区在线视频| 精品国产免费一区二区三区四区| 久久精品国产一区二区三| 亚洲精品一区二区三区蜜桃下载| 国产一区二区日韩精品| 国产精品精品国产色婷婷| 91免费版在线看| 亚洲午夜av在线| 日韩欧美一区二区久久婷婷| 国产乱码精品一区二区三区av | 色综合天天性综合| 夜夜精品视频一区二区| 5566中文字幕一区二区电影| 九九精品视频在线看| 国产日韩欧美综合一区| 99国产精品久久久久久久久久久| 亚洲一区二区av在线| 日韩一级精品视频在线观看| 国产激情一区二区三区| 有码一区二区三区| 精品国产免费人成在线观看| 成人av电影在线| 五月天视频一区| 国产精品色在线观看| 欧美精品123区| 成人性色生活片| 亚洲国产精品精华液网站| 久久只精品国产| 欧美午夜一区二区| 国产精品123区| 午夜精品在线看| 日韩一区有码在线| 精品国产一区二区精华| 日本精品视频一区二区三区| 精品一区二区三区香蕉蜜桃| 亚洲精品免费在线播放| 久久精品一区二区三区av| 欧美日韩一区二区欧美激情| 国产精品综合av一区二区国产馆| 亚洲一区二区欧美激情| 国产精品久久久久久久久免费樱桃| 欧美日韩国产123区| 成人精品亚洲人成在线| 久久精品999| 亚洲成人av福利| 亚洲精选一二三| 久久精品亚洲乱码伦伦中文| 91精品国产一区二区三区| 一本大道久久a久久精二百| 欧美一级片在线看| 91日韩精品一区| 国产成人啪午夜精品网站男同| 午夜久久久久久久久| 亚洲老妇xxxxxx| 亚洲区小说区图片区qvod| 日本一区二区视频在线观看| 日韩一区二区视频| 欧美一级免费大片| 在线播放/欧美激情| 欧美午夜精品一区| 欧美综合久久久| 在线中文字幕一区二区| 成人的网站免费观看| 成人午夜视频福利| 国产传媒一区在线| 国产激情偷乱视频一区二区三区| 精品亚洲porn| 精品综合免费视频观看| 麻豆免费精品视频| 久久91精品国产91久久小草| 美女www一区二区| 久久精品99国产精品日本| 蜜臀国产一区二区三区在线播放| 午夜av一区二区| 日本大胆欧美人术艺术动态| 日韩成人免费电影| 美女网站色91| 免费成人美女在线观看.| 精品在线免费观看| 国产尤物一区二区在线| 麻豆精品国产传媒mv男同| 日韩av电影天堂| 国产美女久久久久| 成人免费视频视频| aa级大片欧美| 精品一区二区三区在线观看国产| 国产一区二区视频在线| 国产精品99久久久久久久女警 | 韩国一区二区在线观看| 久久99国产乱子伦精品免费| 国产成人高清视频| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 国产欧美精品一区| 日韩一区在线播放| 午夜精品免费在线观看| 激情文学综合丁香| 成人av电影免费观看| 欧美中文字幕亚洲一区二区va在线| 91精品久久久久久久91蜜桃| 日韩欧美视频一区| 国产精品国产成人国产三级| 一区二区三区四区亚洲| 蜜臀av一区二区| 成人精品视频一区二区三区| 91成人免费电影| 久久综合给合久久狠狠狠97色69| 日韩美女精品在线| 蜜臀av亚洲一区中文字幕| 国产一区二区导航在线播放| 色综合网站在线| 91精品国产免费| 国产精品久久久久aaaa樱花| 天堂一区二区在线| 成人国产精品免费观看| 欧美日韩精品欧美日韩精品一| 久久精品一区二区三区不卡牛牛| 亚洲精品乱码久久久久| 狠狠色狠狠色综合日日91app| 99精品国产热久久91蜜凸| 91精品国产麻豆| 亚洲天堂精品在线观看| 黄色精品一二区| 欧美少妇bbb| 国产精品国产三级国产普通话99| 视频一区视频二区中文| 91女人视频在线观看| 精品国产乱码久久久久久图片 | 国产精品狼人久久影院观看方式| 婷婷开心久久网| 不卡的av在线播放| 26uuu国产电影一区二区| 亚洲国产视频在线| 99久久精品国产观看| 久久一夜天堂av一区二区三区| 亚洲制服丝袜一区| 92国产精品观看| 国产日产精品一区| 久88久久88久久久| 欧美精品xxxxbbbb| 亚洲自拍偷拍综合| 色呦呦网站一区| 亚洲人成人一区二区在线观看| 国产在线精品免费| 日韩欧美国产精品| 日韩福利电影在线| 欧美嫩在线观看| 一区av在线播放| 色综合天天综合狠狠| 亚洲色图色小说| 91久久国产综合久久| 亚洲人吸女人奶水| 成人免费看视频| 欧美激情在线观看视频免费| 精品一区二区免费在线观看| 欧美一级在线观看| 久久精品国产免费看久久精品| 日韩一区二区三区视频| 日本亚洲一区二区| 欧美一级欧美三级在线观看 |