|
|
ARM GAS /tmp/ccY05lmV.s page 1
|
|
|
|
|
|
|
|
|
1 .cpu cortex-m0plus
|
|
|
2 .eabi_attribute 20, 1
|
|
|
3 .eabi_attribute 21, 1
|
|
|
4 .eabi_attribute 23, 3
|
|
|
5 .eabi_attribute 24, 1
|
|
|
6 .eabi_attribute 25, 1
|
|
|
7 .eabi_attribute 26, 1
|
|
|
8 .eabi_attribute 30, 1
|
|
|
9 .eabi_attribute 34, 0
|
|
|
10 .eabi_attribute 18, 4
|
|
|
11 .file "lora.c"
|
|
|
12 .text
|
|
|
13 .Ltext0:
|
|
|
14 .cfi_sections .debug_frame
|
|
|
15 .section .text.McpsConfirm,"ax",%progbits
|
|
|
16 .align 1
|
|
|
17 .syntax unified
|
|
|
18 .code 16
|
|
|
19 .thumb_func
|
|
|
20 .fpu softvfp
|
|
|
22 McpsConfirm:
|
|
|
23 .LFB100:
|
|
|
24 .file 1 "./Middlewares/Third_Party/Lora/Core/lora.c"
|
|
|
1:./Middlewares/Third_Party/Lora/Core/lora.c **** /*
|
|
|
2:./Middlewares/Third_Party/Lora/Core/lora.c **** / _____) _ | |
|
|
|
3:./Middlewares/Third_Party/Lora/Core/lora.c **** ( (____ _____ ____ _| |_ _____ ____| |__
|
|
|
4:./Middlewares/Third_Party/Lora/Core/lora.c **** \____ \| ___ | (_ _) ___ |/ ___) _ \
|
|
|
5:./Middlewares/Third_Party/Lora/Core/lora.c **** _____) ) ____| | | || |_| ____( (___| | | |
|
|
|
6:./Middlewares/Third_Party/Lora/Core/lora.c **** (______/|_____)_|_|_| \__)_____)\____)_| |_|
|
|
|
7:./Middlewares/Third_Party/Lora/Core/lora.c **** (C)2013 Semtech
|
|
|
8:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
9:./Middlewares/Third_Party/Lora/Core/lora.c **** Description: LoRaMac classA device implementation
|
|
|
10:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
11:./Middlewares/Third_Party/Lora/Core/lora.c **** License: Revised BSD License, see LICENSE.TXT file include in the project
|
|
|
12:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
13:./Middlewares/Third_Party/Lora/Core/lora.c **** Maintainer: Miguel Luis, Gregory Cristian and Wael Guibene
|
|
|
14:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
15:./Middlewares/Third_Party/Lora/Core/lora.c **** /******************************************************************************
|
|
|
16:./Middlewares/Third_Party/Lora/Core/lora.c **** * @file lora.c
|
|
|
17:./Middlewares/Third_Party/Lora/Core/lora.c **** * @author MCD Application Team
|
|
|
18:./Middlewares/Third_Party/Lora/Core/lora.c **** * @version V1.1.2
|
|
|
19:./Middlewares/Third_Party/Lora/Core/lora.c **** * @date 08-September-2017
|
|
|
20:./Middlewares/Third_Party/Lora/Core/lora.c **** * @brief lora API to drive the lora state Machine
|
|
|
21:./Middlewares/Third_Party/Lora/Core/lora.c **** ******************************************************************************
|
|
|
22:./Middlewares/Third_Party/Lora/Core/lora.c **** * @attention
|
|
|
23:./Middlewares/Third_Party/Lora/Core/lora.c **** *
|
|
|
24:./Middlewares/Third_Party/Lora/Core/lora.c **** * <h2><center>© Copyright (c) 2017 STMicroelectronics International N.V.
|
|
|
25:./Middlewares/Third_Party/Lora/Core/lora.c **** * All rights reserved.</center></h2>
|
|
|
26:./Middlewares/Third_Party/Lora/Core/lora.c **** *
|
|
|
27:./Middlewares/Third_Party/Lora/Core/lora.c **** * Redistribution and use in source and binary forms, with or without
|
|
|
28:./Middlewares/Third_Party/Lora/Core/lora.c **** * modification, are permitted, provided that the following conditions are met:
|
|
|
29:./Middlewares/Third_Party/Lora/Core/lora.c **** *
|
|
|
30:./Middlewares/Third_Party/Lora/Core/lora.c **** * 1. Redistribution of source code must retain the above copyright notice,
|
|
|
31:./Middlewares/Third_Party/Lora/Core/lora.c **** * this list of conditions and the following disclaimer.
|
|
|
32:./Middlewares/Third_Party/Lora/Core/lora.c **** * 2. Redistributions in binary form must reproduce the above copyright notice,
|
|
|
33:./Middlewares/Third_Party/Lora/Core/lora.c **** * this list of conditions and the following disclaimer in the documentation
|
|
|
34:./Middlewares/Third_Party/Lora/Core/lora.c **** * and/or other materials provided with the distribution.
|
|
|
ARM GAS /tmp/ccY05lmV.s page 2
|
|
|
|
|
|
|
|
|
35:./Middlewares/Third_Party/Lora/Core/lora.c **** * 3. Neither the name of STMicroelectronics nor the names of other
|
|
|
36:./Middlewares/Third_Party/Lora/Core/lora.c **** * contributors to this software may be used to endorse or promote products
|
|
|
37:./Middlewares/Third_Party/Lora/Core/lora.c **** * derived from this software without specific written permission.
|
|
|
38:./Middlewares/Third_Party/Lora/Core/lora.c **** * 4. This software, including modifications and/or derivative works of this
|
|
|
39:./Middlewares/Third_Party/Lora/Core/lora.c **** * software, must execute solely and exclusively on microcontroller or
|
|
|
40:./Middlewares/Third_Party/Lora/Core/lora.c **** * microprocessor devices manufactured by or for STMicroelectronics.
|
|
|
41:./Middlewares/Third_Party/Lora/Core/lora.c **** * 5. Redistribution and use of this software other than as permitted under
|
|
|
42:./Middlewares/Third_Party/Lora/Core/lora.c **** * this license is void and will automatically terminate your rights under
|
|
|
43:./Middlewares/Third_Party/Lora/Core/lora.c **** * this license.
|
|
|
44:./Middlewares/Third_Party/Lora/Core/lora.c **** *
|
|
|
45:./Middlewares/Third_Party/Lora/Core/lora.c **** * THIS SOFTWARE IS PROVIDED BY STMICROELECTRONICS AND CONTRIBUTORS "AS IS"
|
|
|
46:./Middlewares/Third_Party/Lora/Core/lora.c **** * AND ANY EXPRESS, IMPLIED OR STATUTORY WARRANTIES, INCLUDING, BUT NOT
|
|
|
47:./Middlewares/Third_Party/Lora/Core/lora.c **** * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
|
|
48:./Middlewares/Third_Party/Lora/Core/lora.c **** * PARTICULAR PURPOSE AND NON-INFRINGEMENT OF THIRD PARTY INTELLECTUAL PROPERTY
|
|
|
49:./Middlewares/Third_Party/Lora/Core/lora.c **** * RIGHTS ARE DISCLAIMED TO THE FULLEST EXTENT PERMITTED BY LAW. IN NO EVENT
|
|
|
50:./Middlewares/Third_Party/Lora/Core/lora.c **** * SHALL STMICROELECTRONICS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
|
51:./Middlewares/Third_Party/Lora/Core/lora.c **** * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
|
52:./Middlewares/Third_Party/Lora/Core/lora.c **** * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
|
|
53:./Middlewares/Third_Party/Lora/Core/lora.c **** * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
|
|
54:./Middlewares/Third_Party/Lora/Core/lora.c **** * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
|
|
55:./Middlewares/Third_Party/Lora/Core/lora.c **** * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
|
|
56:./Middlewares/Third_Party/Lora/Core/lora.c **** * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
57:./Middlewares/Third_Party/Lora/Core/lora.c **** *
|
|
|
58:./Middlewares/Third_Party/Lora/Core/lora.c **** ******************************************************************************
|
|
|
59:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
60:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
61:./Middlewares/Third_Party/Lora/Core/lora.c **** /* Includes ------------------------------------------------------------------*/
|
|
|
62:./Middlewares/Third_Party/Lora/Core/lora.c **** #include "hw.h"
|
|
|
63:./Middlewares/Third_Party/Lora/Core/lora.c **** #include "timeServer.h"
|
|
|
64:./Middlewares/Third_Party/Lora/Core/lora.c **** #include "LoRaMac.h"
|
|
|
65:./Middlewares/Third_Party/Lora/Core/lora.c **** #include "lora.h"
|
|
|
66:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
67:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
68:./Middlewares/Third_Party/Lora/Core/lora.c **** * Join requests trials duty cycle.
|
|
|
69:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
70:./Middlewares/Third_Party/Lora/Core/lora.c **** #define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000 // 10 [s] value in ms
|
|
|
71:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
72:./Middlewares/Third_Party/Lora/Core/lora.c **** #if defined( REGION_EU868 )
|
|
|
73:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
74:./Middlewares/Third_Party/Lora/Core/lora.c **** #include "LoRaMacTest.h"
|
|
|
75:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
76:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
77:./Middlewares/Third_Party/Lora/Core/lora.c **** * LoRaWAN ETSI duty cycle control enable/disable
|
|
|
78:./Middlewares/Third_Party/Lora/Core/lora.c **** *
|
|
|
79:./Middlewares/Third_Party/Lora/Core/lora.c **** * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes
|
|
|
80:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
81:./Middlewares/Third_Party/Lora/Core/lora.c **** #define LORAWAN_DUTYCYCLE_ON true
|
|
|
82:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
83:./Middlewares/Third_Party/Lora/Core/lora.c **** #define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 0
|
|
|
84:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
85:./Middlewares/Third_Party/Lora/Core/lora.c **** #if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 )
|
|
|
86:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
87:./Middlewares/Third_Party/Lora/Core/lora.c **** #define LC4 { 867100000, 0, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }
|
|
|
88:./Middlewares/Third_Party/Lora/Core/lora.c **** #define LC5 { 867300000, 0, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }
|
|
|
89:./Middlewares/Third_Party/Lora/Core/lora.c **** #define LC6 { 867500000, 0, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }
|
|
|
90:./Middlewares/Third_Party/Lora/Core/lora.c **** #define LC7 { 867700000, 0, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }
|
|
|
91:./Middlewares/Third_Party/Lora/Core/lora.c **** #define LC8 { 867900000, 0, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }
|
|
|
ARM GAS /tmp/ccY05lmV.s page 3
|
|
|
|
|
|
|
|
|
92:./Middlewares/Third_Party/Lora/Core/lora.c **** #define LC9 { 868800000, 0, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 }
|
|
|
93:./Middlewares/Third_Party/Lora/Core/lora.c **** #define LC10 { 868300000, 0, { ( ( DR_6 << 4 ) | DR_6 ) }, 1 }
|
|
|
94:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
95:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
96:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
97:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
98:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
99:./Middlewares/Third_Party/Lora/Core/lora.c **** static uint8_t DevEui[] = LORAWAN_DEVICE_EUI;
|
|
|
100:./Middlewares/Third_Party/Lora/Core/lora.c **** static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI;
|
|
|
101:./Middlewares/Third_Party/Lora/Core/lora.c **** static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY;
|
|
|
102:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
103:./Middlewares/Third_Party/Lora/Core/lora.c **** #if( OVER_THE_AIR_ACTIVATION == 0 )
|
|
|
104:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
105:./Middlewares/Third_Party/Lora/Core/lora.c **** static uint8_t NwkSKey[] = LORAWAN_NWKSKEY;
|
|
|
106:./Middlewares/Third_Party/Lora/Core/lora.c **** static uint8_t AppSKey[] = LORAWAN_APPSKEY;
|
|
|
107:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
108:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
109:./Middlewares/Third_Party/Lora/Core/lora.c **** * Device address
|
|
|
110:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
111:./Middlewares/Third_Party/Lora/Core/lora.c **** static uint32_t DevAddr = LORAWAN_DEVICE_ADDRESS;
|
|
|
112:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
113:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
114:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
115:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
116:./Middlewares/Third_Party/Lora/Core/lora.c **** * User application data buffer size
|
|
|
117:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
118:./Middlewares/Third_Party/Lora/Core/lora.c **** #define LORAWAN_APP_DATA_BUFF_SIZE 64
|
|
|
119:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
120:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
121:./Middlewares/Third_Party/Lora/Core/lora.c **** * User application data
|
|
|
122:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
123:./Middlewares/Third_Party/Lora/Core/lora.c **** static uint8_t AppDataBuff[LORAWAN_APP_DATA_BUFF_SIZE];
|
|
|
124:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
125:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
126:./Middlewares/Third_Party/Lora/Core/lora.c **** * User application data structure
|
|
|
127:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
128:./Middlewares/Third_Party/Lora/Core/lora.c **** static lora_AppData_t AppData={ AppDataBuff, 0 ,0 };
|
|
|
129:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
130:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
131:./Middlewares/Third_Party/Lora/Core/lora.c **** * Indicates if the node is sending confirmed or unconfirmed messages
|
|
|
132:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
133:./Middlewares/Third_Party/Lora/Core/lora.c **** static FunctionalState IsTxConfirmed ;
|
|
|
134:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
135:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
136:./Middlewares/Third_Party/Lora/Core/lora.c **** * Defines the LoRa parameters at Init
|
|
|
137:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
138:./Middlewares/Third_Party/Lora/Core/lora.c **** static LoRaParam_t* LoRaParamInit;
|
|
|
139:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
140:./Middlewares/Third_Party/Lora/Core/lora.c **** * Timer to handle the application data transmission duty cycle
|
|
|
141:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
142:./Middlewares/Third_Party/Lora/Core/lora.c **** static TimerEvent_t TxNextPacketTimer;
|
|
|
143:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
144:./Middlewares/Third_Party/Lora/Core/lora.c **** static DeviceState_t DeviceState = DEVICE_STATE_INIT ;
|
|
|
145:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
146:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
147:./Middlewares/Third_Party/Lora/Core/lora.c **** * Timer to handle the state of LED1
|
|
|
148:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
ARM GAS /tmp/ccY05lmV.s page 4
|
|
|
|
|
|
|
|
|
149:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
150:./Middlewares/Third_Party/Lora/Core/lora.c **** static LoRaMacPrimitives_t LoRaMacPrimitives;
|
|
|
151:./Middlewares/Third_Party/Lora/Core/lora.c **** static LoRaMacCallback_t LoRaMacCallbacks;
|
|
|
152:./Middlewares/Third_Party/Lora/Core/lora.c **** static MibRequestConfirm_t mibReq;
|
|
|
153:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
154:./Middlewares/Third_Party/Lora/Core/lora.c **** static LoRaMainCallback_t *LoRaMainCallbacks;
|
|
|
155:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
156:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
157:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
158:./Middlewares/Third_Party/Lora/Core/lora.c **** * Indicates if a new packet can be sent
|
|
|
159:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
160:./Middlewares/Third_Party/Lora/Core/lora.c **** static bool NextTx = true;
|
|
|
161:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
162:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
163:./Middlewares/Third_Party/Lora/Core/lora.c **** * LoRaWAN compliance tests support data
|
|
|
164:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
165:./Middlewares/Third_Party/Lora/Core/lora.c **** struct ComplianceTest_s
|
|
|
166:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
167:./Middlewares/Third_Party/Lora/Core/lora.c **** bool Running;
|
|
|
168:./Middlewares/Third_Party/Lora/Core/lora.c **** uint8_t State;
|
|
|
169:./Middlewares/Third_Party/Lora/Core/lora.c **** FunctionalState IsTxConfirmed;
|
|
|
170:./Middlewares/Third_Party/Lora/Core/lora.c **** uint8_t AppPort;
|
|
|
171:./Middlewares/Third_Party/Lora/Core/lora.c **** uint8_t AppDataSize;
|
|
|
172:./Middlewares/Third_Party/Lora/Core/lora.c **** uint8_t *AppDataBuffer;
|
|
|
173:./Middlewares/Third_Party/Lora/Core/lora.c **** uint16_t DownLinkCounter;
|
|
|
174:./Middlewares/Third_Party/Lora/Core/lora.c **** bool LinkCheck;
|
|
|
175:./Middlewares/Third_Party/Lora/Core/lora.c **** uint8_t DemodMargin;
|
|
|
176:./Middlewares/Third_Party/Lora/Core/lora.c **** uint8_t NbGateways;
|
|
|
177:./Middlewares/Third_Party/Lora/Core/lora.c **** }ComplianceTest;
|
|
|
178:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
179:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
180:./Middlewares/Third_Party/Lora/Core/lora.c **** * \brief Prepares the payload of the frame
|
|
|
181:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
182:./Middlewares/Third_Party/Lora/Core/lora.c **** static void PrepareTxFrame( void)
|
|
|
183:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
184:./Middlewares/Third_Party/Lora/Core/lora.c **** if( ComplianceTest.Running == true )
|
|
|
185:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
186:./Middlewares/Third_Party/Lora/Core/lora.c **** if( ComplianceTest.LinkCheck == true )
|
|
|
187:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
188:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.LinkCheck = false;
|
|
|
189:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.BuffSize = 3;
|
|
|
190:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[0] = 5;
|
|
|
191:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[1] = ComplianceTest.DemodMargin;
|
|
|
192:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[2] = ComplianceTest.NbGateways;
|
|
|
193:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.State = 1;
|
|
|
194:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
195:./Middlewares/Third_Party/Lora/Core/lora.c **** else
|
|
|
196:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
197:./Middlewares/Third_Party/Lora/Core/lora.c **** switch( ComplianceTest.State )
|
|
|
198:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
199:./Middlewares/Third_Party/Lora/Core/lora.c **** case 4:
|
|
|
200:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.State = 1;
|
|
|
201:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
202:./Middlewares/Third_Party/Lora/Core/lora.c **** case 1:
|
|
|
203:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.BuffSize = 2;
|
|
|
204:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[0] = ComplianceTest.DownLinkCounter >> 8;
|
|
|
205:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[1] = ComplianceTest.DownLinkCounter;
|
|
|
ARM GAS /tmp/ccY05lmV.s page 5
|
|
|
|
|
|
|
|
|
206:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
207:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
208:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
209:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
210:./Middlewares/Third_Party/Lora/Core/lora.c **** else
|
|
|
211:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
212:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMainCallbacks->LoraTxData(&AppData, &IsTxConfirmed);
|
|
|
213:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
214:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
215:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
216:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
217:./Middlewares/Third_Party/Lora/Core/lora.c **** * \brief Prepares the payload of the frame
|
|
|
218:./Middlewares/Third_Party/Lora/Core/lora.c **** *
|
|
|
219:./Middlewares/Third_Party/Lora/Core/lora.c **** * \retval [0: frame could be send, 1: error]
|
|
|
220:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
221:./Middlewares/Third_Party/Lora/Core/lora.c **** static bool SendFrame( void )
|
|
|
222:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
223:./Middlewares/Third_Party/Lora/Core/lora.c **** McpsReq_t mcpsReq;
|
|
|
224:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacTxInfo_t txInfo;
|
|
|
225:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
226:./Middlewares/Third_Party/Lora/Core/lora.c **** if( LoRaMacQueryTxPossible( AppData.BuffSize, &txInfo ) != LORAMAC_STATUS_OK )
|
|
|
227:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
228:./Middlewares/Third_Party/Lora/Core/lora.c **** // Send empty frame in order to flush MAC commands
|
|
|
229:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Type = MCPS_UNCONFIRMED;
|
|
|
230:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.fBuffer = NULL;
|
|
|
231:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.fBufferSize = 0;
|
|
|
232:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.Datarate = LoRaParamInit->TxDatarate;
|
|
|
233:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
234:./Middlewares/Third_Party/Lora/Core/lora.c **** else
|
|
|
235:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
236:./Middlewares/Third_Party/Lora/Core/lora.c **** if( IsTxConfirmed == DISABLE )
|
|
|
237:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
238:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Type = MCPS_UNCONFIRMED;
|
|
|
239:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.fPort = AppData.Port;
|
|
|
240:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.fBuffer = AppData.Buff;
|
|
|
241:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.fBufferSize = AppData.BuffSize;
|
|
|
242:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.Datarate = LoRaParamInit->TxDatarate;
|
|
|
243:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
244:./Middlewares/Third_Party/Lora/Core/lora.c **** else
|
|
|
245:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
246:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Type = MCPS_CONFIRMED;
|
|
|
247:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Confirmed.fPort = AppData.Port;
|
|
|
248:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Confirmed.fBuffer = AppData.Buff;
|
|
|
249:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Confirmed.fBufferSize = AppData.BuffSize;
|
|
|
250:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Confirmed.NbTrials = 8;
|
|
|
251:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Confirmed.Datarate = LoRaParamInit->TxDatarate;
|
|
|
252:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
253:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
254:./Middlewares/Third_Party/Lora/Core/lora.c **** if( LoRaMacMcpsRequest( &mcpsReq ) == LORAMAC_STATUS_OK )
|
|
|
255:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
256:./Middlewares/Third_Party/Lora/Core/lora.c **** return false;
|
|
|
257:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
258:./Middlewares/Third_Party/Lora/Core/lora.c **** return true;
|
|
|
259:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
260:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
261:./Middlewares/Third_Party/Lora/Core/lora.c **** void OnSendEvent( void )
|
|
|
262:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
ARM GAS /tmp/ccY05lmV.s page 6
|
|
|
|
|
|
|
|
|
263:./Middlewares/Third_Party/Lora/Core/lora.c **** MibRequestConfirm_t _mibReq;
|
|
|
264:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacStatus_t status;
|
|
|
265:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
266:./Middlewares/Third_Party/Lora/Core/lora.c **** _mibReq.Type = MIB_NETWORK_JOINED;
|
|
|
267:./Middlewares/Third_Party/Lora/Core/lora.c **** status = LoRaMacMibGetRequestConfirm( &_mibReq );
|
|
|
268:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
269:./Middlewares/Third_Party/Lora/Core/lora.c **** if( status == LORAMAC_STATUS_OK )
|
|
|
270:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
271:./Middlewares/Third_Party/Lora/Core/lora.c **** if( _mibReq.Param.IsNetworkJoined == true )
|
|
|
272:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
273:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_SEND;
|
|
|
274:./Middlewares/Third_Party/Lora/Core/lora.c **** NextTx = true;
|
|
|
275:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
276:./Middlewares/Third_Party/Lora/Core/lora.c **** else
|
|
|
277:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
278:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_JOIN;
|
|
|
279:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
280:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
281:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
282:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
283:./Middlewares/Third_Party/Lora/Core/lora.c **** * \brief Function executed on TxNextPacket Timeout event
|
|
|
284:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
285:./Middlewares/Third_Party/Lora/Core/lora.c **** static void OnTxNextPacketTimerEvent( void )
|
|
|
286:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
287:./Middlewares/Third_Party/Lora/Core/lora.c **** TimerStop( &TxNextPacketTimer );
|
|
|
288:./Middlewares/Third_Party/Lora/Core/lora.c **** OnSendEvent();
|
|
|
289:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
290:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
291:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
292:./Middlewares/Third_Party/Lora/Core/lora.c **** * \brief MCPS-Confirm event function
|
|
|
293:./Middlewares/Third_Party/Lora/Core/lora.c **** *
|
|
|
294:./Middlewares/Third_Party/Lora/Core/lora.c **** * \param [IN] McpsConfirm - Pointer to the confirm structure,
|
|
|
295:./Middlewares/Third_Party/Lora/Core/lora.c **** * containing confirm attributes.
|
|
|
296:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
297:./Middlewares/Third_Party/Lora/Core/lora.c **** static void McpsConfirm( McpsConfirm_t *mcpsConfirm )
|
|
|
298:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
25 .loc 1 298 0
|
|
|
26 .cfi_startproc
|
|
|
27 @ args = 0, pretend = 0, frame = 0
|
|
|
28 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
29 @ link register save eliminated.
|
|
|
30 .LVL0:
|
|
|
299:./Middlewares/Third_Party/Lora/Core/lora.c **** if( mcpsConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK )
|
|
|
300:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
301:./Middlewares/Third_Party/Lora/Core/lora.c **** switch( mcpsConfirm->McpsRequest )
|
|
|
302:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
303:./Middlewares/Third_Party/Lora/Core/lora.c **** case MCPS_UNCONFIRMED:
|
|
|
304:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
305:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check Datarate
|
|
|
306:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check TxPower
|
|
|
307:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
308:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
309:./Middlewares/Third_Party/Lora/Core/lora.c **** case MCPS_CONFIRMED:
|
|
|
310:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
311:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check Datarate
|
|
|
312:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check TxPower
|
|
|
313:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check AckReceived
|
|
|
ARM GAS /tmp/ccY05lmV.s page 7
|
|
|
|
|
|
|
|
|
314:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check NbTrials
|
|
|
315:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
316:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
317:./Middlewares/Third_Party/Lora/Core/lora.c **** case MCPS_PROPRIETARY:
|
|
|
318:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
319:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
320:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
321:./Middlewares/Third_Party/Lora/Core/lora.c **** default:
|
|
|
322:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
323:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
324:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
325:./Middlewares/Third_Party/Lora/Core/lora.c **** NextTx = true;
|
|
|
31 .loc 1 325 0
|
|
|
32 0000 014B ldr r3, .L2
|
|
|
33 0002 0122 movs r2, #1
|
|
|
34 0004 1A70 strb r2, [r3]
|
|
|
326:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
35 .loc 1 326 0
|
|
|
36 @ sp needed
|
|
|
37 0006 7047 bx lr
|
|
|
38 .L3:
|
|
|
39 .align 2
|
|
|
40 .L2:
|
|
|
41 0008 00000000 .word .LANCHOR0
|
|
|
42 .cfi_endproc
|
|
|
43 .LFE100:
|
|
|
45 .section .text.MlmeConfirm,"ax",%progbits
|
|
|
46 .align 1
|
|
|
47 .syntax unified
|
|
|
48 .code 16
|
|
|
49 .thumb_func
|
|
|
50 .fpu softvfp
|
|
|
52 MlmeConfirm:
|
|
|
53 .LFB102:
|
|
|
327:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
328:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
329:./Middlewares/Third_Party/Lora/Core/lora.c **** * \brief MCPS-Indication event function
|
|
|
330:./Middlewares/Third_Party/Lora/Core/lora.c **** *
|
|
|
331:./Middlewares/Third_Party/Lora/Core/lora.c **** * \param [IN] mcpsIndication - Pointer to the indication structure,
|
|
|
332:./Middlewares/Third_Party/Lora/Core/lora.c **** * containing indication attributes.
|
|
|
333:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
334:./Middlewares/Third_Party/Lora/Core/lora.c **** static void McpsIndication( McpsIndication_t *mcpsIndication )
|
|
|
335:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
336:./Middlewares/Third_Party/Lora/Core/lora.c **** if( mcpsIndication->Status != LORAMAC_EVENT_INFO_STATUS_OK )
|
|
|
337:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
338:./Middlewares/Third_Party/Lora/Core/lora.c **** return;
|
|
|
339:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
340:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
341:./Middlewares/Third_Party/Lora/Core/lora.c **** switch( mcpsIndication->McpsIndication )
|
|
|
342:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
343:./Middlewares/Third_Party/Lora/Core/lora.c **** case MCPS_UNCONFIRMED:
|
|
|
344:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
345:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
346:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
347:./Middlewares/Third_Party/Lora/Core/lora.c **** case MCPS_CONFIRMED:
|
|
|
348:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
349:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
ARM GAS /tmp/ccY05lmV.s page 8
|
|
|
|
|
|
|
|
|
350:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
351:./Middlewares/Third_Party/Lora/Core/lora.c **** case MCPS_PROPRIETARY:
|
|
|
352:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
353:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
354:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
355:./Middlewares/Third_Party/Lora/Core/lora.c **** case MCPS_MULTICAST:
|
|
|
356:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
357:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
358:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
359:./Middlewares/Third_Party/Lora/Core/lora.c **** default:
|
|
|
360:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
361:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
362:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
363:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check Multicast
|
|
|
364:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check Port
|
|
|
365:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check Datarate
|
|
|
366:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check FramePending
|
|
|
367:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check Buffer
|
|
|
368:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check BufferSize
|
|
|
369:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check Rssi
|
|
|
370:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check Snr
|
|
|
371:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check RxSlot
|
|
|
372:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
373:./Middlewares/Third_Party/Lora/Core/lora.c **** if( ComplianceTest.Running == true )
|
|
|
374:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
375:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.DownLinkCounter++;
|
|
|
376:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
377:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
378:./Middlewares/Third_Party/Lora/Core/lora.c **** if( mcpsIndication->RxData == true )
|
|
|
379:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
380:./Middlewares/Third_Party/Lora/Core/lora.c **** switch( mcpsIndication->Port )
|
|
|
381:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
382:./Middlewares/Third_Party/Lora/Core/lora.c **** case 224:
|
|
|
383:./Middlewares/Third_Party/Lora/Core/lora.c **** if( ComplianceTest.Running == false )
|
|
|
384:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
385:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check compliance test enable command (i)
|
|
|
386:./Middlewares/Third_Party/Lora/Core/lora.c **** if( ( mcpsIndication->BufferSize == 4 ) &&
|
|
|
387:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[0] == 0x01 ) &&
|
|
|
388:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[1] == 0x01 ) &&
|
|
|
389:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[2] == 0x01 ) &&
|
|
|
390:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[3] == 0x01 ) )
|
|
|
391:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
392:./Middlewares/Third_Party/Lora/Core/lora.c **** IsTxConfirmed = DISABLE;
|
|
|
393:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Port = 224;
|
|
|
394:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.BuffSize = 2;
|
|
|
395:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.DownLinkCounter = 0;
|
|
|
396:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.LinkCheck = false;
|
|
|
397:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.DemodMargin = 0;
|
|
|
398:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.NbGateways = 0;
|
|
|
399:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.Running = true;
|
|
|
400:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.State = 1;
|
|
|
401:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
402:./Middlewares/Third_Party/Lora/Core/lora.c **** MibRequestConfirm_t _mibReq;
|
|
|
403:./Middlewares/Third_Party/Lora/Core/lora.c **** _mibReq.Type = MIB_ADR;
|
|
|
404:./Middlewares/Third_Party/Lora/Core/lora.c **** _mibReq.Param.AdrEnable = true;
|
|
|
405:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &_mibReq );
|
|
|
406:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
ARM GAS /tmp/ccY05lmV.s page 9
|
|
|
|
|
|
|
|
|
407:./Middlewares/Third_Party/Lora/Core/lora.c **** #if defined( REGION_EU868 )
|
|
|
408:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacTestSetDutyCycleOn( false );
|
|
|
409:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
410:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
411:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
412:./Middlewares/Third_Party/Lora/Core/lora.c **** else
|
|
|
413:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
414:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.State = mcpsIndication->Buffer[0];
|
|
|
415:./Middlewares/Third_Party/Lora/Core/lora.c **** switch( ComplianceTest.State )
|
|
|
416:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
417:./Middlewares/Third_Party/Lora/Core/lora.c **** case 0: // Check compliance test disable command (ii)
|
|
|
418:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.DownLinkCounter = 0;
|
|
|
419:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.Running = false;
|
|
|
420:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
421:./Middlewares/Third_Party/Lora/Core/lora.c **** MibRequestConfirm_t _mibReq;
|
|
|
422:./Middlewares/Third_Party/Lora/Core/lora.c **** _mibReq.Type = MIB_ADR;
|
|
|
423:./Middlewares/Third_Party/Lora/Core/lora.c **** _mibReq.Param.AdrEnable = LoRaParamInit->AdrEnable;
|
|
|
424:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &_mibReq );
|
|
|
425:./Middlewares/Third_Party/Lora/Core/lora.c **** #if defined( REGION_EU868 )
|
|
|
426:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON );
|
|
|
427:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
428:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
429:./Middlewares/Third_Party/Lora/Core/lora.c **** case 1: // (iii, iv)
|
|
|
430:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.BuffSize = 2;
|
|
|
431:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
432:./Middlewares/Third_Party/Lora/Core/lora.c **** case 2: // Enable confirmed messages (v)
|
|
|
433:./Middlewares/Third_Party/Lora/Core/lora.c **** IsTxConfirmed = ENABLE;
|
|
|
434:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.State = 1;
|
|
|
435:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
436:./Middlewares/Third_Party/Lora/Core/lora.c **** case 3: // Disable confirmed messages (vi)
|
|
|
437:./Middlewares/Third_Party/Lora/Core/lora.c **** IsTxConfirmed = DISABLE;
|
|
|
438:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.State = 1;
|
|
|
439:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
440:./Middlewares/Third_Party/Lora/Core/lora.c **** case 4: // (vii)
|
|
|
441:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.BuffSize = mcpsIndication->BufferSize;
|
|
|
442:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
443:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[0] = 4;
|
|
|
444:./Middlewares/Third_Party/Lora/Core/lora.c **** for( uint8_t i = 1; i < AppData.BuffSize; i++ )
|
|
|
445:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
446:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[i] = mcpsIndication->Buffer[i] + 1;
|
|
|
447:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
448:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
449:./Middlewares/Third_Party/Lora/Core/lora.c **** case 5: // (viii)
|
|
|
450:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
451:./Middlewares/Third_Party/Lora/Core/lora.c **** MlmeReq_t mlmeReq;
|
|
|
452:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Type = MLME_LINK_CHECK;
|
|
|
453:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMlmeRequest( &mlmeReq );
|
|
|
454:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
455:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
456:./Middlewares/Third_Party/Lora/Core/lora.c **** case 6: // (ix)
|
|
|
457:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
458:./Middlewares/Third_Party/Lora/Core/lora.c **** MlmeReq_t mlmeReq;
|
|
|
459:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
460:./Middlewares/Third_Party/Lora/Core/lora.c **** // Disable TestMode and revert back to normal operation
|
|
|
461:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
462:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.DownLinkCounter = 0;
|
|
|
463:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.Running = false;
|
|
|
ARM GAS /tmp/ccY05lmV.s page 10
|
|
|
|
|
|
|
|
|
464:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
465:./Middlewares/Third_Party/Lora/Core/lora.c **** MibRequestConfirm_t mibReq;
|
|
|
466:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Type = MIB_ADR;
|
|
|
467:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.AdrEnable = LoRaParamInit->AdrEnable;
|
|
|
468:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
469:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
470:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Type = MLME_JOIN;
|
|
|
471:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
472:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.DevEui = DevEui;
|
|
|
473:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.AppEui = AppEui;
|
|
|
474:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.AppKey = AppKey;
|
|
|
475:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.NbTrials = 3;
|
|
|
476:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
477:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMlmeRequest( &mlmeReq );
|
|
|
478:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_SLEEP;
|
|
|
479:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
480:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
481:./Middlewares/Third_Party/Lora/Core/lora.c **** case 7: // (x)
|
|
|
482:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
483:./Middlewares/Third_Party/Lora/Core/lora.c **** if( mcpsIndication->BufferSize == 3 )
|
|
|
484:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
485:./Middlewares/Third_Party/Lora/Core/lora.c **** MlmeReq_t mlmeReq;
|
|
|
486:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Type = MLME_TXCW;
|
|
|
487:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.TxCw.Timeout = ( uint16_t )( ( mcpsIndication->Buffer[1] <<
|
|
|
488:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMlmeRequest( &mlmeReq );
|
|
|
489:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
490:./Middlewares/Third_Party/Lora/Core/lora.c **** else if( mcpsIndication->BufferSize == 7 )
|
|
|
491:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
492:./Middlewares/Third_Party/Lora/Core/lora.c **** MlmeReq_t mlmeReq;
|
|
|
493:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Type = MLME_TXCW_1;
|
|
|
494:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.TxCw.Timeout = ( uint16_t )( ( mcpsIndication->Buffer[1] <<
|
|
|
495:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.TxCw.Frequency = ( uint32_t )( ( mcpsIndication->Buffer[3]
|
|
|
496:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.TxCw.Power = mcpsIndication->Buffer[6];
|
|
|
497:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMlmeRequest( &mlmeReq );
|
|
|
498:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
499:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.State = 1;
|
|
|
500:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
501:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
502:./Middlewares/Third_Party/Lora/Core/lora.c **** default:
|
|
|
503:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
504:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
505:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
506:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
507:./Middlewares/Third_Party/Lora/Core/lora.c **** default:
|
|
|
508:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
509:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Port = mcpsIndication->Port;
|
|
|
510:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.BuffSize = mcpsIndication->BufferSize;
|
|
|
511:./Middlewares/Third_Party/Lora/Core/lora.c **** memcpy1( AppData.Buff, mcpsIndication->Buffer, AppData.BuffSize );
|
|
|
512:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
513:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMainCallbacks->LoraRxData( &AppData );
|
|
|
514:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
515:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
516:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
517:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
518:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
519:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
520:./Middlewares/Third_Party/Lora/Core/lora.c **** * \brief MLME-Confirm event function
|
|
|
ARM GAS /tmp/ccY05lmV.s page 11
|
|
|
|
|
|
|
|
|
521:./Middlewares/Third_Party/Lora/Core/lora.c **** *
|
|
|
522:./Middlewares/Third_Party/Lora/Core/lora.c **** * \param [IN] MlmeConfirm - Pointer to the confirm structure,
|
|
|
523:./Middlewares/Third_Party/Lora/Core/lora.c **** * containing confirm attributes.
|
|
|
524:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
525:./Middlewares/Third_Party/Lora/Core/lora.c **** static void MlmeConfirm( MlmeConfirm_t *mlmeConfirm )
|
|
|
526:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
54 .loc 1 526 0
|
|
|
55 .cfi_startproc
|
|
|
56 @ args = 0, pretend = 0, frame = 0
|
|
|
57 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
58 @ link register save eliminated.
|
|
|
59 .LVL1:
|
|
|
527:./Middlewares/Third_Party/Lora/Core/lora.c **** switch( mlmeConfirm->MlmeRequest )
|
|
|
60 .loc 1 527 0
|
|
|
61 0000 0378 ldrb r3, [r0]
|
|
|
62 0002 002B cmp r3, #0
|
|
|
63 0004 05D0 beq .L6
|
|
|
64 0006 012B cmp r3, #1
|
|
|
65 0008 0ED0 beq .L7
|
|
|
66 .L5:
|
|
|
528:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
529:./Middlewares/Third_Party/Lora/Core/lora.c **** case MLME_JOIN:
|
|
|
530:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
531:./Middlewares/Third_Party/Lora/Core/lora.c **** if( mlmeConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK )
|
|
|
532:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
533:./Middlewares/Third_Party/Lora/Core/lora.c **** // Status is OK, node has joined the network
|
|
|
534:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_JOINED;
|
|
|
535:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
536:./Middlewares/Third_Party/Lora/Core/lora.c **** else
|
|
|
537:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
538:./Middlewares/Third_Party/Lora/Core/lora.c **** // Join was not successful. Try to join again
|
|
|
539:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_JOIN;
|
|
|
540:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
541:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
542:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
543:./Middlewares/Third_Party/Lora/Core/lora.c **** case MLME_LINK_CHECK:
|
|
|
544:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
545:./Middlewares/Third_Party/Lora/Core/lora.c **** if( mlmeConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK )
|
|
|
546:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
547:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check DemodMargin
|
|
|
548:./Middlewares/Third_Party/Lora/Core/lora.c **** // Check NbGateways
|
|
|
549:./Middlewares/Third_Party/Lora/Core/lora.c **** if( ComplianceTest.Running == true )
|
|
|
550:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
551:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.LinkCheck = true;
|
|
|
552:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.DemodMargin = mlmeConfirm->DemodMargin;
|
|
|
553:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.NbGateways = mlmeConfirm->NbGateways;
|
|
|
554:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
555:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
556:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
557:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
558:./Middlewares/Third_Party/Lora/Core/lora.c **** default:
|
|
|
559:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
560:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
561:./Middlewares/Third_Party/Lora/Core/lora.c **** NextTx = true;
|
|
|
67 .loc 1 561 0
|
|
|
68 000a 0F4B ldr r3, .L9
|
|
|
69 000c 0122 movs r2, #1
|
|
|
ARM GAS /tmp/ccY05lmV.s page 12
|
|
|
|
|
|
|
|
|
70 000e 1A70 strb r2, [r3]
|
|
|
562:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
71 .loc 1 562 0
|
|
|
72 @ sp needed
|
|
|
73 0010 7047 bx lr
|
|
|
74 .L6:
|
|
|
531:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
75 .loc 1 531 0
|
|
|
76 0012 4378 ldrb r3, [r0, #1]
|
|
|
77 0014 002B cmp r3, #0
|
|
|
78 0016 03D1 bne .L8
|
|
|
534:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
79 .loc 1 534 0
|
|
|
80 0018 0C4B ldr r3, .L9+4
|
|
|
81 001a 0222 movs r2, #2
|
|
|
82 001c 1A70 strb r2, [r3]
|
|
|
83 001e F4E7 b .L5
|
|
|
84 .L8:
|
|
|
539:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
85 .loc 1 539 0
|
|
|
86 0020 0A4B ldr r3, .L9+4
|
|
|
87 0022 0122 movs r2, #1
|
|
|
88 0024 1A70 strb r2, [r3]
|
|
|
89 0026 F0E7 b .L5
|
|
|
90 .L7:
|
|
|
545:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
91 .loc 1 545 0
|
|
|
92 0028 4378 ldrb r3, [r0, #1]
|
|
|
93 002a 002B cmp r3, #0
|
|
|
94 002c EDD1 bne .L5
|
|
|
549:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
95 .loc 1 549 0
|
|
|
96 002e 084B ldr r3, .L9+8
|
|
|
97 0030 1B78 ldrb r3, [r3]
|
|
|
98 0032 002B cmp r3, #0
|
|
|
99 0034 E9D0 beq .L5
|
|
|
551:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.DemodMargin = mlmeConfirm->DemodMargin;
|
|
|
100 .loc 1 551 0
|
|
|
101 0036 064B ldr r3, .L9+8
|
|
|
102 0038 0122 movs r2, #1
|
|
|
103 003a 9A73 strb r2, [r3, #14]
|
|
|
552:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.NbGateways = mlmeConfirm->NbGateways;
|
|
|
104 .loc 1 552 0
|
|
|
105 003c 027A ldrb r2, [r0, #8]
|
|
|
106 003e DA73 strb r2, [r3, #15]
|
|
|
553:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
107 .loc 1 553 0
|
|
|
108 0040 427A ldrb r2, [r0, #9]
|
|
|
109 0042 1A74 strb r2, [r3, #16]
|
|
|
110 0044 E1E7 b .L5
|
|
|
111 .L10:
|
|
|
112 0046 C046 .align 2
|
|
|
113 .L9:
|
|
|
114 0048 00000000 .word .LANCHOR0
|
|
|
115 004c 00000000 .word .LANCHOR1
|
|
|
116 0050 00000000 .word .LANCHOR2
|
|
|
117 .cfi_endproc
|
|
|
ARM GAS /tmp/ccY05lmV.s page 13
|
|
|
|
|
|
|
|
|
118 .LFE102:
|
|
|
120 .section .text.McpsIndication,"ax",%progbits
|
|
|
121 .align 1
|
|
|
122 .syntax unified
|
|
|
123 .code 16
|
|
|
124 .thumb_func
|
|
|
125 .fpu softvfp
|
|
|
127 McpsIndication:
|
|
|
128 .LFB101:
|
|
|
335:./Middlewares/Third_Party/Lora/Core/lora.c **** if( mcpsIndication->Status != LORAMAC_EVENT_INFO_STATUS_OK )
|
|
|
129 .loc 1 335 0
|
|
|
130 .cfi_startproc
|
|
|
131 @ args = 0, pretend = 0, frame = 32
|
|
|
132 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
133 .LVL2:
|
|
|
134 0000 10B5 push {r4, lr}
|
|
|
135 .LCFI0:
|
|
|
136 .cfi_def_cfa_offset 8
|
|
|
137 .cfi_offset 4, -8
|
|
|
138 .cfi_offset 14, -4
|
|
|
139 0002 88B0 sub sp, sp, #32
|
|
|
140 .LCFI1:
|
|
|
141 .cfi_def_cfa_offset 40
|
|
|
336:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
142 .loc 1 336 0
|
|
|
143 0004 4378 ldrb r3, [r0, #1]
|
|
|
144 0006 002B cmp r3, #0
|
|
|
145 0008 00D0 beq .LCB99
|
|
|
146 000a E1E0 b .L11 @long jump
|
|
|
147 .LCB99:
|
|
|
373:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
148 .loc 1 373 0
|
|
|
149 000c 714B ldr r3, .L34
|
|
|
150 000e 1B78 ldrb r3, [r3]
|
|
|
151 0010 002B cmp r3, #0
|
|
|
152 0012 03D0 beq .L13
|
|
|
375:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
153 .loc 1 375 0
|
|
|
154 0014 6F49 ldr r1, .L34
|
|
|
155 0016 8A89 ldrh r2, [r1, #12]
|
|
|
156 0018 0132 adds r2, r2, #1
|
|
|
157 001a 8A81 strh r2, [r1, #12]
|
|
|
158 .L13:
|
|
|
378:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
159 .loc 1 378 0
|
|
|
160 001c 427B ldrb r2, [r0, #13]
|
|
|
161 001e 002A cmp r2, #0
|
|
|
162 0020 00D1 bne .LCB112
|
|
|
163 0022 D5E0 b .L11 @long jump
|
|
|
164 .LCB112:
|
|
|
380:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
165 .loc 1 380 0
|
|
|
166 0024 C278 ldrb r2, [r0, #3]
|
|
|
167 0026 E02A cmp r2, #224
|
|
|
168 0028 00D0 beq .LCB115
|
|
|
169 002a C3E0 b .L31 @long jump
|
|
|
170 .LCB115:
|
|
|
ARM GAS /tmp/ccY05lmV.s page 14
|
|
|
|
|
|
|
|
|
383:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
171 .loc 1 383 0
|
|
|
172 002c 002B cmp r3, #0
|
|
|
173 002e 2DD1 bne .L16
|
|
|
386:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[0] == 0x01 ) &&
|
|
|
174 .loc 1 386 0
|
|
|
175 0030 037B ldrb r3, [r0, #12]
|
|
|
176 0032 042B cmp r3, #4
|
|
|
177 0034 00D0 beq .LCB120
|
|
|
178 0036 CBE0 b .L11 @long jump
|
|
|
179 .LCB120:
|
|
|
387:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[1] == 0x01 ) &&
|
|
|
180 .loc 1 387 0 discriminator 1
|
|
|
181 0038 8368 ldr r3, [r0, #8]
|
|
|
182 003a 1A78 ldrb r2, [r3]
|
|
|
386:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[0] == 0x01 ) &&
|
|
|
183 .loc 1 386 0 discriminator 1
|
|
|
184 003c 012A cmp r2, #1
|
|
|
185 003e 00D0 beq .LCB124
|
|
|
186 0040 C6E0 b .L11 @long jump
|
|
|
187 .LCB124:
|
|
|
388:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[2] == 0x01 ) &&
|
|
|
188 .loc 1 388 0
|
|
|
189 0042 5A78 ldrb r2, [r3, #1]
|
|
|
387:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[1] == 0x01 ) &&
|
|
|
190 .loc 1 387 0
|
|
|
191 0044 012A cmp r2, #1
|
|
|
192 0046 00D0 beq .LCB127
|
|
|
193 0048 C2E0 b .L11 @long jump
|
|
|
194 .LCB127:
|
|
|
389:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[3] == 0x01 ) )
|
|
|
195 .loc 1 389 0
|
|
|
196 004a 9A78 ldrb r2, [r3, #2]
|
|
|
388:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[2] == 0x01 ) &&
|
|
|
197 .loc 1 388 0
|
|
|
198 004c 012A cmp r2, #1
|
|
|
199 004e 00D0 beq .LCB130
|
|
|
200 0050 BEE0 b .L11 @long jump
|
|
|
201 .LCB130:
|
|
|
390:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
202 .loc 1 390 0
|
|
|
203 0052 DB78 ldrb r3, [r3, #3]
|
|
|
389:./Middlewares/Third_Party/Lora/Core/lora.c **** ( mcpsIndication->Buffer[3] == 0x01 ) )
|
|
|
204 .loc 1 389 0
|
|
|
205 0054 012B cmp r3, #1
|
|
|
206 0056 00D0 beq .LCB133
|
|
|
207 0058 BAE0 b .L11 @long jump
|
|
|
208 .LCB133:
|
|
|
209 .LBB2:
|
|
|
392:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Port = 224;
|
|
|
210 .loc 1 392 0
|
|
|
211 005a 0024 movs r4, #0
|
|
|
212 005c 5E4B ldr r3, .L34+4
|
|
|
213 005e 1C70 strb r4, [r3]
|
|
|
393:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.BuffSize = 2;
|
|
|
214 .loc 1 393 0
|
|
|
215 0060 5E4B ldr r3, .L34+8
|
|
|
ARM GAS /tmp/ccY05lmV.s page 15
|
|
|
|
|
|
|
|
|
216 0062 DF32 adds r2, r2, #223
|
|
|
217 0064 5A71 strb r2, [r3, #5]
|
|
|
394:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.DownLinkCounter = 0;
|
|
|
218 .loc 1 394 0
|
|
|
219 0066 0221 movs r1, #2
|
|
|
220 0068 1971 strb r1, [r3, #4]
|
|
|
395:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.LinkCheck = false;
|
|
|
221 .loc 1 395 0
|
|
|
222 006a 5A4B ldr r3, .L34
|
|
|
223 006c 9C81 strh r4, [r3, #12]
|
|
|
396:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.DemodMargin = 0;
|
|
|
224 .loc 1 396 0
|
|
|
225 006e 9C73 strb r4, [r3, #14]
|
|
|
397:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.NbGateways = 0;
|
|
|
226 .loc 1 397 0
|
|
|
227 0070 DC73 strb r4, [r3, #15]
|
|
|
398:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.Running = true;
|
|
|
228 .loc 1 398 0
|
|
|
229 0072 1C74 strb r4, [r3, #16]
|
|
|
399:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.State = 1;
|
|
|
230 .loc 1 399 0
|
|
|
231 0074 DF3A subs r2, r2, #223
|
|
|
232 0076 1A70 strb r2, [r3]
|
|
|
400:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
233 .loc 1 400 0
|
|
|
234 0078 5A70 strb r2, [r3, #1]
|
|
|
403:./Middlewares/Third_Party/Lora/Core/lora.c **** _mibReq.Param.AdrEnable = true;
|
|
|
235 .loc 1 403 0
|
|
|
236 007a 03A8 add r0, sp, #12
|
|
|
237 .LVL3:
|
|
|
238 007c 0170 strb r1, [r0]
|
|
|
404:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &_mibReq );
|
|
|
239 .loc 1 404 0
|
|
|
240 007e 0271 strb r2, [r0, #4]
|
|
|
405:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
241 .loc 1 405 0
|
|
|
242 0080 FFF7FEFF bl LoRaMacMibSetRequestConfirm
|
|
|
243 .LVL4:
|
|
|
408:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
244 .loc 1 408 0
|
|
|
245 0084 2000 movs r0, r4
|
|
|
246 0086 FFF7FEFF bl LoRaMacTestSetDutyCycleOn
|
|
|
247 .LVL5:
|
|
|
248 008a A1E0 b .L11
|
|
|
249 .LVL6:
|
|
|
250 .L16:
|
|
|
251 .LBE2:
|
|
|
414:./Middlewares/Third_Party/Lora/Core/lora.c **** switch( ComplianceTest.State )
|
|
|
252 .loc 1 414 0
|
|
|
253 008c 8268 ldr r2, [r0, #8]
|
|
|
254 008e 1378 ldrb r3, [r2]
|
|
|
255 0090 5049 ldr r1, .L34
|
|
|
256 0092 4B70 strb r3, [r1, #1]
|
|
|
415:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
257 .loc 1 415 0
|
|
|
258 0094 072B cmp r3, #7
|
|
|
259 0096 00D9 bls .LCB171
|
|
|
ARM GAS /tmp/ccY05lmV.s page 16
|
|
|
|
|
|
|
|
|
260 0098 9AE0 b .L11 @long jump
|
|
|
261 .LCB171:
|
|
|
262 009a 9B00 lsls r3, r3, #2
|
|
|
263 009c 5049 ldr r1, .L34+12
|
|
|
264 009e CB58 ldr r3, [r1, r3]
|
|
|
265 00a0 9F46 mov pc, r3
|
|
|
266 .section .rodata.McpsIndication,"a",%progbits
|
|
|
267 .align 2
|
|
|
268 .L19:
|
|
|
269 0000 A2000000 .word .L18
|
|
|
270 0004 C4000000 .word .L20
|
|
|
271 0008 CC000000 .word .L21
|
|
|
272 000c D8000000 .word .L22
|
|
|
273 0010 E6000000 .word .L23
|
|
|
274 0014 10010000 .word .L24
|
|
|
275 0018 1C010000 .word .L25
|
|
|
276 001c 5A010000 .word .L26
|
|
|
277 .section .text.McpsIndication
|
|
|
278 .L18:
|
|
|
279 .LBB3:
|
|
|
418:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.Running = false;
|
|
|
280 .loc 1 418 0
|
|
|
281 00a2 4C4B ldr r3, .L34
|
|
|
282 00a4 0022 movs r2, #0
|
|
|
283 00a6 9A81 strh r2, [r3, #12]
|
|
|
419:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
284 .loc 1 419 0
|
|
|
285 00a8 1A70 strb r2, [r3]
|
|
|
422:./Middlewares/Third_Party/Lora/Core/lora.c **** _mibReq.Param.AdrEnable = LoRaParamInit->AdrEnable;
|
|
|
286 .loc 1 422 0
|
|
|
287 00aa 03A8 add r0, sp, #12
|
|
|
288 .LVL7:
|
|
|
289 00ac 0223 movs r3, #2
|
|
|
290 00ae 0370 strb r3, [r0]
|
|
|
423:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &_mibReq );
|
|
|
291 .loc 1 423 0
|
|
|
292 00b0 4C4B ldr r3, .L34+16
|
|
|
293 00b2 1B68 ldr r3, [r3]
|
|
|
294 00b4 5B7A ldrb r3, [r3, #9]
|
|
|
295 00b6 0371 strb r3, [r0, #4]
|
|
|
424:./Middlewares/Third_Party/Lora/Core/lora.c **** #if defined( REGION_EU868 )
|
|
|
296 .loc 1 424 0
|
|
|
297 00b8 FFF7FEFF bl LoRaMacMibSetRequestConfirm
|
|
|
298 .LVL8:
|
|
|
426:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
299 .loc 1 426 0
|
|
|
300 00bc 0120 movs r0, #1
|
|
|
301 00be FFF7FEFF bl LoRaMacTestSetDutyCycleOn
|
|
|
302 .LVL9:
|
|
|
428:./Middlewares/Third_Party/Lora/Core/lora.c **** case 1: // (iii, iv)
|
|
|
303 .loc 1 428 0
|
|
|
304 00c2 85E0 b .L11
|
|
|
305 .LVL10:
|
|
|
306 .L20:
|
|
|
430:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
307 .loc 1 430 0
|
|
|
308 00c4 454B ldr r3, .L34+8
|
|
|
ARM GAS /tmp/ccY05lmV.s page 17
|
|
|
|
|
|
|
|
|
309 00c6 0222 movs r2, #2
|
|
|
310 00c8 1A71 strb r2, [r3, #4]
|
|
|
431:./Middlewares/Third_Party/Lora/Core/lora.c **** case 2: // Enable confirmed messages (v)
|
|
|
311 .loc 1 431 0
|
|
|
312 00ca 81E0 b .L11
|
|
|
313 .L21:
|
|
|
433:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.State = 1;
|
|
|
314 .loc 1 433 0
|
|
|
315 00cc 0123 movs r3, #1
|
|
|
316 00ce 424A ldr r2, .L34+4
|
|
|
317 00d0 1370 strb r3, [r2]
|
|
|
434:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
318 .loc 1 434 0
|
|
|
319 00d2 404A ldr r2, .L34
|
|
|
320 00d4 5370 strb r3, [r2, #1]
|
|
|
435:./Middlewares/Third_Party/Lora/Core/lora.c **** case 3: // Disable confirmed messages (vi)
|
|
|
321 .loc 1 435 0
|
|
|
322 00d6 7BE0 b .L11
|
|
|
323 .L22:
|
|
|
437:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.State = 1;
|
|
|
324 .loc 1 437 0
|
|
|
325 00d8 3F4B ldr r3, .L34+4
|
|
|
326 00da 0022 movs r2, #0
|
|
|
327 00dc 1A70 strb r2, [r3]
|
|
|
438:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
328 .loc 1 438 0
|
|
|
329 00de 3D4B ldr r3, .L34
|
|
|
330 00e0 0132 adds r2, r2, #1
|
|
|
331 00e2 5A70 strb r2, [r3, #1]
|
|
|
439:./Middlewares/Third_Party/Lora/Core/lora.c **** case 4: // (vii)
|
|
|
332 .loc 1 439 0
|
|
|
333 00e4 74E0 b .L11
|
|
|
334 .L23:
|
|
|
441:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
335 .loc 1 441 0
|
|
|
336 00e6 027B ldrb r2, [r0, #12]
|
|
|
337 00e8 3C4B ldr r3, .L34+8
|
|
|
338 00ea 1A71 strb r2, [r3, #4]
|
|
|
443:./Middlewares/Third_Party/Lora/Core/lora.c **** for( uint8_t i = 1; i < AppData.BuffSize; i++ )
|
|
|
339 .loc 1 443 0
|
|
|
340 00ec 1B68 ldr r3, [r3]
|
|
|
341 00ee 0422 movs r2, #4
|
|
|
342 00f0 1A70 strb r2, [r3]
|
|
|
343 .LVL11:
|
|
|
344 .LBB4:
|
|
|
444:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
345 .loc 1 444 0
|
|
|
346 00f2 0123 movs r3, #1
|
|
|
347 00f4 07E0 b .L27
|
|
|
348 .LVL12:
|
|
|
349 .L28:
|
|
|
446:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
350 .loc 1 446 0 discriminator 3
|
|
|
351 00f6 8268 ldr r2, [r0, #8]
|
|
|
352 00f8 D25C ldrb r2, [r2, r3]
|
|
|
353 00fa 3849 ldr r1, .L34+8
|
|
|
354 00fc 0968 ldr r1, [r1]
|
|
|
ARM GAS /tmp/ccY05lmV.s page 18
|
|
|
|
|
|
|
|
|
355 00fe 0132 adds r2, r2, #1
|
|
|
356 0100 CA54 strb r2, [r1, r3]
|
|
|
444:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
357 .loc 1 444 0 discriminator 3
|
|
|
358 0102 0133 adds r3, r3, #1
|
|
|
359 .LVL13:
|
|
|
360 0104 DBB2 uxtb r3, r3
|
|
|
361 .LVL14:
|
|
|
362 .L27:
|
|
|
444:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
363 .loc 1 444 0 is_stmt 0 discriminator 1
|
|
|
364 0106 354A ldr r2, .L34+8
|
|
|
365 0108 1279 ldrb r2, [r2, #4]
|
|
|
366 010a 9A42 cmp r2, r3
|
|
|
367 010c F3D8 bhi .L28
|
|
|
368 010e 5FE0 b .L11
|
|
|
369 .LVL15:
|
|
|
370 .L24:
|
|
|
371 .LBE4:
|
|
|
372 .LBB5:
|
|
|
452:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMlmeRequest( &mlmeReq );
|
|
|
373 .loc 1 452 0 is_stmt 1 discriminator 4
|
|
|
374 0110 03A8 add r0, sp, #12
|
|
|
375 .LVL16:
|
|
|
376 0112 0123 movs r3, #1
|
|
|
377 0114 0370 strb r3, [r0]
|
|
|
453:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
378 .loc 1 453 0 discriminator 4
|
|
|
379 0116 FFF7FEFF bl LoRaMacMlmeRequest
|
|
|
380 .LVL17:
|
|
|
381 .LBE5:
|
|
|
455:./Middlewares/Third_Party/Lora/Core/lora.c **** case 6: // (ix)
|
|
|
382 .loc 1 455 0 discriminator 4
|
|
|
383 011a 59E0 b .L11
|
|
|
384 .LVL18:
|
|
|
385 .L25:
|
|
|
386 .LBB6:
|
|
|
462:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.Running = false;
|
|
|
387 .loc 1 462 0 discriminator 5
|
|
|
388 011c 2D4B ldr r3, .L34
|
|
|
389 011e 0022 movs r2, #0
|
|
|
390 0120 9A81 strh r2, [r3, #12]
|
|
|
463:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
391 .loc 1 463 0 discriminator 5
|
|
|
392 0122 1A70 strb r2, [r3]
|
|
|
466:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.AdrEnable = LoRaParamInit->AdrEnable;
|
|
|
393 .loc 1 466 0 discriminator 5
|
|
|
394 0124 0223 movs r3, #2
|
|
|
395 0126 6A46 mov r2, sp
|
|
|
396 0128 1370 strb r3, [r2]
|
|
|
467:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
397 .loc 1 467 0 discriminator 5
|
|
|
398 012a 2E4B ldr r3, .L34+16
|
|
|
399 012c 1B68 ldr r3, [r3]
|
|
|
400 012e 5B7A ldrb r3, [r3, #9]
|
|
|
401 0130 1371 strb r3, [r2, #4]
|
|
|
468:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
ARM GAS /tmp/ccY05lmV.s page 19
|
|
|
|
|
|
|
|
|
402 .loc 1 468 0 discriminator 5
|
|
|
403 0132 6846 mov r0, sp
|
|
|
404 .LVL19:
|
|
|
405 0134 FFF7FEFF bl LoRaMacMibSetRequestConfirm
|
|
|
406 .LVL20:
|
|
|
470:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
407 .loc 1 470 0 discriminator 5
|
|
|
408 0138 03A8 add r0, sp, #12
|
|
|
409 013a 0023 movs r3, #0
|
|
|
410 013c 0370 strb r3, [r0]
|
|
|
472:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.AppEui = AppEui;
|
|
|
411 .loc 1 472 0 discriminator 5
|
|
|
412 013e 2A4B ldr r3, .L34+20
|
|
|
413 0140 4360 str r3, [r0, #4]
|
|
|
473:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.AppKey = AppKey;
|
|
|
414 .loc 1 473 0 discriminator 5
|
|
|
415 0142 2A4B ldr r3, .L34+24
|
|
|
416 0144 8360 str r3, [r0, #8]
|
|
|
474:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.NbTrials = 3;
|
|
|
417 .loc 1 474 0 discriminator 5
|
|
|
418 0146 2A4B ldr r3, .L34+28
|
|
|
419 0148 C360 str r3, [r0, #12]
|
|
|
475:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
420 .loc 1 475 0 discriminator 5
|
|
|
421 014a 0323 movs r3, #3
|
|
|
422 014c 0374 strb r3, [r0, #16]
|
|
|
477:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_SLEEP;
|
|
|
423 .loc 1 477 0 discriminator 5
|
|
|
424 014e FFF7FEFF bl LoRaMacMlmeRequest
|
|
|
425 .LVL21:
|
|
|
478:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
426 .loc 1 478 0 discriminator 5
|
|
|
427 0152 284B ldr r3, .L34+32
|
|
|
428 0154 0522 movs r2, #5
|
|
|
429 0156 1A70 strb r2, [r3]
|
|
|
430 .LBE6:
|
|
|
480:./Middlewares/Third_Party/Lora/Core/lora.c **** case 7: // (x)
|
|
|
431 .loc 1 480 0 discriminator 5
|
|
|
432 0158 3AE0 b .L11
|
|
|
433 .LVL22:
|
|
|
434 .L26:
|
|
|
483:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
435 .loc 1 483 0
|
|
|
436 015a 037B ldrb r3, [r0, #12]
|
|
|
437 015c 032B cmp r3, #3
|
|
|
438 015e 05D0 beq .L32
|
|
|
490:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
439 .loc 1 490 0
|
|
|
440 0160 072B cmp r3, #7
|
|
|
441 0162 0ED0 beq .L33
|
|
|
442 .LVL23:
|
|
|
443 .L30:
|
|
|
499:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
444 .loc 1 499 0
|
|
|
445 0164 1B4B ldr r3, .L34
|
|
|
446 0166 0122 movs r2, #1
|
|
|
447 0168 5A70 strb r2, [r3, #1]
|
|
|
ARM GAS /tmp/ccY05lmV.s page 20
|
|
|
|
|
|
|
|
|
501:./Middlewares/Third_Party/Lora/Core/lora.c **** default:
|
|
|
448 .loc 1 501 0
|
|
|
449 016a 31E0 b .L11
|
|
|
450 .LVL24:
|
|
|
451 .L32:
|
|
|
452 .LBB7:
|
|
|
486:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.TxCw.Timeout = ( uint16_t )( ( mcpsIndication->Buffer[1] <<
|
|
|
453 .loc 1 486 0
|
|
|
454 016c 03A8 add r0, sp, #12
|
|
|
455 .LVL25:
|
|
|
456 016e 013B subs r3, r3, #1
|
|
|
457 0170 0370 strb r3, [r0]
|
|
|
487:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMlmeRequest( &mlmeReq );
|
|
|
458 .loc 1 487 0
|
|
|
459 0172 5178 ldrb r1, [r2, #1]
|
|
|
460 0174 0902 lsls r1, r1, #8
|
|
|
461 0176 9378 ldrb r3, [r2, #2]
|
|
|
462 0178 0B43 orrs r3, r1
|
|
|
463 017a 8380 strh r3, [r0, #4]
|
|
|
488:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
464 .loc 1 488 0
|
|
|
465 017c FFF7FEFF bl LoRaMacMlmeRequest
|
|
|
466 .LVL26:
|
|
|
467 .LBE7:
|
|
|
468 0180 F0E7 b .L30
|
|
|
469 .LVL27:
|
|
|
470 .L33:
|
|
|
471 .LBB8:
|
|
|
493:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.TxCw.Timeout = ( uint16_t )( ( mcpsIndication->Buffer[1] <<
|
|
|
472 .loc 1 493 0
|
|
|
473 0182 03A9 add r1, sp, #12
|
|
|
474 0184 043B subs r3, r3, #4
|
|
|
475 0186 0B70 strb r3, [r1]
|
|
|
494:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.TxCw.Frequency = ( uint32_t )( ( mcpsIndication->Buffer[3]
|
|
|
476 .loc 1 494 0
|
|
|
477 0188 5478 ldrb r4, [r2, #1]
|
|
|
478 018a 2402 lsls r4, r4, #8
|
|
|
479 018c 9378 ldrb r3, [r2, #2]
|
|
|
480 018e 2343 orrs r3, r4
|
|
|
481 0190 8B80 strh r3, [r1, #4]
|
|
|
495:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.TxCw.Power = mcpsIndication->Buffer[6];
|
|
|
482 .loc 1 495 0
|
|
|
483 0192 D378 ldrb r3, [r2, #3]
|
|
|
484 0194 1B04 lsls r3, r3, #16
|
|
|
485 0196 1479 ldrb r4, [r2, #4]
|
|
|
486 0198 2402 lsls r4, r4, #8
|
|
|
487 019a 2343 orrs r3, r4
|
|
|
488 019c 5279 ldrb r2, [r2, #5]
|
|
|
489 019e 1343 orrs r3, r2
|
|
|
490 01a0 6422 movs r2, #100
|
|
|
491 01a2 5343 muls r3, r2
|
|
|
492 01a4 0593 str r3, [sp, #20]
|
|
|
496:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMlmeRequest( &mlmeReq );
|
|
|
493 .loc 1 496 0
|
|
|
494 01a6 8368 ldr r3, [r0, #8]
|
|
|
495 01a8 9B79 ldrb r3, [r3, #6]
|
|
|
496 01aa 0B73 strb r3, [r1, #12]
|
|
|
ARM GAS /tmp/ccY05lmV.s page 21
|
|
|
|
|
|
|
|
|
497:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
497 .loc 1 497 0
|
|
|
498 01ac 0800 movs r0, r1
|
|
|
499 .LVL28:
|
|
|
500 01ae FFF7FEFF bl LoRaMacMlmeRequest
|
|
|
501 .LVL29:
|
|
|
502 01b2 D7E7 b .L30
|
|
|
503 .LVL30:
|
|
|
504 .L31:
|
|
|
505 .LBE8:
|
|
|
506 .LBE3:
|
|
|
509:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.BuffSize = mcpsIndication->BufferSize;
|
|
|
507 .loc 1 509 0
|
|
|
508 01b4 094C ldr r4, .L34+8
|
|
|
509 01b6 6271 strb r2, [r4, #5]
|
|
|
510:./Middlewares/Third_Party/Lora/Core/lora.c **** memcpy1( AppData.Buff, mcpsIndication->Buffer, AppData.BuffSize );
|
|
|
510 .loc 1 510 0
|
|
|
511 01b8 027B ldrb r2, [r0, #12]
|
|
|
512 01ba 2271 strb r2, [r4, #4]
|
|
|
511:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
513 .loc 1 511 0
|
|
|
514 01bc 8168 ldr r1, [r0, #8]
|
|
|
515 01be 92B2 uxth r2, r2
|
|
|
516 01c0 2068 ldr r0, [r4]
|
|
|
517 .LVL31:
|
|
|
518 01c2 FFF7FEFF bl memcpy1
|
|
|
519 .LVL32:
|
|
|
513:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
520 .loc 1 513 0
|
|
|
521 01c6 0C4B ldr r3, .L34+36
|
|
|
522 01c8 1B68 ldr r3, [r3]
|
|
|
523 01ca 1B69 ldr r3, [r3, #16]
|
|
|
524 01cc 2000 movs r0, r4
|
|
|
525 01ce 9847 blx r3
|
|
|
526 .LVL33:
|
|
|
527 .L11:
|
|
|
517:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
528 .loc 1 517 0
|
|
|
529 01d0 08B0 add sp, sp, #32
|
|
|
530 @ sp needed
|
|
|
531 01d2 10BD pop {r4, pc}
|
|
|
532 .L35:
|
|
|
533 .align 2
|
|
|
534 .L34:
|
|
|
535 01d4 00000000 .word .LANCHOR2
|
|
|
536 01d8 00000000 .word .LANCHOR3
|
|
|
537 01dc 00000000 .word .LANCHOR4
|
|
|
538 01e0 00000000 .word .L19
|
|
|
539 01e4 00000000 .word .LANCHOR5
|
|
|
540 01e8 00000000 .word .LANCHOR6
|
|
|
541 01ec 00000000 .word .LANCHOR7
|
|
|
542 01f0 00000000 .word .LANCHOR8
|
|
|
543 01f4 00000000 .word .LANCHOR1
|
|
|
544 01f8 00000000 .word .LANCHOR9
|
|
|
545 .cfi_endproc
|
|
|
546 .LFE101:
|
|
|
548 .section .text.OnSendEvent,"ax",%progbits
|
|
|
ARM GAS /tmp/ccY05lmV.s page 22
|
|
|
|
|
|
|
|
|
549 .align 1
|
|
|
550 .global OnSendEvent
|
|
|
551 .syntax unified
|
|
|
552 .code 16
|
|
|
553 .thumb_func
|
|
|
554 .fpu softvfp
|
|
|
556 OnSendEvent:
|
|
|
557 .LFB98:
|
|
|
262:./Middlewares/Third_Party/Lora/Core/lora.c **** MibRequestConfirm_t _mibReq;
|
|
|
558 .loc 1 262 0
|
|
|
559 .cfi_startproc
|
|
|
560 @ args = 0, pretend = 0, frame = 16
|
|
|
561 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
562 0000 00B5 push {lr}
|
|
|
563 .LCFI2:
|
|
|
564 .cfi_def_cfa_offset 4
|
|
|
565 .cfi_offset 14, -4
|
|
|
566 0002 85B0 sub sp, sp, #20
|
|
|
567 .LCFI3:
|
|
|
568 .cfi_def_cfa_offset 24
|
|
|
266:./Middlewares/Third_Party/Lora/Core/lora.c **** status = LoRaMacMibGetRequestConfirm( &_mibReq );
|
|
|
569 .loc 1 266 0
|
|
|
570 0004 01A8 add r0, sp, #4
|
|
|
571 0006 0123 movs r3, #1
|
|
|
572 0008 0370 strb r3, [r0]
|
|
|
267:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
573 .loc 1 267 0
|
|
|
574 000a FFF7FEFF bl LoRaMacMibGetRequestConfirm
|
|
|
575 .LVL34:
|
|
|
269:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
576 .loc 1 269 0
|
|
|
577 000e 0028 cmp r0, #0
|
|
|
578 0010 06D1 bne .L36
|
|
|
271:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
579 .loc 1 271 0
|
|
|
580 0012 01AB add r3, sp, #4
|
|
|
581 0014 1B79 ldrb r3, [r3, #4]
|
|
|
582 0016 002B cmp r3, #0
|
|
|
583 0018 04D1 bne .L39
|
|
|
278:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
584 .loc 1 278 0
|
|
|
585 001a 064B ldr r3, .L40
|
|
|
586 001c 0122 movs r2, #1
|
|
|
587 001e 1A70 strb r2, [r3]
|
|
|
588 .L36:
|
|
|
281:./Middlewares/Third_Party/Lora/Core/lora.c **** /*!
|
|
|
589 .loc 1 281 0
|
|
|
590 0020 05B0 add sp, sp, #20
|
|
|
591 @ sp needed
|
|
|
592 0022 00BD pop {pc}
|
|
|
593 .L39:
|
|
|
273:./Middlewares/Third_Party/Lora/Core/lora.c **** NextTx = true;
|
|
|
594 .loc 1 273 0
|
|
|
595 0024 034B ldr r3, .L40
|
|
|
596 0026 0322 movs r2, #3
|
|
|
597 0028 1A70 strb r2, [r3]
|
|
|
274:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
ARM GAS /tmp/ccY05lmV.s page 23
|
|
|
|
|
|
|
|
|
598 .loc 1 274 0
|
|
|
599 002a 034B ldr r3, .L40+4
|
|
|
600 002c 023A subs r2, r2, #2
|
|
|
601 002e 1A70 strb r2, [r3]
|
|
|
602 0030 F6E7 b .L36
|
|
|
603 .L41:
|
|
|
604 0032 C046 .align 2
|
|
|
605 .L40:
|
|
|
606 0034 00000000 .word .LANCHOR1
|
|
|
607 0038 00000000 .word .LANCHOR0
|
|
|
608 .cfi_endproc
|
|
|
609 .LFE98:
|
|
|
611 .section .text.OnTxNextPacketTimerEvent,"ax",%progbits
|
|
|
612 .align 1
|
|
|
613 .syntax unified
|
|
|
614 .code 16
|
|
|
615 .thumb_func
|
|
|
616 .fpu softvfp
|
|
|
618 OnTxNextPacketTimerEvent:
|
|
|
619 .LFB99:
|
|
|
286:./Middlewares/Third_Party/Lora/Core/lora.c **** TimerStop( &TxNextPacketTimer );
|
|
|
620 .loc 1 286 0
|
|
|
621 .cfi_startproc
|
|
|
622 @ args = 0, pretend = 0, frame = 0
|
|
|
623 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
624 0000 10B5 push {r4, lr}
|
|
|
625 .LCFI4:
|
|
|
626 .cfi_def_cfa_offset 8
|
|
|
627 .cfi_offset 4, -8
|
|
|
628 .cfi_offset 14, -4
|
|
|
287:./Middlewares/Third_Party/Lora/Core/lora.c **** OnSendEvent();
|
|
|
629 .loc 1 287 0
|
|
|
630 0002 0348 ldr r0, .L43
|
|
|
631 0004 FFF7FEFF bl TimerStop
|
|
|
632 .LVL35:
|
|
|
288:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
633 .loc 1 288 0
|
|
|
634 0008 FFF7FEFF bl OnSendEvent
|
|
|
635 .LVL36:
|
|
|
289:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
636 .loc 1 289 0
|
|
|
637 @ sp needed
|
|
|
638 000c 10BD pop {r4, pc}
|
|
|
639 .L44:
|
|
|
640 000e C046 .align 2
|
|
|
641 .L43:
|
|
|
642 0010 00000000 .word .LANCHOR10
|
|
|
643 .cfi_endproc
|
|
|
644 .LFE99:
|
|
|
646 .section .text.lora_Init,"ax",%progbits
|
|
|
647 .align 1
|
|
|
648 .global lora_Init
|
|
|
649 .syntax unified
|
|
|
650 .code 16
|
|
|
651 .thumb_func
|
|
|
652 .fpu softvfp
|
|
|
654 lora_Init:
|
|
|
ARM GAS /tmp/ccY05lmV.s page 24
|
|
|
|
|
|
|
|
|
655 .LFB103:
|
|
|
563:./Middlewares/Third_Party/Lora/Core/lora.c **** /**
|
|
|
564:./Middlewares/Third_Party/Lora/Core/lora.c **** * lora Init
|
|
|
565:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
566:./Middlewares/Third_Party/Lora/Core/lora.c **** void lora_Init (LoRaMainCallback_t *callbacks, LoRaParam_t* LoRaParam )
|
|
|
567:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
656 .loc 1 567 0
|
|
|
657 .cfi_startproc
|
|
|
658 @ args = 0, pretend = 0, frame = 0
|
|
|
659 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
660 .LVL37:
|
|
|
661 0000 10B5 push {r4, lr}
|
|
|
662 .LCFI5:
|
|
|
663 .cfi_def_cfa_offset 8
|
|
|
664 .cfi_offset 4, -8
|
|
|
665 .cfi_offset 14, -4
|
|
|
568:./Middlewares/Third_Party/Lora/Core/lora.c **** /* init the DeviceState*/
|
|
|
569:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState= DEVICE_STATE_INIT;
|
|
|
666 .loc 1 569 0
|
|
|
667 0002 224B ldr r3, .L52
|
|
|
668 0004 0022 movs r2, #0
|
|
|
669 0006 1A70 strb r2, [r3]
|
|
|
570:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
571:./Middlewares/Third_Party/Lora/Core/lora.c **** /* init the Tx Duty Cycle*/
|
|
|
572:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaParamInit = LoRaParam;
|
|
|
670 .loc 1 572 0
|
|
|
671 0008 214B ldr r3, .L52+4
|
|
|
672 000a 1960 str r1, [r3]
|
|
|
573:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
574:./Middlewares/Third_Party/Lora/Core/lora.c **** /* init the main call backs*/
|
|
|
575:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMainCallbacks = callbacks;
|
|
|
673 .loc 1 575 0
|
|
|
674 000c 214B ldr r3, .L52+8
|
|
|
675 000e 1860 str r0, [r3]
|
|
|
576:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
577:./Middlewares/Third_Party/Lora/Core/lora.c **** #if (STATIC_DEVICE_EUI != 1)
|
|
|
578:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMainCallbacks->BoardGetUniqueId( DevEui );
|
|
|
676 .loc 1 578 0
|
|
|
677 0010 4368 ldr r3, [r0, #4]
|
|
|
678 0012 214C ldr r4, .L52+12
|
|
|
679 0014 2000 movs r0, r4
|
|
|
680 .LVL38:
|
|
|
681 0016 9847 blx r3
|
|
|
682 .LVL39:
|
|
|
579:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
580:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
581:./Middlewares/Third_Party/Lora/Core/lora.c **** #if( OVER_THE_AIR_ACTIVATION != 0 )
|
|
|
582:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
583:./Middlewares/Third_Party/Lora/Core/lora.c **** PRINTF("OTAA\n\r");
|
|
|
683 .loc 1 583 0
|
|
|
684 0018 2048 ldr r0, .L52+16
|
|
|
685 001a FFF7FEFF bl vcom_Send
|
|
|
686 .LVL40:
|
|
|
584:./Middlewares/Third_Party/Lora/Core/lora.c **** PRINTF("DevEui= %02X", DevEui[0]) ;for(int i=1; i<8 ; i++) {PRINTF("-%02X", DevEui[i]); }; PRINTF
|
|
|
687 .loc 1 584 0
|
|
|
688 001e 2178 ldrb r1, [r4]
|
|
|
689 0020 1F48 ldr r0, .L52+20
|
|
|
ARM GAS /tmp/ccY05lmV.s page 25
|
|
|
|
|
|
|
|
|
690 0022 FFF7FEFF bl vcom_Send
|
|
|
691 .LVL41:
|
|
|
692 .LBB9:
|
|
|
693 0026 0124 movs r4, #1
|
|
|
694 0028 05E0 b .L46
|
|
|
695 .LVL42:
|
|
|
696 .L47:
|
|
|
697 .loc 1 584 0 is_stmt 0 discriminator 3
|
|
|
698 002a 1B4B ldr r3, .L52+12
|
|
|
699 002c 195D ldrb r1, [r3, r4]
|
|
|
700 002e 1D48 ldr r0, .L52+24
|
|
|
701 0030 FFF7FEFF bl vcom_Send
|
|
|
702 .LVL43:
|
|
|
703 0034 0134 adds r4, r4, #1
|
|
|
704 .LVL44:
|
|
|
705 .L46:
|
|
|
706 .loc 1 584 0 discriminator 1
|
|
|
707 0036 072C cmp r4, #7
|
|
|
708 0038 F7DD ble .L47
|
|
|
709 .LBE9:
|
|
|
710 .loc 1 584 0 discriminator 4
|
|
|
711 003a 1B48 ldr r0, .L52+28
|
|
|
712 003c FFF7FEFF bl vcom_Send
|
|
|
713 .LVL45:
|
|
|
585:./Middlewares/Third_Party/Lora/Core/lora.c **** PRINTF("AppEui= %02X", AppEui[0]) ;for(int i=1; i<8 ; i++) {PRINTF("-%02X", AppEui[i]); }; PRINTF
|
|
|
714 .loc 1 585 0 is_stmt 1 discriminator 4
|
|
|
715 0040 1A4B ldr r3, .L52+32
|
|
|
716 0042 1978 ldrb r1, [r3]
|
|
|
717 0044 1A48 ldr r0, .L52+36
|
|
|
718 0046 FFF7FEFF bl vcom_Send
|
|
|
719 .LVL46:
|
|
|
720 .LBB10:
|
|
|
721 004a 0124 movs r4, #1
|
|
|
722 .LVL47:
|
|
|
723 004c 05E0 b .L48
|
|
|
724 .LVL48:
|
|
|
725 .L49:
|
|
|
726 .loc 1 585 0 is_stmt 0 discriminator 3
|
|
|
727 004e 174B ldr r3, .L52+32
|
|
|
728 0050 195D ldrb r1, [r3, r4]
|
|
|
729 0052 1448 ldr r0, .L52+24
|
|
|
730 0054 FFF7FEFF bl vcom_Send
|
|
|
731 .LVL49:
|
|
|
732 0058 0134 adds r4, r4, #1
|
|
|
733 .LVL50:
|
|
|
734 .L48:
|
|
|
735 .loc 1 585 0 discriminator 1
|
|
|
736 005a 072C cmp r4, #7
|
|
|
737 005c F7DD ble .L49
|
|
|
738 .LBE10:
|
|
|
739 .loc 1 585 0 discriminator 4
|
|
|
740 005e 1248 ldr r0, .L52+28
|
|
|
741 0060 FFF7FEFF bl vcom_Send
|
|
|
742 .LVL51:
|
|
|
586:./Middlewares/Third_Party/Lora/Core/lora.c **** PRINTF("AppKey= %02X", AppKey[0]) ;for(int i=1; i<16; i++) {PRINTF(" %02X", AppKey[i]); }; PRINTF
|
|
|
743 .loc 1 586 0 is_stmt 1 discriminator 4
|
|
|
744 0064 134B ldr r3, .L52+40
|
|
|
ARM GAS /tmp/ccY05lmV.s page 26
|
|
|
|
|
|
|
|
|
745 0066 1978 ldrb r1, [r3]
|
|
|
746 0068 1348 ldr r0, .L52+44
|
|
|
747 006a FFF7FEFF bl vcom_Send
|
|
|
748 .LVL52:
|
|
|
749 .LBB11:
|
|
|
750 006e 0124 movs r4, #1
|
|
|
751 .LVL53:
|
|
|
752 0070 05E0 b .L50
|
|
|
753 .LVL54:
|
|
|
754 .L51:
|
|
|
755 .loc 1 586 0 is_stmt 0 discriminator 3
|
|
|
756 0072 104B ldr r3, .L52+40
|
|
|
757 0074 195D ldrb r1, [r3, r4]
|
|
|
758 0076 1148 ldr r0, .L52+48
|
|
|
759 0078 FFF7FEFF bl vcom_Send
|
|
|
760 .LVL55:
|
|
|
761 007c 0134 adds r4, r4, #1
|
|
|
762 .LVL56:
|
|
|
763 .L50:
|
|
|
764 .loc 1 586 0 discriminator 1
|
|
|
765 007e 0F2C cmp r4, #15
|
|
|
766 0080 F7DD ble .L51
|
|
|
767 .LBE11:
|
|
|
768 .loc 1 586 0 discriminator 4
|
|
|
769 0082 0F48 ldr r0, .L52+52
|
|
|
770 0084 FFF7FEFF bl vcom_Send
|
|
|
771 .LVL57:
|
|
|
587:./Middlewares/Third_Party/Lora/Core/lora.c **** #else
|
|
|
588:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
589:./Middlewares/Third_Party/Lora/Core/lora.c **** #if (STATIC_DEVICE_ADDRESS != 1)
|
|
|
590:./Middlewares/Third_Party/Lora/Core/lora.c **** // Random seed initialization
|
|
|
591:./Middlewares/Third_Party/Lora/Core/lora.c **** srand1( LoRaMainCallbacks->BoardGetRandomSeed( ) );
|
|
|
592:./Middlewares/Third_Party/Lora/Core/lora.c **** // Choose a random device address
|
|
|
593:./Middlewares/Third_Party/Lora/Core/lora.c **** DevAddr = randr( 0, 0x01FFFFFF );
|
|
|
594:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
595:./Middlewares/Third_Party/Lora/Core/lora.c **** PRINTF("ABP\n\r");
|
|
|
596:./Middlewares/Third_Party/Lora/Core/lora.c **** PRINTF("DevEui= %02X", DevEui[0]) ;for(int i=1; i<8 ; i++) {PRINTF("-%02X", DevEui[i]); }; PRINTF
|
|
|
597:./Middlewares/Third_Party/Lora/Core/lora.c **** PRINTF("DevAdd= %08X\n\r", DevAddr) ;
|
|
|
598:./Middlewares/Third_Party/Lora/Core/lora.c **** PRINTF("NwkSKey= %02X", NwkSKey[0]) ;for(int i=1; i<16 ; i++) {PRINTF(" %02X", NwkSKey[i]); }; PR
|
|
|
599:./Middlewares/Third_Party/Lora/Core/lora.c **** PRINTF("AppSKey= %02X", AppSKey[0]) ;for(int i=1; i<16 ; i++) {PRINTF(" %02X", AppSKey[i]); }; PR
|
|
|
600:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
601:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
602:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
772 .loc 1 602 0 is_stmt 1 discriminator 4
|
|
|
773 @ sp needed
|
|
|
774 .LVL58:
|
|
|
775 0088 10BD pop {r4, pc}
|
|
|
776 .L53:
|
|
|
777 008a C046 .align 2
|
|
|
778 .L52:
|
|
|
779 008c 00000000 .word .LANCHOR1
|
|
|
780 0090 00000000 .word .LANCHOR5
|
|
|
781 0094 00000000 .word .LANCHOR9
|
|
|
782 0098 00000000 .word .LANCHOR6
|
|
|
783 009c 00000000 .word .LC21
|
|
|
784 00a0 08000000 .word .LC23
|
|
|
785 00a4 18000000 .word .LC25
|
|
|
ARM GAS /tmp/ccY05lmV.s page 27
|
|
|
|
|
|
|
|
|
786 00a8 20000000 .word .LC27
|
|
|
787 00ac 00000000 .word .LANCHOR7
|
|
|
788 00b0 24000000 .word .LC30
|
|
|
789 00b4 00000000 .word .LANCHOR8
|
|
|
790 00b8 34000000 .word .LC33
|
|
|
791 00bc 44000000 .word .LC35
|
|
|
792 00c0 4C000000 .word .LC37
|
|
|
793 .cfi_endproc
|
|
|
794 .LFE103:
|
|
|
796 .section .text.lora_fsm,"ax",%progbits
|
|
|
797 .align 1
|
|
|
798 .global lora_fsm
|
|
|
799 .syntax unified
|
|
|
800 .code 16
|
|
|
801 .thumb_func
|
|
|
802 .fpu softvfp
|
|
|
804 lora_fsm:
|
|
|
805 .LFB104:
|
|
|
603:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
604:./Middlewares/Third_Party/Lora/Core/lora.c **** /**
|
|
|
605:./Middlewares/Third_Party/Lora/Core/lora.c **** * lora class A state machine
|
|
|
606:./Middlewares/Third_Party/Lora/Core/lora.c **** */
|
|
|
607:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
608:./Middlewares/Third_Party/Lora/Core/lora.c **** void lora_fsm( void)
|
|
|
609:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
806 .loc 1 609 0
|
|
|
807 .cfi_startproc
|
|
|
808 @ args = 0, pretend = 0, frame = 24
|
|
|
809 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
810 0000 30B5 push {r4, r5, lr}
|
|
|
811 .LCFI6:
|
|
|
812 .cfi_def_cfa_offset 12
|
|
|
813 .cfi_offset 4, -12
|
|
|
814 .cfi_offset 5, -8
|
|
|
815 .cfi_offset 14, -4
|
|
|
816 0002 87B0 sub sp, sp, #28
|
|
|
817 .LCFI7:
|
|
|
818 .cfi_def_cfa_offset 40
|
|
|
610:./Middlewares/Third_Party/Lora/Core/lora.c **** switch( DeviceState )
|
|
|
819 .loc 1 610 0
|
|
|
820 0004 7E4B ldr r3, .L82
|
|
|
821 0006 1A78 ldrb r2, [r3]
|
|
|
822 0008 052A cmp r2, #5
|
|
|
823 000a 00D9 bls .LCB684
|
|
|
824 000c F4E0 b .L55 @long jump
|
|
|
825 .LCB684:
|
|
|
826 000e 9300 lsls r3, r2, #2
|
|
|
827 0010 7C4A ldr r2, .L82+4
|
|
|
828 0012 D358 ldr r3, [r2, r3]
|
|
|
829 0014 9F46 mov pc, r3
|
|
|
830 .section .rodata.lora_fsm,"a",%progbits
|
|
|
831 .align 2
|
|
|
832 .L57:
|
|
|
833 0000 16000000 .word .L56
|
|
|
834 0004 80000000 .word .L58
|
|
|
835 0008 B2000000 .word .L59
|
|
|
836 000c C0000000 .word .L60
|
|
|
ARM GAS /tmp/ccY05lmV.s page 28
|
|
|
|
|
|
|
|
|
837 0010 F8010000 .word .L55
|
|
|
838 0014 7C000000 .word .L54
|
|
|
839 .section .text.lora_fsm
|
|
|
840 .L56:
|
|
|
611:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
612:./Middlewares/Third_Party/Lora/Core/lora.c **** case DEVICE_STATE_INIT:
|
|
|
613:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
614:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacPrimitives.MacMcpsConfirm = McpsConfirm;
|
|
|
841 .loc 1 614 0
|
|
|
842 0016 7C48 ldr r0, .L82+8
|
|
|
843 0018 7C4B ldr r3, .L82+12
|
|
|
844 001a 0360 str r3, [r0]
|
|
|
615:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacPrimitives.MacMcpsIndication = McpsIndication;
|
|
|
845 .loc 1 615 0
|
|
|
846 001c 7C4B ldr r3, .L82+16
|
|
|
847 001e 4360 str r3, [r0, #4]
|
|
|
616:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacPrimitives.MacMlmeConfirm = MlmeConfirm;
|
|
|
848 .loc 1 616 0
|
|
|
849 0020 7C4B ldr r3, .L82+20
|
|
|
850 0022 8360 str r3, [r0, #8]
|
|
|
617:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacCallbacks.GetBatteryLevel = LoRaMainCallbacks->BoardGetBatteryLevel;
|
|
|
851 .loc 1 617 0
|
|
|
852 0024 7C4B ldr r3, .L82+24
|
|
|
853 0026 1B68 ldr r3, [r3]
|
|
|
854 0028 1B68 ldr r3, [r3]
|
|
|
855 002a 7C49 ldr r1, .L82+28
|
|
|
856 002c 0B60 str r3, [r1]
|
|
|
618:./Middlewares/Third_Party/Lora/Core/lora.c **** #if defined( REGION_AS923 )
|
|
|
619:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks, LORAMAC_REGION_AS923
|
|
|
620:./Middlewares/Third_Party/Lora/Core/lora.c **** #elif defined( REGION_AU915 )
|
|
|
621:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks, LORAMAC_REGION_AU915
|
|
|
622:./Middlewares/Third_Party/Lora/Core/lora.c **** #elif defined( REGION_CN470 )
|
|
|
623:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks, LORAMAC_REGION_CN470
|
|
|
624:./Middlewares/Third_Party/Lora/Core/lora.c **** #elif defined( REGION_CN779 )
|
|
|
625:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks, LORAMAC_REGION_CN779
|
|
|
626:./Middlewares/Third_Party/Lora/Core/lora.c **** #elif defined( REGION_EU433 )
|
|
|
627:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks, LORAMAC_REGION_EU433
|
|
|
628:./Middlewares/Third_Party/Lora/Core/lora.c **** #elif defined( REGION_IN865 )
|
|
|
629:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks, LORAMAC_REGION_IN865
|
|
|
630:./Middlewares/Third_Party/Lora/Core/lora.c **** #elif defined( REGION_EU868 )
|
|
|
631:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks, LORAMAC_REGION_EU868
|
|
|
857 .loc 1 631 0
|
|
|
858 002e 0522 movs r2, #5
|
|
|
859 0030 FFF7FEFF bl LoRaMacInitialization
|
|
|
860 .LVL59:
|
|
|
632:./Middlewares/Third_Party/Lora/Core/lora.c **** #elif defined( REGION_KR920 )
|
|
|
633:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks, LORAMAC_REGION_KR920
|
|
|
634:./Middlewares/Third_Party/Lora/Core/lora.c **** #elif defined( REGION_US915 )
|
|
|
635:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks, LORAMAC_REGION_US915
|
|
|
636:./Middlewares/Third_Party/Lora/Core/lora.c **** #elif defined( REGION_US915_HYBRID )
|
|
|
637:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks, LORAMAC_REGION_US915_
|
|
|
638:./Middlewares/Third_Party/Lora/Core/lora.c **** #else
|
|
|
639:./Middlewares/Third_Party/Lora/Core/lora.c **** #error "Please define a region in the compiler options."
|
|
|
640:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
641:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
642:./Middlewares/Third_Party/Lora/Core/lora.c **** TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent );
|
|
|
861 .loc 1 642 0
|
|
|
ARM GAS /tmp/ccY05lmV.s page 29
|
|
|
|
|
|
|
|
|
862 0034 7A49 ldr r1, .L82+32
|
|
|
863 0036 7B48 ldr r0, .L82+36
|
|
|
864 0038 FFF7FEFF bl TimerInit
|
|
|
865 .LVL60:
|
|
|
643:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
644:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Type = MIB_ADR;
|
|
|
866 .loc 1 644 0
|
|
|
867 003c 7A4C ldr r4, .L82+40
|
|
|
868 003e 0223 movs r3, #2
|
|
|
869 0040 2370 strb r3, [r4]
|
|
|
645:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.AdrEnable = LoRaParamInit->AdrEnable;
|
|
|
870 .loc 1 645 0
|
|
|
871 0042 7A4D ldr r5, .L82+44
|
|
|
872 0044 2B68 ldr r3, [r5]
|
|
|
873 0046 5B7A ldrb r3, [r3, #9]
|
|
|
874 0048 2371 strb r3, [r4, #4]
|
|
|
646:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
875 .loc 1 646 0
|
|
|
876 004a 2000 movs r0, r4
|
|
|
877 004c FFF7FEFF bl LoRaMacMibSetRequestConfirm
|
|
|
878 .LVL61:
|
|
|
647:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
648:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Type = MIB_PUBLIC_NETWORK;
|
|
|
879 .loc 1 648 0
|
|
|
880 0050 0723 movs r3, #7
|
|
|
881 0052 2370 strb r3, [r4]
|
|
|
649:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.EnablePublicNetwork = LoRaParamInit->EnablePublicNetwork;
|
|
|
882 .loc 1 649 0
|
|
|
883 0054 2B68 ldr r3, [r5]
|
|
|
884 0056 DB7A ldrb r3, [r3, #11]
|
|
|
885 0058 2371 strb r3, [r4, #4]
|
|
|
650:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
886 .loc 1 650 0
|
|
|
887 005a 2000 movs r0, r4
|
|
|
888 005c FFF7FEFF bl LoRaMacMibSetRequestConfirm
|
|
|
889 .LVL62:
|
|
|
651:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
652:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Type = MIB_DEVICE_CLASS;
|
|
|
890 .loc 1 652 0
|
|
|
891 0060 0023 movs r3, #0
|
|
|
892 0062 2370 strb r3, [r4]
|
|
|
653:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.Class= LoRaParamInit->Class;
|
|
|
893 .loc 1 653 0
|
|
|
894 0064 2B68 ldr r3, [r5]
|
|
|
895 0066 1B7A ldrb r3, [r3, #8]
|
|
|
896 0068 2371 strb r3, [r4, #4]
|
|
|
654:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
897 .loc 1 654 0
|
|
|
898 006a 2000 movs r0, r4
|
|
|
899 006c FFF7FEFF bl LoRaMacMibSetRequestConfirm
|
|
|
900 .LVL63:
|
|
|
655:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
656:./Middlewares/Third_Party/Lora/Core/lora.c **** #if defined( REGION_EU868 )
|
|
|
657:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON );
|
|
|
901 .loc 1 657 0
|
|
|
902 0070 0120 movs r0, #1
|
|
|
903 0072 FFF7FEFF bl LoRaMacTestSetDutyCycleOn
|
|
|
ARM GAS /tmp/ccY05lmV.s page 30
|
|
|
|
|
|
|
|
|
904 .LVL64:
|
|
|
658:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
659:./Middlewares/Third_Party/Lora/Core/lora.c **** #if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 )
|
|
|
660:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 );
|
|
|
661:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 );
|
|
|
662:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 );
|
|
|
663:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 );
|
|
|
664:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 );
|
|
|
665:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 );
|
|
|
666:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacChannelAdd( 9, ( ChannelParams_t )LC10 );
|
|
|
667:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
668:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Type = MIB_RX2_DEFAULT_CHANNEL;
|
|
|
669:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.Rx2DefaultChannel = ( Rx2ChannelParams_t ){ 869525000, DR_3 };
|
|
|
670:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
671:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
672:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Type = MIB_RX2_CHANNEL;
|
|
|
673:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.Rx2Channel = ( Rx2ChannelParams_t ){ 869525000, DR_3 };
|
|
|
674:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
675:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
676:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
677:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
678:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_JOIN;
|
|
|
905 .loc 1 678 0
|
|
|
906 0076 624B ldr r3, .L82
|
|
|
907 0078 0122 movs r2, #1
|
|
|
908 007a 1A70 strb r2, [r3]
|
|
|
909 .L54:
|
|
|
679:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
680:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
681:./Middlewares/Third_Party/Lora/Core/lora.c **** case DEVICE_STATE_JOIN:
|
|
|
682:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
683:./Middlewares/Third_Party/Lora/Core/lora.c **** #if( OVER_THE_AIR_ACTIVATION != 0 )
|
|
|
684:./Middlewares/Third_Party/Lora/Core/lora.c **** MlmeReq_t mlmeReq;
|
|
|
685:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
686:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Type = MLME_JOIN;
|
|
|
687:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.DevEui = DevEui;
|
|
|
688:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.AppEui = AppEui;
|
|
|
689:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.AppKey = AppKey;
|
|
|
690:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.NbTrials = LoRaParamInit->NbTrials;
|
|
|
691:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
692:./Middlewares/Third_Party/Lora/Core/lora.c **** if( NextTx == true )
|
|
|
693:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
694:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMlmeRequest( &mlmeReq );
|
|
|
695:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
696:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
697:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_SLEEP;
|
|
|
698:./Middlewares/Third_Party/Lora/Core/lora.c **** #else
|
|
|
699:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Type = MIB_NET_ID;
|
|
|
700:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.NetID = LORAWAN_NETWORK_ID;
|
|
|
701:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
702:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
703:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Type = MIB_DEV_ADDR;
|
|
|
704:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.DevAddr = DevAddr;
|
|
|
705:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
706:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
707:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Type = MIB_NWK_SKEY;
|
|
|
708:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.NwkSKey = NwkSKey;
|
|
|
ARM GAS /tmp/ccY05lmV.s page 31
|
|
|
|
|
|
|
|
|
709:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
710:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
711:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Type = MIB_APP_SKEY;
|
|
|
712:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.AppSKey = AppSKey;
|
|
|
713:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
714:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
715:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Type = MIB_NETWORK_JOINED;
|
|
|
716:./Middlewares/Third_Party/Lora/Core/lora.c **** mibReq.Param.IsNetworkJoined = true;
|
|
|
717:./Middlewares/Third_Party/Lora/Core/lora.c **** LoRaMacMibSetRequestConfirm( &mibReq );
|
|
|
718:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
719:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_SEND;
|
|
|
720:./Middlewares/Third_Party/Lora/Core/lora.c **** #endif
|
|
|
721:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
722:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
723:./Middlewares/Third_Party/Lora/Core/lora.c **** case DEVICE_STATE_JOINED:
|
|
|
724:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
725:./Middlewares/Third_Party/Lora/Core/lora.c **** PRINTF("JOINED\n\r");
|
|
|
726:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_SEND;
|
|
|
727:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
728:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
729:./Middlewares/Third_Party/Lora/Core/lora.c **** case DEVICE_STATE_SEND:
|
|
|
730:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
731:./Middlewares/Third_Party/Lora/Core/lora.c **** if( NextTx == true )
|
|
|
732:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
733:./Middlewares/Third_Party/Lora/Core/lora.c **** PrepareTxFrame( );
|
|
|
734:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
735:./Middlewares/Third_Party/Lora/Core/lora.c **** NextTx = SendFrame( );
|
|
|
736:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
737:./Middlewares/Third_Party/Lora/Core/lora.c **** if( ComplianceTest.Running == true )
|
|
|
738:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
739:./Middlewares/Third_Party/Lora/Core/lora.c **** // Schedule next packet transmission as soon as possible
|
|
|
740:./Middlewares/Third_Party/Lora/Core/lora.c **** TimerSetValue( &TxNextPacketTimer, 5000); /* 5s */
|
|
|
741:./Middlewares/Third_Party/Lora/Core/lora.c **** TimerStart( &TxNextPacketTimer );
|
|
|
742:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
743:./Middlewares/Third_Party/Lora/Core/lora.c **** else if (LoRaParamInit->TxEvent == TX_ON_TIMER )
|
|
|
744:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
745:./Middlewares/Third_Party/Lora/Core/lora.c **** // Schedule next packet transmission
|
|
|
746:./Middlewares/Third_Party/Lora/Core/lora.c **** TimerSetValue( &TxNextPacketTimer, LoRaParamInit->TxDutyCycleTime );
|
|
|
747:./Middlewares/Third_Party/Lora/Core/lora.c **** TimerStart( &TxNextPacketTimer );
|
|
|
748:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
749:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
750:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_SLEEP;
|
|
|
751:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
752:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
753:./Middlewares/Third_Party/Lora/Core/lora.c **** case DEVICE_STATE_SLEEP:
|
|
|
754:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
755:./Middlewares/Third_Party/Lora/Core/lora.c **** // Wake up through events
|
|
|
756:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
757:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
758:./Middlewares/Third_Party/Lora/Core/lora.c **** default:
|
|
|
759:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
760:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_INIT;
|
|
|
761:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
762:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
763:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
764:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
910 .loc 1 764 0
|
|
|
ARM GAS /tmp/ccY05lmV.s page 32
|
|
|
|
|
|
|
|
|
911 007c 07B0 add sp, sp, #28
|
|
|
912 @ sp needed
|
|
|
913 007e 30BD pop {r4, r5, pc}
|
|
|
914 .L58:
|
|
|
915 .LBB17:
|
|
|
686:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.DevEui = DevEui;
|
|
|
916 .loc 1 686 0
|
|
|
917 0080 01AB add r3, sp, #4
|
|
|
918 0082 0022 movs r2, #0
|
|
|
919 0084 1A70 strb r2, [r3]
|
|
|
687:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.AppEui = AppEui;
|
|
|
920 .loc 1 687 0
|
|
|
921 0086 6A4A ldr r2, .L82+48
|
|
|
922 0088 0292 str r2, [sp, #8]
|
|
|
688:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.AppKey = AppKey;
|
|
|
923 .loc 1 688 0
|
|
|
924 008a 6A4A ldr r2, .L82+52
|
|
|
925 008c 0392 str r2, [sp, #12]
|
|
|
689:./Middlewares/Third_Party/Lora/Core/lora.c **** mlmeReq.Req.Join.NbTrials = LoRaParamInit->NbTrials;
|
|
|
926 .loc 1 689 0
|
|
|
927 008e 6A4A ldr r2, .L82+56
|
|
|
928 0090 0492 str r2, [sp, #16]
|
|
|
690:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
929 .loc 1 690 0
|
|
|
930 0092 664A ldr r2, .L82+44
|
|
|
931 0094 1268 ldr r2, [r2]
|
|
|
932 0096 127B ldrb r2, [r2, #12]
|
|
|
933 0098 1A74 strb r2, [r3, #16]
|
|
|
692:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
934 .loc 1 692 0
|
|
|
935 009a 684B ldr r3, .L82+60
|
|
|
936 009c 1B78 ldrb r3, [r3]
|
|
|
937 009e 002B cmp r3, #0
|
|
|
938 00a0 03D1 bne .L75
|
|
|
939 .L62:
|
|
|
697:./Middlewares/Third_Party/Lora/Core/lora.c **** #else
|
|
|
940 .loc 1 697 0
|
|
|
941 00a2 574B ldr r3, .L82
|
|
|
942 00a4 0522 movs r2, #5
|
|
|
943 00a6 1A70 strb r2, [r3]
|
|
|
944 00a8 E8E7 b .L54
|
|
|
945 .L75:
|
|
|
694:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
946 .loc 1 694 0
|
|
|
947 00aa 01A8 add r0, sp, #4
|
|
|
948 00ac FFF7FEFF bl LoRaMacMlmeRequest
|
|
|
949 .LVL65:
|
|
|
950 00b0 F7E7 b .L62
|
|
|
951 .L59:
|
|
|
952 .LBE17:
|
|
|
725:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState = DEVICE_STATE_SEND;
|
|
|
953 .loc 1 725 0
|
|
|
954 00b2 6348 ldr r0, .L82+64
|
|
|
955 00b4 FFF7FEFF bl vcom_Send
|
|
|
956 .LVL66:
|
|
|
726:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
957 .loc 1 726 0
|
|
|
ARM GAS /tmp/ccY05lmV.s page 33
|
|
|
|
|
|
|
|
|
958 00b8 514B ldr r3, .L82
|
|
|
959 00ba 0322 movs r2, #3
|
|
|
960 00bc 1A70 strb r2, [r3]
|
|
|
727:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
961 .loc 1 727 0
|
|
|
962 00be DDE7 b .L54
|
|
|
963 .L60:
|
|
|
731:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
964 .loc 1 731 0
|
|
|
965 00c0 5E4B ldr r3, .L82+60
|
|
|
966 00c2 1C78 ldrb r4, [r3]
|
|
|
967 00c4 002C cmp r4, #0
|
|
|
968 00c6 0ED1 bne .L76
|
|
|
969 .L63:
|
|
|
737:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
970 .loc 1 737 0
|
|
|
971 00c8 5E4B ldr r3, .L82+68
|
|
|
972 00ca 1B78 ldrb r3, [r3]
|
|
|
973 00cc 002B cmp r3, #0
|
|
|
974 00ce 00D0 beq .LCB813
|
|
|
975 00d0 80E0 b .L77 @long jump
|
|
|
976 .LCB813:
|
|
|
743:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
977 .loc 1 743 0
|
|
|
978 00d2 564B ldr r3, .L82+44
|
|
|
979 00d4 1B68 ldr r3, [r3]
|
|
|
980 00d6 1A78 ldrb r2, [r3]
|
|
|
981 00d8 002A cmp r2, #0
|
|
|
982 00da 00D1 bne .LCB818
|
|
|
983 00dc 83E0 b .L78 @long jump
|
|
|
984 .LCB818:
|
|
|
985 .L74:
|
|
|
750:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
986 .loc 1 750 0
|
|
|
987 00de 484B ldr r3, .L82
|
|
|
988 00e0 0522 movs r2, #5
|
|
|
989 00e2 1A70 strb r2, [r3]
|
|
|
751:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
990 .loc 1 751 0
|
|
|
991 00e4 CAE7 b .L54
|
|
|
992 .L76:
|
|
|
993 .LBB18:
|
|
|
994 .LBB19:
|
|
|
184:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
995 .loc 1 184 0
|
|
|
996 00e6 574B ldr r3, .L82+68
|
|
|
997 00e8 1B78 ldrb r3, [r3]
|
|
|
998 00ea 002B cmp r3, #0
|
|
|
999 00ec 1ED1 bne .L79
|
|
|
212:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
1000 .loc 1 212 0
|
|
|
1001 00ee 4A4B ldr r3, .L82+24
|
|
|
1002 00f0 1B68 ldr r3, [r3]
|
|
|
1003 00f2 DB68 ldr r3, [r3, #12]
|
|
|
1004 00f4 5449 ldr r1, .L82+72
|
|
|
1005 00f6 5548 ldr r0, .L82+76
|
|
|
1006 00f8 9847 blx r3
|
|
|
ARM GAS /tmp/ccY05lmV.s page 34
|
|
|
|
|
|
|
|
|
1007 .LVL67:
|
|
|
1008 .L66:
|
|
|
1009 .LBE19:
|
|
|
1010 .LBE18:
|
|
|
1011 .LBB21:
|
|
|
1012 .LBB22:
|
|
|
226:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
1013 .loc 1 226 0
|
|
|
1014 00fa 544B ldr r3, .L82+76
|
|
|
1015 00fc 1879 ldrb r0, [r3, #4]
|
|
|
1016 00fe 6946 mov r1, sp
|
|
|
1017 0100 FFF7FEFF bl LoRaMacQueryTxPossible
|
|
|
1018 .LVL68:
|
|
|
1019 0104 0028 cmp r0, #0
|
|
|
1020 0106 3DD0 beq .L69
|
|
|
229:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.fBuffer = NULL;
|
|
|
1021 .loc 1 229 0
|
|
|
1022 0108 01AB add r3, sp, #4
|
|
|
1023 010a 0022 movs r2, #0
|
|
|
1024 010c 1A70 strb r2, [r3]
|
|
|
230:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.fBufferSize = 0;
|
|
|
1025 .loc 1 230 0
|
|
|
1026 010e 0392 str r2, [sp, #12]
|
|
|
231:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.Datarate = LoRaParamInit->TxDatarate;
|
|
|
1027 .loc 1 231 0
|
|
|
1028 0110 9A81 strh r2, [r3, #12]
|
|
|
232:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
1029 .loc 1 232 0
|
|
|
1030 0112 464A ldr r2, .L82+44
|
|
|
1031 0114 1268 ldr r2, [r2]
|
|
|
1032 0116 927A ldrb r2, [r2, #10]
|
|
|
1033 0118 52B2 sxtb r2, r2
|
|
|
1034 011a 9A73 strb r2, [r3, #14]
|
|
|
1035 .L70:
|
|
|
254:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
1036 .loc 1 254 0
|
|
|
1037 011c 01A8 add r0, sp, #4
|
|
|
1038 011e FFF7FEFF bl LoRaMacMcpsRequest
|
|
|
1039 .LVL69:
|
|
|
1040 0122 0028 cmp r0, #0
|
|
|
1041 0124 54D0 beq .L80
|
|
|
1042 .L72:
|
|
|
1043 .LBE22:
|
|
|
1044 .LBE21:
|
|
|
735:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
1045 .loc 1 735 0
|
|
|
1046 0126 454B ldr r3, .L82+60
|
|
|
1047 0128 1C70 strb r4, [r3]
|
|
|
1048 012a CDE7 b .L63
|
|
|
1049 .L79:
|
|
|
1050 .LBB24:
|
|
|
1051 .LBB20:
|
|
|
186:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
1052 .loc 1 186 0
|
|
|
1053 012c 454B ldr r3, .L82+68
|
|
|
1054 012e 9B7B ldrb r3, [r3, #14]
|
|
|
1055 0130 002B cmp r3, #0
|
|
|
ARM GAS /tmp/ccY05lmV.s page 35
|
|
|
|
|
|
|
|
|
1056 0132 09D1 bne .L81
|
|
|
197:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
1057 .loc 1 197 0
|
|
|
1058 0134 434B ldr r3, .L82+68
|
|
|
1059 0136 5B78 ldrb r3, [r3, #1]
|
|
|
1060 0138 012B cmp r3, #1
|
|
|
1061 013a 17D0 beq .L67
|
|
|
1062 013c 042B cmp r3, #4
|
|
|
1063 013e DCD1 bne .L66
|
|
|
200:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
1064 .loc 1 200 0
|
|
|
1065 0140 404B ldr r3, .L82+68
|
|
|
1066 0142 0122 movs r2, #1
|
|
|
1067 0144 5A70 strb r2, [r3, #1]
|
|
|
1068 0146 D8E7 b .L66
|
|
|
1069 .L81:
|
|
|
188:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.BuffSize = 3;
|
|
|
1070 .loc 1 188 0
|
|
|
1071 0148 3E4B ldr r3, .L82+68
|
|
|
1072 014a 0022 movs r2, #0
|
|
|
1073 014c 9A73 strb r2, [r3, #14]
|
|
|
189:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[0] = 5;
|
|
|
1074 .loc 1 189 0
|
|
|
1075 014e 3F4A ldr r2, .L82+76
|
|
|
1076 0150 0321 movs r1, #3
|
|
|
1077 0152 1171 strb r1, [r2, #4]
|
|
|
190:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[1] = ComplianceTest.DemodMargin;
|
|
|
1078 .loc 1 190 0
|
|
|
1079 0154 0231 adds r1, r1, #2
|
|
|
1080 0156 1068 ldr r0, [r2]
|
|
|
1081 0158 0170 strb r1, [r0]
|
|
|
191:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[2] = ComplianceTest.NbGateways;
|
|
|
1082 .loc 1 191 0
|
|
|
1083 015a D97B ldrb r1, [r3, #15]
|
|
|
1084 015c 1068 ldr r0, [r2]
|
|
|
1085 015e 4170 strb r1, [r0, #1]
|
|
|
192:./Middlewares/Third_Party/Lora/Core/lora.c **** ComplianceTest.State = 1;
|
|
|
1086 .loc 1 192 0
|
|
|
1087 0160 1268 ldr r2, [r2]
|
|
|
1088 0162 197C ldrb r1, [r3, #16]
|
|
|
1089 0164 9170 strb r1, [r2, #2]
|
|
|
193:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
1090 .loc 1 193 0
|
|
|
1091 0166 0122 movs r2, #1
|
|
|
1092 0168 5A70 strb r2, [r3, #1]
|
|
|
1093 016a C6E7 b .L66
|
|
|
1094 .L67:
|
|
|
203:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[0] = ComplianceTest.DownLinkCounter >> 8;
|
|
|
1095 .loc 1 203 0
|
|
|
1096 016c 374B ldr r3, .L82+76
|
|
|
1097 016e 0222 movs r2, #2
|
|
|
1098 0170 1A71 strb r2, [r3, #4]
|
|
|
204:./Middlewares/Third_Party/Lora/Core/lora.c **** AppData.Buff[1] = ComplianceTest.DownLinkCounter;
|
|
|
1099 .loc 1 204 0
|
|
|
1100 0172 3449 ldr r1, .L82+68
|
|
|
1101 0174 8A89 ldrh r2, [r1, #12]
|
|
|
1102 0176 120A lsrs r2, r2, #8
|
|
|
ARM GAS /tmp/ccY05lmV.s page 36
|
|
|
|
|
|
|
|
|
1103 0178 1868 ldr r0, [r3]
|
|
|
1104 017a 0270 strb r2, [r0]
|
|
|
205:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
1105 .loc 1 205 0
|
|
|
1106 017c 8A89 ldrh r2, [r1, #12]
|
|
|
1107 017e 1B68 ldr r3, [r3]
|
|
|
1108 0180 5A70 strb r2, [r3, #1]
|
|
|
1109 0182 BAE7 b .L66
|
|
|
1110 .L69:
|
|
|
1111 .LBE20:
|
|
|
1112 .LBE24:
|
|
|
1113 .LBB25:
|
|
|
1114 .LBB23:
|
|
|
236:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
1115 .loc 1 236 0
|
|
|
1116 0184 304B ldr r3, .L82+72
|
|
|
1117 0186 1B78 ldrb r3, [r3]
|
|
|
1118 0188 002B cmp r3, #0
|
|
|
1119 018a 0FD1 bne .L71
|
|
|
238:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.fPort = AppData.Port;
|
|
|
1120 .loc 1 238 0
|
|
|
1121 018c 01AB add r3, sp, #4
|
|
|
1122 018e 0022 movs r2, #0
|
|
|
1123 0190 1A70 strb r2, [r3]
|
|
|
239:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.fBuffer = AppData.Buff;
|
|
|
1124 .loc 1 239 0
|
|
|
1125 0192 2E4A ldr r2, .L82+76
|
|
|
1126 0194 5179 ldrb r1, [r2, #5]
|
|
|
1127 0196 1971 strb r1, [r3, #4]
|
|
|
240:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.fBufferSize = AppData.BuffSize;
|
|
|
1128 .loc 1 240 0
|
|
|
1129 0198 1168 ldr r1, [r2]
|
|
|
1130 019a 0391 str r1, [sp, #12]
|
|
|
241:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Unconfirmed.Datarate = LoRaParamInit->TxDatarate;
|
|
|
1131 .loc 1 241 0
|
|
|
1132 019c 1279 ldrb r2, [r2, #4]
|
|
|
1133 019e 9A81 strh r2, [r3, #12]
|
|
|
242:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
1134 .loc 1 242 0
|
|
|
1135 01a0 224A ldr r2, .L82+44
|
|
|
1136 01a2 1268 ldr r2, [r2]
|
|
|
1137 01a4 927A ldrb r2, [r2, #10]
|
|
|
1138 01a6 52B2 sxtb r2, r2
|
|
|
1139 01a8 9A73 strb r2, [r3, #14]
|
|
|
1140 01aa B7E7 b .L70
|
|
|
1141 .L71:
|
|
|
246:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Confirmed.fPort = AppData.Port;
|
|
|
1142 .loc 1 246 0
|
|
|
1143 01ac 01AB add r3, sp, #4
|
|
|
1144 01ae 0122 movs r2, #1
|
|
|
1145 01b0 1A70 strb r2, [r3]
|
|
|
247:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Confirmed.fBuffer = AppData.Buff;
|
|
|
1146 .loc 1 247 0
|
|
|
1147 01b2 264A ldr r2, .L82+76
|
|
|
1148 01b4 5179 ldrb r1, [r2, #5]
|
|
|
1149 01b6 1971 strb r1, [r3, #4]
|
|
|
248:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Confirmed.fBufferSize = AppData.BuffSize;
|
|
|
ARM GAS /tmp/ccY05lmV.s page 37
|
|
|
|
|
|
|
|
|
1150 .loc 1 248 0
|
|
|
1151 01b8 1168 ldr r1, [r2]
|
|
|
1152 01ba 0391 str r1, [sp, #12]
|
|
|
249:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Confirmed.NbTrials = 8;
|
|
|
1153 .loc 1 249 0
|
|
|
1154 01bc 1279 ldrb r2, [r2, #4]
|
|
|
1155 01be 9A81 strh r2, [r3, #12]
|
|
|
250:./Middlewares/Third_Party/Lora/Core/lora.c **** mcpsReq.Req.Confirmed.Datarate = LoRaParamInit->TxDatarate;
|
|
|
1156 .loc 1 250 0
|
|
|
1157 01c0 0822 movs r2, #8
|
|
|
1158 01c2 DA73 strb r2, [r3, #15]
|
|
|
251:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
1159 .loc 1 251 0
|
|
|
1160 01c4 194A ldr r2, .L82+44
|
|
|
1161 01c6 1268 ldr r2, [r2]
|
|
|
1162 01c8 927A ldrb r2, [r2, #10]
|
|
|
1163 01ca 52B2 sxtb r2, r2
|
|
|
1164 01cc 9A73 strb r2, [r3, #14]
|
|
|
1165 01ce A5E7 b .L70
|
|
|
1166 .L80:
|
|
|
256:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
1167 .loc 1 256 0
|
|
|
1168 01d0 0024 movs r4, #0
|
|
|
1169 01d2 A8E7 b .L72
|
|
|
1170 .L77:
|
|
|
1171 .LBE23:
|
|
|
1172 .LBE25:
|
|
|
740:./Middlewares/Third_Party/Lora/Core/lora.c **** TimerStart( &TxNextPacketTimer );
|
|
|
1173 .loc 1 740 0
|
|
|
1174 01d4 134C ldr r4, .L82+36
|
|
|
1175 01d6 1E49 ldr r1, .L82+80
|
|
|
1176 01d8 2000 movs r0, r4
|
|
|
1177 01da FFF7FEFF bl TimerSetValue
|
|
|
1178 .LVL70:
|
|
|
741:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
1179 .loc 1 741 0
|
|
|
1180 01de 2000 movs r0, r4
|
|
|
1181 01e0 FFF7FEFF bl TimerStart
|
|
|
1182 .LVL71:
|
|
|
1183 01e4 7BE7 b .L74
|
|
|
1184 .L78:
|
|
|
746:./Middlewares/Third_Party/Lora/Core/lora.c **** TimerStart( &TxNextPacketTimer );
|
|
|
1185 .loc 1 746 0
|
|
|
1186 01e6 5968 ldr r1, [r3, #4]
|
|
|
1187 01e8 0E4C ldr r4, .L82+36
|
|
|
1188 01ea 2000 movs r0, r4
|
|
|
1189 01ec FFF7FEFF bl TimerSetValue
|
|
|
1190 .LVL72:
|
|
|
747:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
1191 .loc 1 747 0
|
|
|
1192 01f0 2000 movs r0, r4
|
|
|
1193 01f2 FFF7FEFF bl TimerStart
|
|
|
1194 .LVL73:
|
|
|
1195 01f6 72E7 b .L74
|
|
|
1196 .L55:
|
|
|
760:./Middlewares/Third_Party/Lora/Core/lora.c **** break;
|
|
|
1197 .loc 1 760 0
|
|
|
ARM GAS /tmp/ccY05lmV.s page 38
|
|
|
|
|
|
|
|
|
1198 01f8 014B ldr r3, .L82
|
|
|
1199 01fa 0022 movs r2, #0
|
|
|
1200 01fc 1A70 strb r2, [r3]
|
|
|
1201 .loc 1 764 0
|
|
|
1202 01fe 3DE7 b .L54
|
|
|
1203 .L83:
|
|
|
1204 .align 2
|
|
|
1205 .L82:
|
|
|
1206 0200 00000000 .word .LANCHOR1
|
|
|
1207 0204 00000000 .word .L57
|
|
|
1208 0208 00000000 .word .LANCHOR11
|
|
|
1209 020c 00000000 .word McpsConfirm
|
|
|
1210 0210 00000000 .word McpsIndication
|
|
|
1211 0214 00000000 .word MlmeConfirm
|
|
|
1212 0218 00000000 .word .LANCHOR9
|
|
|
1213 021c 00000000 .word .LANCHOR12
|
|
|
1214 0220 00000000 .word OnTxNextPacketTimerEvent
|
|
|
1215 0224 00000000 .word .LANCHOR10
|
|
|
1216 0228 00000000 .word .LANCHOR13
|
|
|
1217 022c 00000000 .word .LANCHOR5
|
|
|
1218 0230 00000000 .word .LANCHOR6
|
|
|
1219 0234 00000000 .word .LANCHOR7
|
|
|
1220 0238 00000000 .word .LANCHOR8
|
|
|
1221 023c 00000000 .word .LANCHOR0
|
|
|
1222 0240 00000000 .word .LC55
|
|
|
1223 0244 00000000 .word .LANCHOR2
|
|
|
1224 0248 00000000 .word .LANCHOR3
|
|
|
1225 024c 00000000 .word .LANCHOR4
|
|
|
1226 0250 88130000 .word 5000
|
|
|
1227 .cfi_endproc
|
|
|
1228 .LFE104:
|
|
|
1230 .section .text.lora_getDeviceState,"ax",%progbits
|
|
|
1231 .align 1
|
|
|
1232 .global lora_getDeviceState
|
|
|
1233 .syntax unified
|
|
|
1234 .code 16
|
|
|
1235 .thumb_func
|
|
|
1236 .fpu softvfp
|
|
|
1238 lora_getDeviceState:
|
|
|
1239 .LFB105:
|
|
|
765:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
766:./Middlewares/Third_Party/Lora/Core/lora.c ****
|
|
|
767:./Middlewares/Third_Party/Lora/Core/lora.c **** DeviceState_t lora_getDeviceState( void )
|
|
|
768:./Middlewares/Third_Party/Lora/Core/lora.c **** {
|
|
|
1240 .loc 1 768 0
|
|
|
1241 .cfi_startproc
|
|
|
1242 @ args = 0, pretend = 0, frame = 0
|
|
|
1243 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
1244 @ link register save eliminated.
|
|
|
769:./Middlewares/Third_Party/Lora/Core/lora.c **** return DeviceState;
|
|
|
1245 .loc 1 769 0
|
|
|
1246 0000 014B ldr r3, .L85
|
|
|
1247 0002 1878 ldrb r0, [r3]
|
|
|
770:./Middlewares/Third_Party/Lora/Core/lora.c **** }
|
|
|
1248 .loc 1 770 0
|
|
|
1249 @ sp needed
|
|
|
1250 0004 7047 bx lr
|
|
|
ARM GAS /tmp/ccY05lmV.s page 39
|
|
|
|
|
|
|
|
|
1251 .L86:
|
|
|
1252 0006 C046 .align 2
|
|
|
1253 .L85:
|
|
|
1254 0008 00000000 .word .LANCHOR1
|
|
|
1255 .cfi_endproc
|
|
|
1256 .LFE105:
|
|
|
1258 .global ComplianceTest
|
|
|
1259 .section .bss.AppDataBuff,"aw",%nobits
|
|
|
1260 .align 2
|
|
|
1263 AppDataBuff:
|
|
|
1264 0000 00000000 .space 64
|
|
|
1264 00000000
|
|
|
1264 00000000
|
|
|
1264 00000000
|
|
|
1264 00000000
|
|
|
1265 .section .bss.ComplianceTest,"aw",%nobits
|
|
|
1266 .align 2
|
|
|
1267 .set .LANCHOR2,. + 0
|
|
|
1270 ComplianceTest:
|
|
|
1271 0000 00000000 .space 20
|
|
|
1271 00000000
|
|
|
1271 00000000
|
|
|
1271 00000000
|
|
|
1271 00000000
|
|
|
1272 .section .bss.DeviceState,"aw",%nobits
|
|
|
1273 .set .LANCHOR1,. + 0
|
|
|
1276 DeviceState:
|
|
|
1277 0000 00 .space 1
|
|
|
1278 .section .bss.IsTxConfirmed,"aw",%nobits
|
|
|
1279 .set .LANCHOR3,. + 0
|
|
|
1282 IsTxConfirmed:
|
|
|
1283 0000 00 .space 1
|
|
|
1284 .section .bss.LoRaMacCallbacks,"aw",%nobits
|
|
|
1285 .align 2
|
|
|
1286 .set .LANCHOR12,. + 0
|
|
|
1289 LoRaMacCallbacks:
|
|
|
1290 0000 00000000 .space 4
|
|
|
1291 .section .bss.LoRaMacPrimitives,"aw",%nobits
|
|
|
1292 .align 2
|
|
|
1293 .set .LANCHOR11,. + 0
|
|
|
1296 LoRaMacPrimitives:
|
|
|
1297 0000 00000000 .space 12
|
|
|
1297 00000000
|
|
|
1297 00000000
|
|
|
1298 .section .bss.LoRaMainCallbacks,"aw",%nobits
|
|
|
1299 .align 2
|
|
|
1300 .set .LANCHOR9,. + 0
|
|
|
1303 LoRaMainCallbacks:
|
|
|
1304 0000 00000000 .space 4
|
|
|
1305 .section .bss.LoRaParamInit,"aw",%nobits
|
|
|
1306 .align 2
|
|
|
1307 .set .LANCHOR5,. + 0
|
|
|
1310 LoRaParamInit:
|
|
|
1311 0000 00000000 .space 4
|
|
|
1312 .section .bss.TxNextPacketTimer,"aw",%nobits
|
|
|
1313 .align 2
|
|
|
1314 .set .LANCHOR10,. + 0
|
|
|
ARM GAS /tmp/ccY05lmV.s page 40
|
|
|
|
|
|
|
|
|
1317 TxNextPacketTimer:
|
|
|
1318 0000 00000000 .space 20
|
|
|
1318 00000000
|
|
|
1318 00000000
|
|
|
1318 00000000
|
|
|
1318 00000000
|
|
|
1319 .section .bss.mibReq,"aw",%nobits
|
|
|
1320 .align 2
|
|
|
1321 .set .LANCHOR13,. + 0
|
|
|
1324 mibReq:
|
|
|
1325 0000 00000000 .space 12
|
|
|
1325 00000000
|
|
|
1325 00000000
|
|
|
1326 .section .data.AppData,"aw",%progbits
|
|
|
1327 .align 2
|
|
|
1328 .set .LANCHOR4,. + 0
|
|
|
1331 AppData:
|
|
|
1332 0000 00000000 .word AppDataBuff
|
|
|
1333 0004 00 .byte 0
|
|
|
1334 0005 00 .byte 0
|
|
|
1335 0006 0000 .space 2
|
|
|
1336 .section .data.AppEui,"aw",%progbits
|
|
|
1337 .align 2
|
|
|
1338 .set .LANCHOR7,. + 0
|
|
|
1341 AppEui:
|
|
|
1342 0000 70 .byte 112
|
|
|
1343 0001 B3 .byte -77
|
|
|
1344 0002 D5 .byte -43
|
|
|
1345 0003 7E .byte 126
|
|
|
1346 0004 D0 .byte -48
|
|
|
1347 0005 00 .byte 0
|
|
|
1348 0006 7C .byte 124
|
|
|
1349 0007 04 .byte 4
|
|
|
1350 .section .data.AppKey,"aw",%progbits
|
|
|
1351 .align 2
|
|
|
1352 .set .LANCHOR8,. + 0
|
|
|
1355 AppKey:
|
|
|
1356 0000 4F .byte 79
|
|
|
1357 0001 13 .byte 19
|
|
|
1358 0002 EF .byte -17
|
|
|
1359 0003 E5 .byte -27
|
|
|
1360 0004 D9 .byte -39
|
|
|
1361 0005 A9 .byte -87
|
|
|
1362 0006 44 .byte 68
|
|
|
1363 0007 93 .byte -109
|
|
|
1364 0008 99 .byte -103
|
|
|
1365 0009 25 .byte 37
|
|
|
1366 000a D2 .byte -46
|
|
|
1367 000b D9 .byte -39
|
|
|
1368 000c 79 .byte 121
|
|
|
1369 000d 77 .byte 119
|
|
|
1370 000e 91 .byte -111
|
|
|
1371 000f DC .byte -36
|
|
|
1372 .section .data.DevEui,"aw",%progbits
|
|
|
1373 .align 2
|
|
|
1374 .set .LANCHOR6,. + 0
|
|
|
1377 DevEui:
|
|
|
ARM GAS /tmp/ccY05lmV.s page 41
|
|
|
|
|
|
|
|
|
1378 0000 01 .byte 1
|
|
|
1379 0001 01 .byte 1
|
|
|
1380 0002 01 .byte 1
|
|
|
1381 0003 01 .byte 1
|
|
|
1382 0004 01 .byte 1
|
|
|
1383 0005 01 .byte 1
|
|
|
1384 0006 01 .byte 1
|
|
|
1385 0007 01 .byte 1
|
|
|
1386 .section .data.NextTx,"aw",%progbits
|
|
|
1387 .set .LANCHOR0,. + 0
|
|
|
1390 NextTx:
|
|
|
1391 0000 01 .byte 1
|
|
|
1392 .section .rodata.lora_Init.str1.4,"aMS",%progbits,1
|
|
|
1393 .align 2
|
|
|
1394 .LC21:
|
|
|
1395 0000 4F544141 .ascii "OTAA\012\015\000"
|
|
|
1395 0A0D00
|
|
|
1396 0007 00 .space 1
|
|
|
1397 .LC23:
|
|
|
1398 0008 44657645 .ascii "DevEui= %02X\000"
|
|
|
1398 75693D20
|
|
|
1398 25303258
|
|
|
1398 00
|
|
|
1399 0015 000000 .space 3
|
|
|
1400 .LC25:
|
|
|
1401 0018 2D253032 .ascii "-%02X\000"
|
|
|
1401 5800
|
|
|
1402 001e 0000 .space 2
|
|
|
1403 .LC27:
|
|
|
1404 0020 0A0D00 .ascii "\012\015\000"
|
|
|
1405 0023 00 .space 1
|
|
|
1406 .LC30:
|
|
|
1407 0024 41707045 .ascii "AppEui= %02X\000"
|
|
|
1407 75693D20
|
|
|
1407 25303258
|
|
|
1407 00
|
|
|
1408 0031 000000 .space 3
|
|
|
1409 .LC33:
|
|
|
1410 0034 4170704B .ascii "AppKey= %02X\000"
|
|
|
1410 65793D20
|
|
|
1410 25303258
|
|
|
1410 00
|
|
|
1411 0041 000000 .space 3
|
|
|
1412 .LC35:
|
|
|
1413 0044 20253032 .ascii " %02X\000"
|
|
|
1413 5800
|
|
|
1414 004a 0000 .space 2
|
|
|
1415 .LC37:
|
|
|
1416 004c 0A0A0D00 .ascii "\012\012\015\000"
|
|
|
1417 .section .rodata.lora_fsm.str1.4,"aMS",%progbits,1
|
|
|
1418 .align 2
|
|
|
1419 .LC55:
|
|
|
1420 0000 4A4F494E .ascii "JOINED\012\015\000"
|
|
|
1420 45440A0D
|
|
|
1420 00
|
|
|
1421 .text
|
|
|
1422 .Letext0:
|
|
|
ARM GAS /tmp/ccY05lmV.s page 42
|
|
|
|
|
|
|
|
|
1423 .file 2 "/usr/arm-none-eabi/include/machine/_default_types.h"
|
|
|
1424 .file 3 "/usr/arm-none-eabi/include/sys/lock.h"
|
|
|
1425 .file 4 "/usr/arm-none-eabi/include/sys/_types.h"
|
|
|
1426 .file 5 "/usr/lib/gcc/arm-none-eabi/7.2.0/include/stddef.h"
|
|
|
1427 .file 6 "/usr/arm-none-eabi/include/sys/reent.h"
|
|
|
1428 .file 7 "/usr/arm-none-eabi/include/math.h"
|
|
|
1429 .file 8 "/usr/arm-none-eabi/include/sys/_stdint.h"
|
|
|
1430 .file 9 "Drivers/CMSIS/Device/ST/STM32L0xx/Include/system_stm32l0xx.h"
|
|
|
1431 .file 10 "Drivers/CMSIS/Device/ST/STM32L0xx/Include/stm32l0xx.h"
|
|
|
1432 .file 11 "Middlewares/Third_Party/Lora/Utilities/utilities.h"
|
|
|
1433 .file 12 "Middlewares/Third_Party/Lora/Utilities/timeServer.h"
|
|
|
1434 .file 13 "Middlewares/Third_Party/Lora/Mac/LoRaMac.h"
|
|
|
1435 .file 14 "./Middlewares/Third_Party/Lora/Core/lora.h"
|
|
|
1436 .file 15 "Middlewares/Third_Party/Lora/Mac/LoRaMacTest.h"
|
|
|
1437 .file 16 "Inc/vcom.h"
|
|
|
ARM GAS /tmp/ccY05lmV.s page 43
|
|
|
|
|
|
|
|
|
DEFINED SYMBOLS
|
|
|
*ABS*:0000000000000000 lora.c
|
|
|
/tmp/ccY05lmV.s:16 .text.McpsConfirm:0000000000000000 $t
|
|
|
/tmp/ccY05lmV.s:22 .text.McpsConfirm:0000000000000000 McpsConfirm
|
|
|
/tmp/ccY05lmV.s:41 .text.McpsConfirm:0000000000000008 $d
|
|
|
/tmp/ccY05lmV.s:46 .text.MlmeConfirm:0000000000000000 $t
|
|
|
/tmp/ccY05lmV.s:52 .text.MlmeConfirm:0000000000000000 MlmeConfirm
|
|
|
/tmp/ccY05lmV.s:114 .text.MlmeConfirm:0000000000000048 $d
|
|
|
/tmp/ccY05lmV.s:121 .text.McpsIndication:0000000000000000 $t
|
|
|
/tmp/ccY05lmV.s:127 .text.McpsIndication:0000000000000000 McpsIndication
|
|
|
/tmp/ccY05lmV.s:267 .rodata.McpsIndication:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:535 .text.McpsIndication:00000000000001d4 $d
|
|
|
/tmp/ccY05lmV.s:549 .text.OnSendEvent:0000000000000000 $t
|
|
|
/tmp/ccY05lmV.s:556 .text.OnSendEvent:0000000000000000 OnSendEvent
|
|
|
/tmp/ccY05lmV.s:606 .text.OnSendEvent:0000000000000034 $d
|
|
|
/tmp/ccY05lmV.s:612 .text.OnTxNextPacketTimerEvent:0000000000000000 $t
|
|
|
/tmp/ccY05lmV.s:618 .text.OnTxNextPacketTimerEvent:0000000000000000 OnTxNextPacketTimerEvent
|
|
|
/tmp/ccY05lmV.s:642 .text.OnTxNextPacketTimerEvent:0000000000000010 $d
|
|
|
/tmp/ccY05lmV.s:647 .text.lora_Init:0000000000000000 $t
|
|
|
/tmp/ccY05lmV.s:654 .text.lora_Init:0000000000000000 lora_Init
|
|
|
/tmp/ccY05lmV.s:779 .text.lora_Init:000000000000008c $d
|
|
|
/tmp/ccY05lmV.s:797 .text.lora_fsm:0000000000000000 $t
|
|
|
/tmp/ccY05lmV.s:804 .text.lora_fsm:0000000000000000 lora_fsm
|
|
|
/tmp/ccY05lmV.s:831 .rodata.lora_fsm:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1206 .text.lora_fsm:0000000000000200 $d
|
|
|
/tmp/ccY05lmV.s:1231 .text.lora_getDeviceState:0000000000000000 $t
|
|
|
/tmp/ccY05lmV.s:1238 .text.lora_getDeviceState:0000000000000000 lora_getDeviceState
|
|
|
/tmp/ccY05lmV.s:1254 .text.lora_getDeviceState:0000000000000008 $d
|
|
|
/tmp/ccY05lmV.s:1270 .bss.ComplianceTest:0000000000000000 ComplianceTest
|
|
|
/tmp/ccY05lmV.s:1260 .bss.AppDataBuff:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1263 .bss.AppDataBuff:0000000000000000 AppDataBuff
|
|
|
/tmp/ccY05lmV.s:1266 .bss.ComplianceTest:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1276 .bss.DeviceState:0000000000000000 DeviceState
|
|
|
/tmp/ccY05lmV.s:1277 .bss.DeviceState:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1282 .bss.IsTxConfirmed:0000000000000000 IsTxConfirmed
|
|
|
/tmp/ccY05lmV.s:1283 .bss.IsTxConfirmed:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1285 .bss.LoRaMacCallbacks:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1289 .bss.LoRaMacCallbacks:0000000000000000 LoRaMacCallbacks
|
|
|
/tmp/ccY05lmV.s:1292 .bss.LoRaMacPrimitives:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1296 .bss.LoRaMacPrimitives:0000000000000000 LoRaMacPrimitives
|
|
|
/tmp/ccY05lmV.s:1299 .bss.LoRaMainCallbacks:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1303 .bss.LoRaMainCallbacks:0000000000000000 LoRaMainCallbacks
|
|
|
/tmp/ccY05lmV.s:1306 .bss.LoRaParamInit:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1310 .bss.LoRaParamInit:0000000000000000 LoRaParamInit
|
|
|
/tmp/ccY05lmV.s:1313 .bss.TxNextPacketTimer:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1317 .bss.TxNextPacketTimer:0000000000000000 TxNextPacketTimer
|
|
|
/tmp/ccY05lmV.s:1320 .bss.mibReq:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1324 .bss.mibReq:0000000000000000 mibReq
|
|
|
/tmp/ccY05lmV.s:1327 .data.AppData:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1331 .data.AppData:0000000000000000 AppData
|
|
|
/tmp/ccY05lmV.s:1337 .data.AppEui:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1341 .data.AppEui:0000000000000000 AppEui
|
|
|
/tmp/ccY05lmV.s:1351 .data.AppKey:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1355 .data.AppKey:0000000000000000 AppKey
|
|
|
/tmp/ccY05lmV.s:1373 .data.DevEui:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1377 .data.DevEui:0000000000000000 DevEui
|
|
|
/tmp/ccY05lmV.s:1390 .data.NextTx:0000000000000000 NextTx
|
|
|
ARM GAS /tmp/ccY05lmV.s page 44
|
|
|
|
|
|
|
|
|
/tmp/ccY05lmV.s:1393 .rodata.lora_Init.str1.4:0000000000000000 $d
|
|
|
/tmp/ccY05lmV.s:1418 .rodata.lora_fsm.str1.4:0000000000000000 $d
|
|
|
.debug_frame:0000000000000010 $d
|
|
|
|
|
|
UNDEFINED SYMBOLS
|
|
|
LoRaMacMibSetRequestConfirm
|
|
|
LoRaMacTestSetDutyCycleOn
|
|
|
LoRaMacMlmeRequest
|
|
|
memcpy1
|
|
|
LoRaMacMibGetRequestConfirm
|
|
|
TimerStop
|
|
|
vcom_Send
|
|
|
LoRaMacInitialization
|
|
|
TimerInit
|
|
|
LoRaMacQueryTxPossible
|
|
|
LoRaMacMcpsRequest
|
|
|
TimerSetValue
|
|
|
TimerStart
|
|
|
|