📄 can591io.lst
字号:
C51 COMPILER V7.01 CAN591IO 04/10/2003 14:04:02 PAGE 1
C51 COMPILER V7.01, COMPILATION OF MODULE CAN591IO
OBJECT MODULE PLACED IN Can591io.OBJ
COMPILER INVOKED BY: C:\KEIL_V7\C51\BIN\C51.EXE Can591io.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /*
2 *********************************************************************************************************
-***********
3 *描述: P8XC591CAN硬件接口管理文件
4 *文件名: CAN591IO.C
5 *应用语言: KEIL C51
6 *版本 : V1.0
7 *广州周立功单片机发展有限公司 保留所有的版权
8 *********************************************************************************************************
-***********
9 */
10 #define _GLOBAL_CAN591IO_
11
12 /*
13 **********************************************************************************************************
-**************
14 ** 导入头文件
15 **********************************************************************************************************
-**************
16 */
17 #include "CAN591_PELI_APP.H"
18
19 /*
20 **********************************************************************************************************
-**************
21 **函数原型: char WriteSJARegBlock(unsigned char RegAdr,unsigned char *ValueBuf,
22 ** unsigned char len)
23 **参数说明: ValueValueBuf 写入寄存器的值的存储器地址
24 ** RegAdr 要写入591的内部寄存器地址
25 ** len 要写入591内部寄存器的长度
26 **返回值: SJA_OK 写入正确
27 ** !SJA_OK 写入不正确
28 **说明: 该函数用于将指定的数值写入591的指定的寄存器
29 **********************************************************************************************************
-**************
30 */
31 char WriteSJARegBlock(unsigned char RegAdr,unsigned char *ValueBuf,
32 unsigned char len)
33 {
34 1 unsigned char i;
35 1 if(len != 0){
36 2 if(RegAdr<32)
37 2 for(i=0;i<len;i++){
38 3 REG_CANADR=RegAdr+i;
39 3 REG_CANDAT=*(ValueBuf+i);
40 3 }
41 2 else
42 2 {
43 3 REG_CANADR=RegAdr;
44 3 for(i=0;i<len;i++)
45 3 {
46 4 REG_CANDAT=*(ValueBuf+i);
47 4 }
48 3 }
49 2 }
C51 COMPILER V7.01 CAN591IO 04/10/2003 14:04:02 PAGE 2
50 1 return 0x00;
51 1 }
52
53 /*
54 **********************************************************************************************************
-**************
55 **函数原型: char ReadSJAReg(unsigned char RegAdr,unsigned char *ValueBuf,
56 ** unsigned char len)
57 **参数说明: ValueValueBuf 存储读出寄存器的值的存储器地址
58 ** RegAdr 要读的591的内部寄存器地址
59 ** len 要读出591内部寄存器的长度
60 **返回值: SJA_OK 读出正确
61 ** !SJA_OK 读出不正确
62 **说明: 该函数用于读出591的指定的寄存器
63 **********************************************************************************************************
-**************
64 */
65 char ReadSJARegBlock(unsigned char RegAdr,unsigned char *ValueBuf,
66 unsigned char len)
67 {
68 1 unsigned char i;
69 1 if(len != 0){
70 2 if(RegAdr<32)
71 2 for(i=0;i<len;i++){
72 3 REG_CANADR=RegAdr+i;
73 3 *(ValueBuf+i)=REG_CANDAT;
74 3 }
75 2 else
76 2 {
77 3 REG_CANADR=RegAdr;
78 3 for(i=0;i<len;i++)
79 3 {
80 4 *(ValueBuf+i)=REG_CANDAT;
81 4 }
82 3 }
83 2 }
84 1 return 0x00;
85 1 }
86
87 /*
88 **********************************************************************************************************
-**************
89 **函数原型: char WriteSJAReg(unsigned char RegAdr,unsigned char Value)
90 **参数说明: Value 写入寄存器的值
91 ** RegAdr 要写入591的内部寄存器地址
92 **返回值: SJA_OK 写入正确
93 ** !SJA_OK 写入不正确
94 **说明: 该函数用于将指定的数值写入591的指定的寄存器
95 **********************************************************************************************************
-**************
96 */
97 char WriteSJAReg(unsigned char RegAdr,unsigned char Value)
98 {
99 1
100 1 REG_CANADR=RegAdr;
101 1 REG_CANDAT=Value;
102 1 return 0x00;
103 1 }
104
105
106
107 /*
C51 COMPILER V7.01 CAN591IO 04/10/2003 14:04:02 PAGE 3
108 **********************************************************************************************************
-**************
109 **函数原型: unsigned char ReadSJAReg(unsigned char RegAdr)
110 **参数说明:
111 ** RegAdr 要读的591的内部寄存器地址
112 **返回值: reg的值
113 **说明: 该函数用于读出591的指定的寄存器
114 **********************************************************************************************************
-**************
115 */
116 unsigned char ReadSJAReg(unsigned char RegAdr)
117 {
118 1 REG_CANADR=RegAdr;
119 1 return(REG_CANDAT);
120 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 170 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 10
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 + -