📄 math.lst
字号:
C51 COMPILER V6.20c MATH 06/21/2007 21:37:53 PAGE 1
C51 COMPILER V6.20c, COMPILATION OF MODULE MATH
OBJECT MODULE PLACED IN math.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE math.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include"my.h"
2 extern bit fSeri0_Send_Ok;
3 extern bit fSeri1_Send_Ok;
4 extern bit fSeri0_Reci_Ok;
5 extern bit fSeri1_Reci_Ok;
6 extern bit fSeri2_Send_Ok;
7 extern bit fSeri2_Reci_Ok;
8 /**************************************************
9 串口0队列 pc
10 **************************************************/
11
12 extern unsigned char xdata xBuf_0[];//130
13 extern unsigned char xdata *Seri0_ReadSendPoint;
14 extern unsigned char xdata *Seri0_WriteSendPoint;
15 extern unsigned char data Seri0_SendNum;
16 extern unsigned char data Seri0_ReciNum;
17 /**************************************************
18 //串口1队列
19 **************************************************/
20 extern unsigned char xdata xBuf_1[];//16
21 extern unsigned char xdata pagedata[];//128
22 extern unsigned char xdata *pagedataPoint;
23 extern unsigned char data Seri1_SendNum;
24 extern unsigned char data Seri1_ReciNum;
25 /**************************************************
26 //串口2队列
27 **************************************************/
28 extern unsigned char xdata xBuf_2[];//384
29 extern unsigned char xdata *Seri2_ReadPoint;
30 extern unsigned char xdata *Seri2_WritePoint;
31 extern unsigned int data Seri2_SendNum;
32 extern unsigned int data Seri2_ReciNum;
33 /************************************/
34 extern void puart_init(void);
35 extern void PSendChar(unsigned char inch);
36 extern Pc2eep2pc();//
37 G_id_my();//get本机卡号();
38 G_id_my_some();//get间接码();
39 G_id_my_some_show();//get显示码();
40 geteep32(unsigned char a);//get显示码()的子程序
41 geteep16(unsigned char a);//get显示码()的子程序
42 extern S2send(); //串寇2发送IOur.ct
43 extern unsigned char IRcvStr
44 ( unsigned char Sla, unsigned int Address ,
45 unsigned char *RcvData ,unsigned char len);
46 extern unsigned char t;
47 math()
48 {
49 1 if((fSeri0_Reci_Ok==0)) {//串口0 (pc)要求处理
50 2 Seri0_ReciNum=0; //串口工作初始化
51 2 Seri0_SendNum=0; //&&(fSeri0_Send_Ok==0)
52 2 Pc2eep2pc(); //在I2C.c
53 2 //2。1)接受pc数据包,
54 2 //按存储页地址(双字节)对eep页写如入更新;
55 2 //2。2)按存储页地址 对eep页读出,向pc发送数据包
C51 COMPILER V6.20c MATH 06/21/2007 21:37:53 PAGE 2
56 2 fSeri0_Reci_Ok=1;//允许中断处理
57 2
58 2 fSeri0_Send_Ok=1;
59 2 TI=1;//串口0发送
60 2 }
61 1
62 1 if((fSeri1_Reci_Ok==0)&&(fSeri1_Send_Ok==0))//容许程序处理
63 1 {
64 2 G_id_my(); //ok get本机卡号();在math.c
65 2 G_id_my_some(); //get间接码(); 在math.c
66 2 G_id_my_some_show();//get显示码(); 在math.c
67 2 fSeri2_Send_Ok=1;
68 2 S2send(); //led 显示 在IOuart.c
69 2 Seri1_ReciNum=0;
70 2 Seri1_SendNum=0;
71 2 fSeri1_Reci_Ok=1;//允许中断处理
72 2 fSeri1_Send_Ok=1;
73 2 TI_1=1;
74 2 }
75 1
76 1 }
77
78 union d{
79 INT16U u16;
80 INT8U u8[2];
81 }m,m1,m2,m3;
82
83 #define id m.u16
84 #define idH m.u8[0]
85 #define idL m.u8[1]
86
87 #define idm m1.u16
88 #define idmH m1.u8[0]
89 #define idmL m1.u8[1]
90
91 #define pageaddr m2.u16
92 #define pageaddrH m2.u8[0]
93 #define pageaddrL m2.u8[1]
94
95 #define idmix m3.u16
96 #define idmixH m3.u8[0]
97 #define idmixL m3.u8[1]
98 /*************************************************
99 功能: 读I2C
100 输入:
101 Sla: 芯片地址(A0:EEPROM1;A4:EEPROM2)
102 Address: 片内首地址
103 Send_Data: 数据地址
104 len: 长度(<=128)
105 输出: 0:正确; 1: 错误
106 注意:
107 **************************************************/
108 extern Set_Sla();
109 unsigned char card_char[10];
110 extern unsigned char tmp;
111 extern unsigned char Sla;
112 /*************************************************
113 功能: get本机卡号();
114 1。1)接受卡号,
115 1。2)从页=0x780处,读出页的数据,
116 最小卡号(双字节,高位在前)。存放在第0个到第1个字节,
117 1。3)本机卡号=卡号-最小卡
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -