📄 main.lst
字号:
28 =1 #define uchar unsigned char
29 =1 #endif
30 =1
31 =1
32 =1 //Timer/Counter initialize
33 =1 #define timer0_13bit TMOD&=0xf0
34 =1 #define timer0_16bit TMOD&=0xf0;TMOD|=0x01
35 =1 #define timer0_auto_reload TMOD&=0xf0;TMOD|=0x02
36 =1 #define timer1_13bit TMOD&=0x0f
37 =1 #define timer1_16bit TMOD&=0x0f;TMOD|=0x10
38 =1 #define timer1_auto_reload TMOD&=0x0f;TMOD|=0x20
39 =1 #define timer2_auto_reload CP_RL=0;
40 =1 #define timer2_capture CP_RL=1;
41 =1
42 =1 #define timer2_extern_enable EXEN2=1;
43 =1 #define timer2_extern_disable EXEN2=0;
44 =1
45 =1 #define timer0_stop TR0=0
46 =1 #define timer1_stop TR1=0
47 =1 #define timer2_stop TR2=0;
48 =1
49 =1 #define timer0_start TR0=1
50 =1 #define timer1_start TR1=1
51 =1 #define timer2_start TR2=1;
52 =1
53 =1 #define enable() EA=1
54 =1 #define disable() EA=0
55 =1
56 =1 #define int_timer0() TF0=1
57 =1 #define int_timer1() TF1=1
58 =1 #define int_timer2() TF2=1
59 =1
C51 COMPILER V7.07 MAIN 07/08/2004 05:56:05 PAGE 5
60 =1 #define int0_falling_edge IT0=1
61 =1 #define int1_falling_edge IT1=1
62 =1
63 =1 #define int0_int_enable EX0=1
64 =1 #define int1_int_enable EX1=1
65 =1 #define timer0_int_enable ET0=1
66 =1 #define timer1_int_enable ET1=1
67 =1 #define timer2_int_enable ET2=1
68 =1 #define serial_int_enable ES=1
69 =1 #define serial1_int_enable ES1=1
70 =1
71 =1 #define int0_int_disable EX0=0
72 =1 #define int1_int_disable EX1=0
73 =1 #define timer0_int_disable ET0=0
74 =1 #define timer1_int_disable ET1=0
75 =1 #define timer2_int_disable ET2=0
76 =1 #define serial_int_disable ES=0
77 =1
78 =1
79 =1
80 =1 /*******************************************************************
81 =1 检查P89C668的掉电标记
82 =1 函数原型: uchar PowerOff();
83 =1 功能: 检查P89C668的掉电标记
84 =1 返回0--无掉电情况(热复位)
85 =1 返回1--有掉电情况(冷启动)
86 =1 注意:POF需要软件清除!!
87 =1 *******************************************************************/
88 =1 extern uchar PowerOff();
89 =1
90 =1
91 =1 /*******************************************************************
92 =1 启动P89C668的PCA看门狗设置
93 =1 函数原型: void WatchDog0_Init();
94 =1 功能: 启动P89C668的看PCA门狗设置
95 =1 注意:使用了内嵌ASM,需要在Group中打开 Generate Assembler SRC file
96 =1 Assemble SRC file.
97 =1 *******************************************************************/
98 =1 extern void WatchDog0_Init();
99 =1
100 =1 /*******************************************************************
101 =1 喂P89C668的PCA看门狗
102 =1 函数原型: void WatchDog0();
103 =1 功能: 喂P89C668的PCA看门狗
104 =1 注意:使用了内嵌ASM,需要在Group中打开 Generate Assembler SRC file
105 =1 Assemble SRC file.
106 =1 *******************************************************************/
107 =1 extern void WatchDog0();
108 =1
109 =1
110 =1 /*******************************************************************
111 =1 启动P89C668的硬件看门狗设置
112 =1 函数原型: void WatchDog1_Init();
113 =1 功能: 启动P89C668的硬件看门狗设置
114 =1 *******************************************************************/
115 =1 extern void WatchDog1_Init();
116 =1
117 =1
118 =1 /*******************************************************************
119 =1 喂P89C668的硬件看门狗
120 =1 函数原型: void WatchDog1();
121 =1 功能: 喂P89C668的硬件看门狗
C51 COMPILER V7.07 MAIN 07/08/2004 05:56:05 PAGE 6
122 =1 *******************************************************************/
123 =1 extern void WatchDog1();
124 =1
125 =1
126 =1 #ifndef READYDEF_uchar /*取消宏uchar定义*/
127 =1 #undef uchar
128 =1 #endif
129 =1
130 =1
131 =1 /*
132 =1 //Define the baud rate generater
133 =1
134 =1 #define serial_baud_double PCON=PCON|0x80;
135 =1
136 =1 //The following is both of the two serial port,use the same baud rate
137 =1 #define serial_baud_1200 TMOD&=0x0f;TMOD|=0x20;TH1=0xe8;TR1=1
138 =1 #define serial_baud_2400 TMOD&=0x0f;TMOD|=0x20;TH1=0xf4;TR1=1
139 =1 #define serial_baud_4800 TMOD&=0x0f;TMOD|=0x20;TH1=0xfa;TR1=1
140 =1 #define serial_baud_9600 TMOD&=0x0f;TMOD|=0x20;TH1=0xfd;TR1=1
141 =1 #define serial_baud_19200 TMOD&=0x0f;TMOD|=0x20;TH1=0xfd;TR1=1;PCON=PCON|0x80
142 =1
143 =1 //The follwing is serial port use differant baud rate
144 =1 //
145 =1 // OSC OSC=11.0592 345600
146 =1 // T2 = 0 - ----------------- ============= 0 - ---------
147 =1 // 32 * BAUD_RATE BAUD_RATE
148 =1 //
149 =1 //
150 =1 #define serial_baud_1200 TMOD&=0x0f;TMOD|=0x20;TH1=0xe8;TR1=1
151 =1 #define serial_baud_2400 TMOD&=0x0f;TMOD|=0x20;TH1=0xf4;TR1=1
152 =1 #define serial_baud_4800 TMOD&=0x0f;TMOD|=0x20;TH1=0xfa;TR1=1
153 =1 #define serial_baud_9600 TMOD&=0x0f;TMOD|=0x20;TH1=0xfd;TR1=1
154 =1 #define serial_baud_19200 TMOD&=0x0f;TMOD|=0x20;TH1=0xfd;TR1=1
155 =1
156 =1 #define serial_uart8 SM0=0;SM1=1;SM2=0
157 =1 #define serial_uart9 SM0=1;SM1=1;TR1=1
158 =1
159 =1 #define serial_receive_enable REN=1
160 =1 */
14 #include <G7000.H>
1 =1 /************************************************************************************/
2 =1 /* G7000 硬件参考 */
3 =1 /* MCU 型号: Philips P89C668 */
4 =1 /* 时钟频率: 11.0592 MHz 6 CLOCK */
5 =1 /* 开发环境: Keil C51 V7.06a */
6 =1 /* 开发日期: 2003.08.22 */
7 =1 /* 程序编写: BaoFang 鲍方 */
8 =1 /* 系统版本: V3.00 */
9 =1 /************************************************************************************/
10 =1
11 =1 #include <absacc.h>
1 =2 /*--------------------------------------------------------------------------
2 =2 ABSACC.H
3 =2
4 =2 Direct access to 8051, extended 8051 and Philips 80C51MX memory areas.
5 =2 Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.
6 =2 All rights reserved.
7 =2 --------------------------------------------------------------------------*/
8 =2
9 =2 #ifndef __ABSACC_H__
10 =2 #define __ABSACC_H__
11 =2
C51 COMPILER V7.07 MAIN 07/08/2004 05:56:05 PAGE 7
12 =2 #define CBYTE ((unsigned char volatile code *) 0)
13 =2 #define DBYTE ((unsigned char volatile data *) 0)
14 =2 #define PBYTE ((unsigned char volatile pdata *) 0)
15 =2 #define XBYTE ((unsigned char volatile xdata *) 0)
16 =2
17 =2 #define CWORD ((unsigned int volatile code *) 0)
18 =2 #define DWORD ((unsigned int volatile data *) 0)
19 =2 #define PWORD ((unsigned int volatile pdata *) 0)
20 =2 #define XWORD ((unsigned int volatile xdata *) 0)
21 =2
22 =2
23 =2 #ifdef __CX51__
=2 #define FVAR(object, addr) (*((object volatile far *) (addr)))
=2 #define FARRAY(object, base) ((object volatile far *) (base))
=2 #define FCVAR(object, addr) (*((object const far *) (addr)))
=2 #define FCARRAY(object, base) ((object const far *) (base))
=2 #else
29 =2 #define FVAR(object, addr) (*((object volatile far *) ((addr)+0x10000L)))
30 =2 #define FCVAR(object, addr) (*((object const far *) ((addr)+0x810000L)))
31 =2 #define FARRAY(object, base) ((object volatile far *) ((base)+0x10000L))
32 =2 #define FCARRAY(object, base) ((object const far *) ((base)+0x810000L))
33 =2 #endif
34 =2
35 =2 #endif
12 =1
13 =1 #ifdef uchar
=1 #define READYDEF_uchar 1 /*宏uchar已定义*/
=1 #else
16 =1 #define uchar unsigned char
17 =1 #endif
18 =1
19 =1 #ifdef uint
=1 #define READYDEF_uint 1 /*宏uint已定义*/
=1 #else
22 =1 #define uint unsigned int
23 =1 #endif
24 =1
25 =1
26 =1 #define CAN_ZMAX 16 //系统网络最大节点数
27 =1
28 =1 // CPLD 端口定义
29 =1 #define CON01 XBYTE[0xBF00] //十路继电器控制字节1-8
30 =1 #define CON02 XBYTE[0xDF00] //十路继电器控制字节9-10
31 =1 #define LED01 XBYTE[0xEF00] //显示LED 1-8
32 =1 #define INSET XBYTE[0xF700] //设置字节1 1-4 与 外部输入1-4
33 =1 #define CON03 XBYTE[0xFB00] //其它控制输出
34 =1
35 =1 //时间段符号预定义 内部地址代码
36 =1
37 =1 #define SIZE_OF_TURN_LIST 50 //时段列表长度
38 =1
39 =1 #define Turn_99 0
40 =1
41 =1 #define Turn_00 1
42 =1
43 =1 #define Turn_01 2
44 =1
45 =1 #define Turn_02 3
46 =1 #define Turn_03 4
47 =1 #define Turn_04 5
48 =1 #define Turn_05 6
49 =1 #define Turn_06 7
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -