📄 io.lst
字号:
C51 COMPILER V3.96, SN-83203013 IO 05/29/07 12:36:48 PAGE 1
DOS C51 COMPILER V3.96, COMPILATION OF MODULE IO
OBJECT MODULE PLACED IN D:\CC\IO.OBJ
COMPILER INVOKED BY: C:\LIUBO\51\BIN\C51.EXE D:\CC\IO.C DB SB OE
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 "PELI.H"
*** WARNING 317 IN LINE 87 OF OS.H: macro 'ByteRate_20k': invalid redefinition
*** WARNING 317 IN LINE 88 OF OS.H: macro 'ByteRate_40k': invalid redefinition
*** WARNING 317 IN LINE 89 OF OS.H: macro 'ByteRate_50k': invalid redefinition
*** WARNING 317 IN LINE 90 OF OS.H: macro 'ByteRate_80k': invalid redefinition
*** WARNING 317 IN LINE 91 OF OS.H: macro 'ByteRate_100k': invalid redefinition
*** WARNING 317 IN LINE 92 OF OS.H: macro 'ByteRate_125k': invalid redefinition
*** WARNING 317 IN LINE 93 OF OS.H: macro 'ByteRate_200k': invalid redefinition
*** WARNING 317 IN LINE 94 OF OS.H: macro 'ByteRate_250k': invalid redefinition
*** WARNING 317 IN LINE 95 OF OS.H: macro 'ByteRate_400k': invalid redefinition
*** WARNING 317 IN LINE 96 OF OS.H: macro 'ByteRate_500k': invalid redefinition
*** WARNING 317 IN LINE 97 OF OS.H: macro 'ByteRate_666k': invalid redefinition
*** WARNING 317 IN LINE 98 OF OS.H: macro 'ByteRate_800k': invalid redefinition
*** WARNING 317 IN LINE 99 OF OS.H: macro 'ByteRate_1000k': invalid redefinition
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, unsigned char len)
33
34 {
35 1 unsigned char i;
36 1 if(len != 0){
C51 COMPILER V3.96, SN-83203013 IO 05/29/07 12:36:48 PAGE 2
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,
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 unsigned char k;
82 1 k = ReadSJAReg(RegAdr);
83 1 *(SJA_CS_Point + RegAdr) = Value;
84 1 k = ReadSJAReg(RegAdr);
85 1 return 0x00;
86 1 }
87
88
89
90 /*
91 **********************************************************************************************************
-**************
92 **函数原型: unsigned char ReadSJAReg(unsigned char RegAdr)
93 **参数说明:
C51 COMPILER V3.96, SN-83203013 IO 05/29/07 12:36:48 PAGE 3
94 ** RegAdr 要读的sja1000的内部寄存器地址
95 **返回值: reg的值
96 **说明: 该函数用于读出sja1000的指定的寄存器
97 **********************************************************************************************************
-**************
98 */
99 unsigned char ReadSJAReg(unsigned char RegAdr)
100 {
101 1
102 1 return(*(SJA_CS_Point + RegAdr));
103 1 }
C51 COMPILER V3.96, SN-83203013 IO 05/29/07 12:36:48 PAGE 4
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P_SJAFrameStruct . . . . . . . . . . . TYPEDEF ----- PTR ----- 3
SJA_CS_Point . . . . . . . . . . . . . EXTERN DATA PTR ----- 2
_ReadSJARegBlock . . . . . . . . . . . PUBLIC CODE PROC ----- -----
RegAdr . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
ValueBuf . . . . . . . . . . . . . . AUTO DATA PTR 0001H 3
len. . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0004H 1
i. . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
SJAFrameStruct . . . . . . . . . . . . TYPEDEF ----- STRUCT ----- 13
DataLength . . . . . . . . . . . . . MEMBER ----- FIELD 0000H 4.0
ResverBit1 . . . . . . . . . . . . . MEMBER DATA FIELD 0000H 1.4
ResverBit2 . . . . . . . . . . . . . MEMBER DATA FIELD 0000H 1.5
FrameType. . . . . . . . . . . . . . MEMBER DATA FIELD 0000H 1.6
RTRFlag. . . . . . . . . . . . . . . MEMBER DATA FIELD 0000H 1.7
FrameID. . . . . . . . . . . . . . . MEMBER ----- U_LONG 0001H 4
Databuf. . . . . . . . . . . . . . . MEMBER ----- ARRAY 0005H 8
_WriteSJARegBlock. . . . . . . . . . . PUBLIC CODE PROC ----- -----
RegAdr . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
ValueBuf . . . . . . . . . . . . . . AUTO DATA PTR 0001H 3
len. . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0004H 1
i. . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0005H 1
_ReadSJAReg. . . . . . . . . . . . . . PUBLIC CODE PROC ----- -----
RegAdr . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
_WriteSJAReg . . . . . . . . . . . . . PUBLIC CODE PROC ----- -----
RegAdr . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
Value. . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0001H 1
k. . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0002H 1
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 177 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 14
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 13 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -