⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sja1000io.lst

📁 Small RTOS 下SJA1000驱动程序的编写。主要介绍了在实时操作系统Small RTOS下
💻 LST
字号:
C51 COMPILER V7.02b   SJA1000IO                                                            03/06/2003 10:03:47 PAGE 1   


C51 COMPILER V7.02b, COMPILATION OF MODULE SJA1000IO
OBJECT MODULE PLACED IN .\SJA1000IO.obj
COMPILER INVOKED BY: F:\Keilv702\C51\BIN\C51.EXE ..\cansja1000\SJA1000IO.c BROWSE NOINTPROMOTE INCDIR(G:\S_RTOS_TEST\INC
                    -\) DEBUG OBJECTEXTEND PRINT(.\SJA1000IO.lst) OBJECT(.\SJA1000IO.obj)

stmt level    source

   1          /*
   2           *********************************************************************************************************
             -***********
   3           *描述:    独立的CAN 控制器SJA1000与硬件接口管理文件
   4           *文件名:   SJA1000IO.C
   5           *应用语言: KEIL C51
   6           *版本 :    V1.01
   7           *广州周立功单片机发展有限公司 保留所有的版权
   8           *********************************************************************************************************
             -***********
   9           */
  10          #define         _GLOBAL_SJA1000IO_
  11          
  12          /*
  13          **********************************************************************************************************
             -**************
  14          **                           导入头文件
  15          **********************************************************************************************************
             -**************
  16          */
  17          #include        "SJA1000_PELI_APP.H"
  18          
  19          
  20          /*
  21          **********************************************************************************************************
             -**************
  22          **函数原型:     char   WriteSJARegBlock(unsigned char RegAdr,unsigned char  *ValueBuf,
  23          **                                                                         unsigned char len)
  24          **参数说明:     ValueValueBuf   写入寄存器的值的存储器地址
  25          **                              RegAdr                  要写入sja1000的内部寄存器地址
  26          **                              len                             要写入sja1000内部寄存器的长度
  27          **返回值:       SJA_OK                  写入正确
  28          **                              !SJA_OK        写入不正确
  29          **说明:         该函数用于将指定的数值写入sja1000的指定的寄存器
  30          **********************************************************************************************************
             -**************
  31          */
  32          char   WriteSJARegBlock(unsigned char RegAdr,unsigned char  *ValueBuf,
  33                                                                                     unsigned char len)
  34          {
  35   1              unsigned        char    i;
  36   1          if(len != 0){
  37   2                      for(i=0;i<len;i++){
  38   3                      //      WriteRawIO(RegAdr+i,ValueBuf+i);
  39   3                              *(SJA_CS_Point + RegAdr+i) = *(ValueBuf+i);
  40   3                      }
  41   2              }
  42   1              return 0x00;
  43   1      }
  44          
  45          /*
  46          **********************************************************************************************************
             -**************
  47          **函数原型:     char   ReadSJAReg(unsigned char RegAdr,unsigned char  *ValueBuf,
C51 COMPILER V7.02b   SJA1000IO                                                            03/06/2003 10:03:47 PAGE 2   

  48          **                                                                         unsigned char len)
  49          **参数说明:     ValueValueBuf   存储读出寄存器的值的存储器地址
  50          **                              RegAdr                  要读的sja1000的内部寄存器地址
  51          **                              len                             要读出sja1000内部寄存器的长度
  52          **返回值:       SJA_OK                  读出正确
  53          **                              !SJA_OK        读出不正确
  54          **说明:         该函数用于读出sja1000的指定的寄存器
  55          **********************************************************************************************************
             -**************
  56          */
  57          char   ReadSJARegBlock(unsigned char RegAdr,unsigned char  *ValueBuf,
  58                                                                                     unsigned char len)
  59          {
  60   1              unsigned        char    i;
  61   1              if(len != 0){
  62   2                      for(i=0;i<len;i++){
  63   3                              *(ValueBuf+i)=*(SJA_CS_Point + RegAdr+i);
  64   3                      }
  65   2              }
  66   1              return 0x00;
  67   1      }
  68          
  69          /*
  70          **********************************************************************************************************
             -**************
  71          **函数原型:     char   WriteSJAReg(unsigned char RegAdr,unsigned char  Value)
  72          **参数说明:     Value   写入寄存器的值
  73          **                              RegAdr                  要写入sja1000的内部寄存器地址
  74          **返回值:       SJA_OK                  写入正确
  75          **                              !SJA_OK        写入不正确
  76          **说明:         该函数用于将指定的数值写入sja1000的指定的寄存器
  77          **********************************************************************************************************
             -**************
  78          */
  79          char   WriteSJAReg(unsigned char RegAdr,unsigned char  Value)
  80          {
  81   1      
  82   1              *(SJA_CS_Point + RegAdr) = Value;
  83   1              return 0x00;    
  84   1      }
  85          
  86          
  87          
  88          /*
  89          **********************************************************************************************************
             -**************
  90          **函数原型:     unsigned        char   ReadSJAReg(unsigned char RegAdr)
  91          **参数说明:     
  92          **                              RegAdr                  要读的sja1000的内部寄存器地址
  93          **返回值:       reg的值
  94          **说明:         该函数用于读出sja1000的指定的寄存器
  95          **********************************************************************************************************
             -**************
  96          */
  97          unsigned        char   ReadSJAReg(unsigned char RegAdr)
  98          {
  99   1      
 100   1              return(*(SJA_CS_Point + RegAdr));
 101   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
C51 COMPILER V7.02b   SJA1000IO                                                            03/06/2003 10:03:47 PAGE 3   

   CODE SIZE        =    159    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      11
   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 + -