-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathReplyState.LST
More file actions
83 lines (74 loc) · 4.16 KB
/
ReplyState.LST
File metadata and controls
83 lines (74 loc) · 4.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
C51 COMPILER V7.00 REPLYSTATE 03/03/2007 21:12:42 PAGE 1
C51 COMPILER V7.00, COMPILATION OF MODULE REPLYSTATE
OBJECT MODULE PLACED IN ReplyState.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ReplyState.c LARGE BROWSE OMF251 DEBUG
stmt level source
1 #include "EPC_STATE.h"
2
3 void ReplyStateFunction(){
4 1
5 1 BLED=LED_ON;
6 1
7 1 while(1){
8 2 //接收資料
9 2 halRFSetRxTxOff(RF_RX, &RF_SETTINGS, &RF_CALDATA); //打開RX
10 2 ReciveByte = halRFReceivePacket(10,&buffer,64,0,CC1010EB_CLKFREQ) ;
11 2 if(ReciveByte==0)continue;
12 2
13 2
14 2 command = buffer[0] ;
15 2 //分辨指令
16 2 switch(command){
17 3 case SINGLE_SELECT_HEADER:
18 3 AnswerToSingleSelect((MySelect*)&buffer);
19 3 return;
20 3 case SELECT_HEADER :
21 3 AnswerToSelect((MySelect*)&buffer);
22 3 return;
23 3 case QUERY_HEADER :
24 3 case QUERY_ADJUST_HEADER :
25 3 halRandomNumberGen((byte*)&RN_16,2);
26 3 halRFSetRxTxOff(RF_TX, &RF_SETTINGS, &RF_CALDATA);
27 3 halRFSendPacket(PREAMBLE_BYTE_COUNT,(byte*)&RN_16,2);
28 3 halRFSetRxTxOff(RF_RX, &RF_SETTINGS, &RF_CALDATA);
29 3 break;
30 3 case ACK_HEADER:
31 3 /*判斷Reader送回的ACK中RN16是否和之前TAG送出的相同*/
32 3 Ack=(MyACK*)buffer;
33 3 if(Ack->RN_ACK==RN_16)/*若相同則TAG反應PC,EPC,CRC-16*/
34 3 {
35 4 /*PC,EPC,CRC16 backscatter (not finished)*/
36 4 halRFSetRxTxOff(RF_TX, &RF_SETTINGS, &RF_CALDATA);
37 4 halRFSendPacket(PREAMBLE_BYTE_COUNT,(byte*)&EpcMB,12);
38 4 halRFSetRxTxOff(RF_RX, &RF_SETTINGS, &RF_CALDATA);
39 4
40 4 state=AcknowledgedState;
41 4 return ;
42 4 }
43 3 else
44 3 {
45 4 state=ArbitrateState;
46 4 return ;
47 4 }
48 3 break;
49 3 default:
50 3 state=ArbitrateState; //Remain in Arbitrate
51 3 return ;
52 3 }
53 2 }
54 1 }
C51 COMPILER V7.00 REPLYSTATE 03/03/2007 21:12:42 PAGE 2
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 257 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
EDATA SIZE = ---- ----
HDATA SIZE = ---- ----
XDATA CONST SIZE = ---- ----
FAR CONST SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)