📄 ceshi.lst
字号:
C51 COMPILER V7.50 CESHI 06/15/2008 22:04:15 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE CESHI
OBJECT MODULE PLACED IN ceshi.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ceshi.c LARGE BROWSE DEBUG OBJECTEXTEND
line level source
1 #include "PL3105.h"
2
3 #define uchar unsigned char
4 #define uint unsigned int
5
6 /*常量定义*/
7 #define CHECK_TIME 1000 //5秒钟
8 #define PULSE_DZ_CN 3 //待测表收到PULSE_DZ_CN个脉冲后,显示误差
9 #define PULSE_JX_CN 3 //机械表收到PULSE_JX_CN个脉冲后,显示误差
10
11 //写24XX不同空间的地址指令
12 #define WR_2402 0xA0 // 24空间0-2K 不受保护的低半部分
13 #define WR_2404 0xA2 // 24空间2-4K 受保护的高半部分
14
15
16
17 /****** I/O 口设置 ********/
18
19 sbit pulse_bz_input = P1^5; //标准表脉冲采样
20 sbit pulse_dc_input = P1^6; //待测表脉冲采样
21 sbit beep = P1^4; // 峰鸣器驱动
22 sbit relay = P1^7; // 继电器驱动
23 sbit lamp = P1^0; // 调试时用的指示灯
24 sbit S_Clk = P1^2; // FM24C04的时钟口
25 sbit S_Dat = P1^3; // FM24C04的数据口
26
27
28 uchar data pulse_bz_pb; //标准表脉冲判别
29 uchar data pulse_dc_pb; //待测表脉冲判别
30
31 uchar data pulse_bz_flag; //标准表脉冲标志
32 uchar data pulse_dc_flag; //待测表脉冲标志
33 uchar data clear_flag; //
34
35 uint data pulse_bz_cn; //标准表脉冲计数器
36 uint data pulse_dc_cn; //待测表脉冲计数器
37 uint data pulse_bz_time; //标准表脉冲计时
38 uint data pulse_dc_time; //待测表脉冲计时
39 uint data pulse_bz_t; //标准表脉冲临时计时
40 uint data pulse_dc_t; //待测表脉冲临时计时
41 uchar data check_t_num;
42
43 uchar data an_start_flag; //
44 uchar data key_const_reg; //
45 uchar data key_save_reg; //
46 uchar data reset_flag;
47 uchar data key_stop_flag;
48 uchar data check_step; //
49 uint data check_time; //
50 uchar data error; //检查脉冲时出错
51 uchar data check_pulse; //检查脉冲
52 uchar data sign_flag; //+-符号,数码显示用
53 uchar data showing; // 当前表常数正在显示.0隐藏
54 uchar data const_num;
55
C51 COMPILER V7.50 CESHI 06/15/2008 22:04:15 PAGE 2
56 uchar data current_flash_cn; //当前数码管闪烁的位置。
57 uchar data time3; //
58 uchar data flash_stop; //消除在设置常数时闪烁位为隐藏状态。
59 uchar xdata led_show_list[6];//数码管显示的数据 译码后的数据。
60 uchar xdata led_show_buf[6];
61 uchar xdata user_id[6];
62 uchar xdata user_wc[6];
63 uchar xdata time_reg[7];
64 uchar xdata constant_mtr[6]; //电表常数,BCD码中的个位十位百位千位。
65 uchar data constant_cn; //电表常数的排序位置。
66 uchar data flashing_time; //设置常数时数码管闪烁定时器
67 uchar bdata flashing_con; //设置常数相关的位组合
68 sbit flashing_pb=flashing_con^0;
69 sbit have_pulse= flashing_con^1; //待测表有脉冲。数码管动态显示有脉冲
70 sbit FM24_Bit = flashing_con^2; //
71 uchar data have_pulse_cn; //待测表有脉冲循环计数,用于数码管动态显示有脉冲
72 uchar data beep_time; //响铃时间。
73 uchar data beep_time2; //响铃时间2。
74
75 uchar data led_show_flag; //可刷新数码管显示的标志
76 uchar data key_cn; //按键按下的时间(5毫秒的倍数)
77 uchar data key_time; //按键屏蔽时间
78 //uchar data flash_flag; //闪灯标志
79 //uchar data flash_cn; //闪灯计数器
80 //uchar data flash_time; //闪烁节奏定时器
81 uchar data hello_flag;
82 uchar data Timer_RS_2; //
83 uchar data save_eff_flag1;
84 uchar data save_eff_flag2;
85
86 uchar data watchdog_reset; //看门狗可清标志
87
88 uchar data constant_all_flag; //='A'可以显示常数。
89 uchar data constant_showing; //='S'当前正在显示常数
90 uchar xdata read_buf[16]; // 读取FM24时用的中间缓冲区
91 uchar xdata write_buf[16]; // 写入FM24时用的中间缓冲区
92 uchar xdata constant_all[60]; // 10个常数
93 uchar data save_num;
94
95 uint data Timer_RS_3;
96 uint data Timer_RS; // 232发射/接收定时器
97 uchar data RS_Re_OK;
98 uchar data RS232_State; // RS232接收过程标志:
99 uchar data RS232_Pointer; // RE_232 BUF数据指针
100 //uchar data RS232_Add_Len; // RE_232 规约中地址部分的长度
101 uchar data RS232_Data_Len; // RE_232 规约中数据部分的长度
102 uchar data RS232_Data_CRC1; // RE_232 规约中的校验和
103 uchar data RS232_Data_CRC2;
104 uchar xdata RS232_buf[60]; // Com1中断所接收的数据(RS232数据)
105 uchar xdata RS232_buf_bak[60]; // Com1中断所接收的数据(RS232数据)备份
106 //uint data Timer_RS_Answer; // RS232应答时间
107
108 uchar xdata Send_RS232[60]; // Com1中断所发射的数据(RS232数据)
109 uchar xdata Send_RS232_SELF[60]; // 发送232数据缓冲区,自检用
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -