📄 main.lst
字号:
C51 COMPILER V8.09 MAIN 09/23/2008 08:34:17 PAGE 1
C51 COMPILER V8.09, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE src\main.c LARGE OPTIMIZE(7,SPEED) BROWSE DEBUG OBJECTEXTEND PRINT(.\main.l
-st) OBJECT(main.obj)
line level source
1 #include <reg52.h>
2 #include <intrins.h>
3 #include "inc/CPUIO_DEF.H"
4 #include "inc/PUBLIC_VARIABLE.H"
5 #include "inc/candul.H"
6 #include "inc/common.H"
7
8 void main(void)
9 {
10 1 //关键变量初始化
11 1 bitRstFlg = 0;
12 1 bitMidoFlg = 0;
13 1 bitLastFlg = 0;
14 1
15 1 MOTONOFF = 1; //马达关闭
16 1 bitSysAllowWork = 0;
17 1
18 1 //CPU初始化
19 1 SJA_RST = 1; //CAN总线复位管脚
20 1 SJA_CS = 0; //CAN总线片选有效
21 1
22 1 //定时器0初始化
23 1 //AUXR &= 0x1f; //定时器00011100兼容标准51 ,进行12分频 ,
24 1 TMOD |= 0X11; //T0模式1,T1模式1
25 1 TL0 = 0Xcc; //2ms定时中断22.1184mhz
26 1 TH0 = 0XF8 ;
27 1
28 1 TL1 = 0X0 ; //
29 1 TH1 = 0X0 ;
30 1
31 1 TR0 = 1; //启动定时器0
32 1 TR1 = 0; //停止定时器1
33 1
34 1
35 1 //6、串口初始化
36 1 // SCON = 0XF0 ; //串口模式1,SM2=0;
37 1
38 1
39 1 PCON = 0;
40 1 // EX1 = 1;//外部中断0负边沿触发
41 1 // IT1 = 1;
42 1
43 1 IT0 = 0;//CAN总线接收中断电平触发
44 1 EX0 = 1;//打开外部中断0
45 1 // ES = 1; //开串口中断
46 1 ET0 = 1; //定时器0
47 1 ET1 = 1; //定时器1
48 1 // IE = 0x03;
49 1 EA = 1; //打开总中断
50 1 SJA_CS = 1; //CAN总线片选无效,保证数据线上的变化不会影响SJA1000
51 1 //CPU初始化
52 1
53 1 CAN_init(); //SJA1000初始化,对 SJA1000寄存器的读写是采用外部寄存器寻址方式,所以不需要程序单独控制
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -