📄 main.lst
字号:
C51 COMPILER V7.02a MAIN 01/19/2006 15:39:29 PAGE 1
C51 COMPILER V7.02a, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1
2 /*==========================================================================================
3 Copyright (C), 2005, RegalCyber Tech. Co., Ltd.
4 File name: main.C
5 Author: Zhangui Duan Version: v1.2 Date: 2005-3-30
6
7 Description:
8 此程序文件主要是当手触摸屏幕的时候,发送寻卡信号,接收卡号并将卡号后三字节用Wiegand格式输出。
9 1,主程序
10 2,初始化程序
11 Other Description:
12 由 Keil C51 V7.05 编译通过
13
14 Function List:
15 1. 主程序
16 void main(void);
17 2, 初始化程序
18 void Init(void);
19
20 History:
21 1. Date:
22 Author:
23 Modification:
24
25 ============================================================================================*/
26 #include "main.h"
27 #include <stdio.h>
28 #include "adc.h"
29
30 #define Delay_If for(temp_num2=0;((temp_num2<20)&&(test2<0x30));temp_num2++,Delayms(1))
31 #define DEBUG 1
32 unsigned char rr;
33 unsigned char TIME;
34 /****************************************************************************************
35 Function: isr_INT0
36 Description: 定时器0 190us中断
37 主要功能就是保证每秒钟将卡号计数器加1
38 Calls:
39 Called By: void main(void);
40 Input:
41 Output:
42 Return:
43 Others:
44 ****************************************************************************************/
45 /*
46 void isr_INT0(void) interrupt 1 using 1
47 {
48 unsigned char i;
49 Time_count++;
50 if(Time_count==5264) //定时1S时间到 (5264)
51 {
52 Time_count=0;
53 rr++;
54 if(rr>=TIME)
55 {
C51 COMPILER V7.02a MAIN 01/19/2006 15:39:29 PAGE 2
56 overtime=1;//TIMEs时间到,置超时标志
57 rr=0;
58 }
59 for(i=0;i<Max_Card_Num;i++)
60 {
61 if(No_Data[i].Counter<0xff)No_Data[i].Counter++;//数据库中每个卡号的计数器加1
62 if((No_Data[i].Counter>=TIME)&&(No_Data[i].Counter<0xff))
63 {
64 No_Data[i].No=0; //将此卡号从数据库中删除
65 No_Data[i].Counter=0xff; //将此卡号对应的计数器恢复到初始化的值
66 }
67 }
68
69 }
70 } */
71 /*********************************************************************************************
72 Function: main
73 Description: 发送寻卡信号,接收卡号并按照Wiegand格式输出
74 Calls:
75 Init();
76 Init_Receiver();
77 Transmitter();
78 Delayms();
79 Receiver();
80 Wiegand_Out();
81 Called By:
82 Input:
83 Output:
84 Return:
85 Others:
86 *********************************************************************************************/
87
88 void main(void)
89 {
90 1 unsigned char temp_num2;
91 1 unsigned char test2;
92 1 Init();
93 1 rconfbuf[0]=0x4f;//初始化发送和接收的配置字,默认收发功率为:0dBm,收发速率为:250Kbps
94 1 rconfbuf[1]=0x05;
95 1 tconfbuf[0]=0x4f;
96 1 tconfbuf[1]=0x04;
97 1
98 1 //----------------------------------------------
99 1 //存储或者是从eeprom中取出卡号和配置参数
100 1 //----------------------------------------------
101 1 InitADC();
102 1 Data0=0;
103 1 Data1=0;
104 1 TRCOUNT=0;
105 1 while(1)
106 1 {
107 2 /*do
108 2 {
109 2 test2=ReadADC();
110 2 LED_red=0;
111 2 Delay_If;
112 2 if(test2>0x30)break;
113 2 LED_red=1;
114 2 Delay_If;
115 2 if(test2>0x30)break;
116 2
117 2 }while(1); */
C51 COMPILER V7.02a MAIN 01/19/2006 15:39:29 PAGE 3
118 2 Touch_Identify();
119 2 }
120 1
121 1 }
*** WARNING C280 IN LINE 90 OF MAIN.C: 'temp_num2': unreferenced local variable
*** WARNING C280 IN LINE 91 OF MAIN.C: 'test2': unreferenced local variable
122
123
124 /*************************************************
125 Function: Touch_Identify
126 Description: 参数配置
127 1,将配置参数存入FLASH中
128 2,从FLASH中读出配置参数
129 Calls: void EEInit(void);
130 unsigned char EERead(unsigned int addr);
131 void EEWrite(unsigned int addr, unsigned char b);
132 Called By: void main(void)
133 Input: set_card
134 根据此输入值判断是否有进行参数配置
135 Output:
136 Return:
137 Others:
138 *************************************************/
139 void Touch_Identify(void)
140 {
141 1
142 1 LED_red=0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -