Subversion Repositories dashGPS

Rev

Rev 16 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
16 mjames 1
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 1
2
 
3
 
4
   1              		.cpu cortex-m3
5
   2              		.eabi_attribute 20, 1
6
   3              		.eabi_attribute 21, 1
7
   4              		.eabi_attribute 23, 3
8
   5              		.eabi_attribute 24, 1
9
   6              		.eabi_attribute 25, 1
10
   7              		.eabi_attribute 26, 1
11
   8              		.eabi_attribute 30, 1
12
   9              		.eabi_attribute 34, 1
13
  10              		.eabi_attribute 18, 4
14
  11              		.file	"serial.c"
15
  12              		.text
16
  13              	.Ltext0:
17
  14              		.cfi_sections	.debug_frame
18
  15              		.section	.text.PutCharSerialFIFO,"ax",%progbits
19
  16              		.align	1
20
  17              		.arch armv7-m
21
  18              		.syntax unified
22
  19              		.thumb
23
  20              		.thumb_func
24
  21              		.fpu softvfp
25
  23              	PutCharSerialFIFO:
26
  24              	.LVL0:
27
  25              	.LFB69:
28
  26              		.file 1 "../libSerial/src/serial.c"
29
   1:../libSerial/src/serial.c **** /*
30
   2:../libSerial/src/serial.c ****  * serial.c
31
   3:../libSerial/src/serial.c ****  *
32
   4:../libSerial/src/serial.c ****  *  Created on: 4 Jan 2016
33
   5:../libSerial/src/serial.c ****  *      Author: Mike
34
   6:../libSerial/src/serial.c ****  *
35
   7:../libSerial/src/serial.c ****  *      This (ab)uses the STMCubeMX HAL declarations to implement a generic STM32F1xx
36
   8:../libSerial/src/serial.c ****  *      USART driver layer
37
   9:../libSerial/src/serial.c ****  */
38
  10:../libSerial/src/serial.c **** 
39
  11:../libSerial/src/serial.c **** #include "libSerial/serial.h"
40
  12:../libSerial/src/serial.c **** 
41
  13:../libSerial/src/serial.c **** /* workspaces for the USARTS being used */
42
  14:../libSerial/src/serial.c **** #if defined SERIAL_UART1
43
  15:../libSerial/src/serial.c **** usart_ctl uc1;
44
  16:../libSerial/src/serial.c **** #endif
45
  17:../libSerial/src/serial.c **** #if defined SERIAL_UART2
46
  18:../libSerial/src/serial.c **** usart_ctl uc2;
47
  19:../libSerial/src/serial.c **** #endif
48
  20:../libSerial/src/serial.c **** #if defined SERIAL_UART3
49
  21:../libSerial/src/serial.c **** usart_ctl uc3;
50
  22:../libSerial/src/serial.c **** #endif
51
  23:../libSerial/src/serial.c **** 
52
  24:../libSerial/src/serial.c **** /* returns the number of characters received by the Rx USART */
53
  25:../libSerial/src/serial.c **** uint16_t
54
  26:../libSerial/src/serial.c **** SerialCharsReceived (usart_ctl *instance)
55
  27:../libSerial/src/serial.c **** {
56
  28:../libSerial/src/serial.c ****   uint16_t result = 0;	// assume no characters received yet
57
  29:../libSerial/src/serial.c ****   __HAL_UART_DISABLE_IT (instance, UART_IT_RXNE);
58
  30:../libSerial/src/serial.c **** 
59
  31:../libSerial/src/serial.c ****   if (instance->rx_usart_buffer_full)
60
  32:../libSerial/src/serial.c ****     {	// buffer is full...
61
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 2
62
 
63
 
64
  33:../libSerial/src/serial.c ****       result = RX_USART_BUFF_SIZ;
65
  34:../libSerial/src/serial.c ****     }
66
  35:../libSerial/src/serial.c ****   else if (instance->rx_usart_in_Ptr >= instance->rx_usart_out_Ptr)
67
  36:../libSerial/src/serial.c ****     {	// buffer has not wrapped...
68
  37:../libSerial/src/serial.c ****       result = instance->rx_usart_in_Ptr - instance->rx_usart_out_Ptr;
69
  38:../libSerial/src/serial.c ****     }
70
  39:../libSerial/src/serial.c ****   else
71
  40:../libSerial/src/serial.c ****     {	// buffer has possibly wrapped...
72
  41:../libSerial/src/serial.c ****       result = RX_USART_BUFF_SIZ - instance->rx_usart_out_Ptr
73
  42:../libSerial/src/serial.c **** 	  + instance->rx_usart_in_Ptr;
74
  43:../libSerial/src/serial.c ****     }
75
  44:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
76
  45:../libSerial/src/serial.c **** 
77
  46:../libSerial/src/serial.c ****   return result;
78
  47:../libSerial/src/serial.c **** }
79
  48:../libSerial/src/serial.c **** 
80
  49:../libSerial/src/serial.c **** inline uint8_t
81
  50:../libSerial/src/serial.c **** PollSerial (usart_ctl *instance)
82
  51:../libSerial/src/serial.c **** {
83
  52:../libSerial/src/serial.c ****   uint8_t rc;
84
  53:../libSerial/src/serial.c **** 
85
  54:../libSerial/src/serial.c ****   __HAL_UART_DISABLE_IT (instance, UART_IT_RXNE);
86
  55:../libSerial/src/serial.c ****   rc = (instance->rx_usart_buffer_full
87
  56:../libSerial/src/serial.c ****       || (instance->rx_usart_in_Ptr != instance->rx_usart_out_Ptr));
88
  57:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
89
  58:../libSerial/src/serial.c **** 
90
  59:../libSerial/src/serial.c ****   return rc;
91
  60:../libSerial/src/serial.c **** }
92
  61:../libSerial/src/serial.c **** 
93
  62:../libSerial/src/serial.c **** /***!
94
  63:../libSerial/src/serial.c ****  * @brief return the next character in the Serial input buffer
95
  64:../libSerial/src/serial.c ****  * This function will wait until a character arrives.
96
  65:../libSerial/src/serial.c ****  */
97
  66:../libSerial/src/serial.c **** inline uint8_t
98
  67:../libSerial/src/serial.c **** GetCharSerial (usart_ctl *instance)
99
  68:../libSerial/src/serial.c **** {
100
  69:../libSerial/src/serial.c ****   uint8_t c;
101
  70:../libSerial/src/serial.c ****   __HAL_UART_DISABLE_IT (instance, UART_IT_RXNE);
102
  71:../libSerial/src/serial.c ****   while (!instance->rx_usart_buffer_full
103
  72:../libSerial/src/serial.c ****       && (instance->rx_usart_in_Ptr == instance->rx_usart_out_Ptr))
104
  73:../libSerial/src/serial.c ****     {
105
  74:../libSerial/src/serial.c ****       __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
106
  75:../libSerial/src/serial.c ****       __WFI (); /* wait for something */
107
  76:../libSerial/src/serial.c ****       __HAL_UART_DISABLE_IT (instance, UART_IT_RXNE);
108
  77:../libSerial/src/serial.c ****     }
109
  78:../libSerial/src/serial.c **** 
110
  79:../libSerial/src/serial.c ****   c = instance->rx_usart_buff[instance->rx_usart_out_Ptr];
111
  80:../libSerial/src/serial.c ****   instance->rx_usart_buffer_full = 0; /* removed character */
112
  81:../libSerial/src/serial.c ****   instance->rx_usart_out_Ptr++;
113
  82:../libSerial/src/serial.c ****   if (instance->rx_usart_out_Ptr >= RX_USART_BUFF_SIZ)
114
  83:../libSerial/src/serial.c ****     {
115
  84:../libSerial/src/serial.c ****       instance->rx_usart_out_Ptr = 0;
116
  85:../libSerial/src/serial.c ****     }
117
  86:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
118
  87:../libSerial/src/serial.c ****   return c;
119
  88:../libSerial/src/serial.c **** }
120
  89:../libSerial/src/serial.c **** 
121
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 3
122
 
123
 
124
  90:../libSerial/src/serial.c **** /*
125
  91:../libSerial/src/serial.c ****  * \brief
126
  92:../libSerial/src/serial.c ****  * void EnableSerialRxInterrupt(void) - this function is used from the interrupt handler and the ma
127
  93:../libSerial/src/serial.c ****  * to enable the serial rx interrupt after resetting the serial rx buffer...
128
  94:../libSerial/src/serial.c ****  */
129
  95:../libSerial/src/serial.c **** inline void
130
  96:../libSerial/src/serial.c **** EnableSerialRxInterrupt (usart_ctl *instance)
131
  97:../libSerial/src/serial.c **** {
132
  98:../libSerial/src/serial.c ****   /* cheat here - this is a macro and I have the same Instance member as the HAL handle, with the s
133
  99:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
134
 100:../libSerial/src/serial.c **** }
135
 101:../libSerial/src/serial.c **** 
136
 102:../libSerial/src/serial.c **** /****!
137
 103:../libSerial/src/serial.c ****  * @brief send a character to the serial USART via placing it in the serial buffer
138
 104:../libSerial/src/serial.c ****  *
139
 105:../libSerial/src/serial.c ****  */
140
 106:../libSerial/src/serial.c **** 
141
 107:../libSerial/src/serial.c **** static void
142
 108:../libSerial/src/serial.c **** PutCharSerialFIFO (usart_ctl *instance, uint8_t c)
143
 109:../libSerial/src/serial.c **** {
144
  27              		.loc 1 109 1 view -0
145
  28              		.cfi_startproc
146
  29              		@ args = 0, pretend = 0, frame = 0
147
  30              		@ frame_needed = 0, uses_anonymous_args = 0
148
  31              		@ link register save eliminated.
149
 110:../libSerial/src/serial.c ****   __HAL_UART_DISABLE_IT (instance, UART_IT_TXE);
150
  32              		.loc 1 110 3 view .LVU1
151
  33 0000 0268     		ldr	r2, [r0]
152
  34 0002 D368     		ldr	r3, [r2, #12]
153
  35 0004 23F08003 		bic	r3, r3, #128
154
  36 0008 D360     		str	r3, [r2, #12]
155
 111:../libSerial/src/serial.c **** 
156
 112:../libSerial/src/serial.c ****   instance->tx_usart_buff[instance->tx_usart_in_Ptr++] = c;
157
  37              		.loc 1 112 3 view .LVU2
158
  38              		.loc 1 112 35 is_stmt 0 view .LVU3
159
  39 000a D0F80834 		ldr	r3, [r0, #1032]
160
  40              		.loc 1 112 52 view .LVU4
161
  41 000e 5A1C     		adds	r2, r3, #1
162
  42 0010 C0F80824 		str	r2, [r0, #1032]
163
  43              		.loc 1 112 56 view .LVU5
164
  44 0014 0344     		add	r3, r3, r0
165
  45 0016 1972     		strb	r1, [r3, #8]
166
 113:../libSerial/src/serial.c ****   instance->tx_usart_count += 1;
167
  46              		.loc 1 113 3 is_stmt 1 view .LVU6
168
  47              		.loc 1 113 28 is_stmt 0 view .LVU7
169
  48 0018 B0F81234 		ldrh	r3, [r0, #1042]
170
  49 001c 0133     		adds	r3, r3, #1
171
  50 001e 9BB2     		uxth	r3, r3
172
  51 0020 A0F81234 		strh	r3, [r0, #1042]	@ movhi
173
 114:../libSerial/src/serial.c ****   if (instance->tx_usart_in_Ptr >= TX_USART_BUFF_SIZ)
174
  52              		.loc 1 114 3 is_stmt 1 view .LVU8
175
  53              		.loc 1 114 15 is_stmt 0 view .LVU9
176
  54 0024 D0F80834 		ldr	r3, [r0, #1032]
177
  55              		.loc 1 114 6 view .LVU10
178
  56 0028 B3F5806F 		cmp	r3, #1024
179
  57 002c 02D3     		bcc	.L2
180
 115:../libSerial/src/serial.c ****     {
181
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 4
182
 
183
 
184
 116:../libSerial/src/serial.c ****       instance->tx_usart_in_Ptr = 0;
185
  58              		.loc 1 116 7 is_stmt 1 view .LVU11
186
  59              		.loc 1 116 33 is_stmt 0 view .LVU12
187
  60 002e 0023     		movs	r3, #0
188
  61 0030 C0F80834 		str	r3, [r0, #1032]
189
  62              	.L2:
190
 117:../libSerial/src/serial.c ****     }
191
 118:../libSerial/src/serial.c ****   /* Handle overrun by losing oldest characters */
192
 119:../libSerial/src/serial.c ****   if (instance->tx_usart_in_Ptr == instance->tx_usart_out_Ptr)
193
  63              		.loc 1 119 3 is_stmt 1 view .LVU13
194
  64              		.loc 1 119 15 is_stmt 0 view .LVU14
195
  65 0034 D0F80824 		ldr	r2, [r0, #1032]
196
  66              		.loc 1 119 44 view .LVU15
197
  67 0038 D0F80C34 		ldr	r3, [r0, #1036]
198
  68              		.loc 1 119 6 view .LVU16
199
  69 003c 9A42     		cmp	r2, r3
200
  70 003e 08D0     		beq	.L4
201
  71              	.L3:
202
 120:../libSerial/src/serial.c ****     {
203
 121:../libSerial/src/serial.c ****       instance->tx_usart_out_Ptr++;
204
 122:../libSerial/src/serial.c ****       if (instance->tx_usart_out_Ptr >= TX_USART_BUFF_SIZ)
205
 123:../libSerial/src/serial.c **** 	{
206
 124:../libSerial/src/serial.c **** 	  instance->tx_usart_out_Ptr = 0;
207
 125:../libSerial/src/serial.c **** 	}
208
 126:../libSerial/src/serial.c ****     }
209
 127:../libSerial/src/serial.c **** 
210
 128:../libSerial/src/serial.c ****   instance->tx_usart_running = 1;
211
  72              		.loc 1 128 3 is_stmt 1 view .LVU17
212
  73              		.loc 1 128 30 is_stmt 0 view .LVU18
213
  74 0040 0123     		movs	r3, #1
214
  75 0042 80F81034 		strb	r3, [r0, #1040]
215
 129:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_TXE);
216
  76              		.loc 1 129 3 is_stmt 1 view .LVU19
217
  77 0046 0268     		ldr	r2, [r0]
218
  78 0048 D368     		ldr	r3, [r2, #12]
219
  79 004a 43F08003 		orr	r3, r3, #128
220
  80 004e D360     		str	r3, [r2, #12]
221
 130:../libSerial/src/serial.c **** }
222
  81              		.loc 1 130 1 is_stmt 0 view .LVU20
223
  82 0050 7047     		bx	lr
224
  83              	.L4:
225
 121:../libSerial/src/serial.c ****       if (instance->tx_usart_out_Ptr >= TX_USART_BUFF_SIZ)
226
  84              		.loc 1 121 7 is_stmt 1 view .LVU21
227
 121:../libSerial/src/serial.c ****       if (instance->tx_usart_out_Ptr >= TX_USART_BUFF_SIZ)
228
  85              		.loc 1 121 15 is_stmt 0 view .LVU22
229
  86 0052 D0F80C34 		ldr	r3, [r0, #1036]
230
 121:../libSerial/src/serial.c ****       if (instance->tx_usart_out_Ptr >= TX_USART_BUFF_SIZ)
231
  87              		.loc 1 121 33 view .LVU23
232
  88 0056 0133     		adds	r3, r3, #1
233
  89 0058 C0F80C34 		str	r3, [r0, #1036]
234
 122:../libSerial/src/serial.c **** 	{
235
  90              		.loc 1 122 7 is_stmt 1 view .LVU24
236
 122:../libSerial/src/serial.c **** 	{
237
  91              		.loc 1 122 19 is_stmt 0 view .LVU25
238
  92 005c D0F80C34 		ldr	r3, [r0, #1036]
239
 122:../libSerial/src/serial.c **** 	{
240
  93              		.loc 1 122 10 view .LVU26
241
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 5
242
 
243
 
244
  94 0060 B3F5806F 		cmp	r3, #1024
245
  95 0064 ECD3     		bcc	.L3
246
 124:../libSerial/src/serial.c **** 	}
247
  96              		.loc 1 124 4 is_stmt 1 view .LVU27
248
 124:../libSerial/src/serial.c **** 	}
249
  97              		.loc 1 124 31 is_stmt 0 view .LVU28
250
  98 0066 0023     		movs	r3, #0
251
  99 0068 C0F80C34 		str	r3, [r0, #1036]
252
 100 006c E8E7     		b	.L3
253
 101              		.cfi_endproc
254
 102              	.LFE69:
255
 104              		.section	.text.SerialCharsReceived,"ax",%progbits
256
 105              		.align	1
257
 106              		.global	SerialCharsReceived
258
 107              		.syntax unified
259
 108              		.thumb
260
 109              		.thumb_func
261
 110              		.fpu softvfp
262
 112              	SerialCharsReceived:
263
 113              	.LVL1:
264
 114              	.LFB65:
265
  27:../libSerial/src/serial.c ****   uint16_t result = 0;	// assume no characters received yet
266
 115              		.loc 1 27 1 is_stmt 1 view -0
267
 116              		.cfi_startproc
268
 117              		@ args = 0, pretend = 0, frame = 0
269
 118              		@ frame_needed = 0, uses_anonymous_args = 0
270
 119              		@ link register save eliminated.
271
  27:../libSerial/src/serial.c ****   uint16_t result = 0;	// assume no characters received yet
272
 120              		.loc 1 27 1 is_stmt 0 view .LVU30
273
 121 0000 0346     		mov	r3, r0
274
  28:../libSerial/src/serial.c ****   __HAL_UART_DISABLE_IT (instance, UART_IT_RXNE);
275
 122              		.loc 1 28 3 is_stmt 1 view .LVU31
276
 123              	.LVL2:
277
  29:../libSerial/src/serial.c **** 
278
 124              		.loc 1 29 3 view .LVU32
279
 125 0002 0168     		ldr	r1, [r0]
280
 126 0004 CA68     		ldr	r2, [r1, #12]
281
 127 0006 22F02002 		bic	r2, r2, #32
282
 128 000a CA60     		str	r2, [r1, #12]
283
  31:../libSerial/src/serial.c ****     {	// buffer is full...
284
 129              		.loc 1 31 3 view .LVU33
285
  31:../libSerial/src/serial.c ****     {	// buffer is full...
286
 130              		.loc 1 31 15 is_stmt 0 view .LVU34
287
 131 000c 90F81C28 		ldrb	r2, [r0, #2076]	@ zero_extendqisi2
288
  31:../libSerial/src/serial.c ****     {	// buffer is full...
289
 132              		.loc 1 31 6 view .LVU35
290
 133 0010 C2B9     		cbnz	r2, .L8
291
  35:../libSerial/src/serial.c ****     {	// buffer has not wrapped...
292
 134              		.loc 1 35 8 is_stmt 1 view .LVU36
293
  35:../libSerial/src/serial.c ****     {	// buffer has not wrapped...
294
 135              		.loc 1 35 20 is_stmt 0 view .LVU37
295
 136 0012 D0F81418 		ldr	r1, [r0, #2068]
296
  35:../libSerial/src/serial.c ****     {	// buffer has not wrapped...
297
 137              		.loc 1 35 49 view .LVU38
298
 138 0016 D0F81828 		ldr	r2, [r0, #2072]
299
  35:../libSerial/src/serial.c ****     {	// buffer has not wrapped...
300
 139              		.loc 1 35 11 view .LVU39
301
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 6
302
 
303
 
304
 140 001a 9142     		cmp	r1, r2
305
 141 001c 08D3     		bcc	.L7
306
  37:../libSerial/src/serial.c ****     }
307
 142              		.loc 1 37 7 is_stmt 1 view .LVU40
308
  37:../libSerial/src/serial.c ****     }
309
 143              		.loc 1 37 24 is_stmt 0 view .LVU41
310
 144 001e D0F81408 		ldr	r0, [r0, #2068]
311
 145              	.LVL3:
312
  37:../libSerial/src/serial.c ****     }
313
 146              		.loc 1 37 42 view .LVU42
314
 147 0022 80B2     		uxth	r0, r0
315
  37:../libSerial/src/serial.c ****     }
316
 148              		.loc 1 37 52 view .LVU43
317
 149 0024 D3F81828 		ldr	r2, [r3, #2072]
318
  37:../libSerial/src/serial.c ****     }
319
 150              		.loc 1 37 42 view .LVU44
320
 151 0028 92B2     		uxth	r2, r2
321
  37:../libSerial/src/serial.c ****     }
322
 152              		.loc 1 37 14 view .LVU45
323
 153 002a 801A     		subs	r0, r0, r2
324
 154 002c 80B2     		uxth	r0, r0
325
 155              	.LVL4:
326
  37:../libSerial/src/serial.c ****     }
327
 156              		.loc 1 37 14 view .LVU46
328
 157 002e 0BE0     		b	.L6
329
 158              	.LVL5:
330
 159              	.L7:
331
  41:../libSerial/src/serial.c **** 	  + instance->rx_usart_in_Ptr;
332
 160              		.loc 1 41 7 is_stmt 1 view .LVU47
333
  42:../libSerial/src/serial.c ****     }
334
 161              		.loc 1 42 14 is_stmt 0 view .LVU48
335
 162 0030 D0F81408 		ldr	r0, [r0, #2068]
336
 163              	.LVL6:
337
  41:../libSerial/src/serial.c **** 	  + instance->rx_usart_in_Ptr;
338
 164              		.loc 1 41 44 view .LVU49
339
 165 0034 D3F81828 		ldr	r2, [r3, #2072]
340
  42:../libSerial/src/serial.c ****     }
341
 166              		.loc 1 42 4 view .LVU50
342
 167 0038 801A     		subs	r0, r0, r2
343
 168 003a 80B2     		uxth	r0, r0
344
  41:../libSerial/src/serial.c **** 	  + instance->rx_usart_in_Ptr;
345
 169              		.loc 1 41 14 view .LVU51
346
 170 003c 00F58060 		add	r0, r0, #1024
347
 171 0040 80B2     		uxth	r0, r0
348
 172              	.LVL7:
349
  41:../libSerial/src/serial.c **** 	  + instance->rx_usart_in_Ptr;
350
 173              		.loc 1 41 14 view .LVU52
351
 174 0042 01E0     		b	.L6
352
 175              	.LVL8:
353
 176              	.L8:
354
  33:../libSerial/src/serial.c ****     }
355
 177              		.loc 1 33 14 view .LVU53
356
 178 0044 4FF48060 		mov	r0, #1024
357
 179              	.LVL9:
358
 180              	.L6:
359
  44:../libSerial/src/serial.c **** 
360
 181              		.loc 1 44 3 is_stmt 1 view .LVU54
361
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 7
362
 
363
 
364
 182 0048 1A68     		ldr	r2, [r3]
365
 183 004a D368     		ldr	r3, [r2, #12]
366
 184              	.LVL10:
367
  44:../libSerial/src/serial.c **** 
368
 185              		.loc 1 44 3 is_stmt 0 view .LVU55
369
 186 004c 43F02003 		orr	r3, r3, #32
370
 187 0050 D360     		str	r3, [r2, #12]
371
  46:../libSerial/src/serial.c **** }
372
 188              		.loc 1 46 3 is_stmt 1 view .LVU56
373
  47:../libSerial/src/serial.c **** 
374
 189              		.loc 1 47 1 is_stmt 0 view .LVU57
375
 190 0052 7047     		bx	lr
376
 191              		.cfi_endproc
377
 192              	.LFE65:
378
 194              		.section	.text.PollSerial,"ax",%progbits
379
 195              		.align	1
380
 196              		.global	PollSerial
381
 197              		.syntax unified
382
 198              		.thumb
383
 199              		.thumb_func
384
 200              		.fpu softvfp
385
 202              	PollSerial:
386
 203              	.LVL11:
387
 204              	.LFB66:
388
  51:../libSerial/src/serial.c ****   uint8_t rc;
389
 205              		.loc 1 51 1 is_stmt 1 view -0
390
 206              		.cfi_startproc
391
 207              		@ args = 0, pretend = 0, frame = 0
392
 208              		@ frame_needed = 0, uses_anonymous_args = 0
393
 209              		@ link register save eliminated.
394
  51:../libSerial/src/serial.c ****   uint8_t rc;
395
 210              		.loc 1 51 1 is_stmt 0 view .LVU59
396
 211 0000 0346     		mov	r3, r0
397
  52:../libSerial/src/serial.c **** 
398
 212              		.loc 1 52 3 is_stmt 1 view .LVU60
399
  54:../libSerial/src/serial.c ****   rc = (instance->rx_usart_buffer_full
400
 213              		.loc 1 54 3 view .LVU61
401
 214 0002 0168     		ldr	r1, [r0]
402
 215 0004 CA68     		ldr	r2, [r1, #12]
403
 216 0006 22F02002 		bic	r2, r2, #32
404
 217 000a CA60     		str	r2, [r1, #12]
405
  55:../libSerial/src/serial.c ****       || (instance->rx_usart_in_Ptr != instance->rx_usart_out_Ptr));
406
 218              		.loc 1 55 3 view .LVU62
407
  55:../libSerial/src/serial.c ****       || (instance->rx_usart_in_Ptr != instance->rx_usart_out_Ptr));
408
 219              		.loc 1 55 17 is_stmt 0 view .LVU63
409
 220 000c 90F81C28 		ldrb	r2, [r0, #2076]	@ zero_extendqisi2
410
  56:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
411
 221              		.loc 1 56 7 view .LVU64
412
 222 0010 3AB9     		cbnz	r2, .L11
413
  56:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
414
 223              		.loc 1 56 19 discriminator 2 view .LVU65
415
 224 0012 D0F81418 		ldr	r1, [r0, #2068]
416
  56:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
417
 225              		.loc 1 56 48 discriminator 2 view .LVU66
418
 226 0016 D0F81828 		ldr	r2, [r0, #2072]
419
  56:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
420
 227              		.loc 1 56 7 discriminator 2 view .LVU67
421
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 8
422
 
423
 
424
 228 001a 9142     		cmp	r1, r2
425
 229 001c 08D0     		beq	.L12
426
  56:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
427
 230              		.loc 1 56 7 view .LVU68
428
 231 001e 0120     		movs	r0, #1
429
 232              	.LVL12:
430
  56:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
431
 233              		.loc 1 56 7 view .LVU69
432
 234 0020 00E0     		b	.L10
433
 235              	.LVL13:
434
 236              	.L11:
435
  56:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
436
 237              		.loc 1 56 7 view .LVU70
437
 238 0022 0120     		movs	r0, #1
438
 239              	.LVL14:
439
 240              	.L10:
440
  57:../libSerial/src/serial.c **** 
441
 241              		.loc 1 57 3 is_stmt 1 view .LVU71
442
 242 0024 1A68     		ldr	r2, [r3]
443
 243 0026 D368     		ldr	r3, [r2, #12]
444
 244              	.LVL15:
445
  57:../libSerial/src/serial.c **** 
446
 245              		.loc 1 57 3 is_stmt 0 view .LVU72
447
 246 0028 43F02003 		orr	r3, r3, #32
448
 247 002c D360     		str	r3, [r2, #12]
449
  59:../libSerial/src/serial.c **** }
450
 248              		.loc 1 59 3 is_stmt 1 view .LVU73
451
  60:../libSerial/src/serial.c **** 
452
 249              		.loc 1 60 1 is_stmt 0 view .LVU74
453
 250 002e 7047     		bx	lr
454
 251              	.LVL16:
455
 252              	.L12:
456
  56:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
457
 253              		.loc 1 56 7 view .LVU75
458
 254 0030 0020     		movs	r0, #0
459
 255              	.LVL17:
460
  56:../libSerial/src/serial.c ****   __HAL_UART_ENABLE_IT (instance, UART_IT_RXNE);
461
 256              		.loc 1 56 7 view .LVU76
462
 257 0032 F7E7     		b	.L10
463
 258              		.cfi_endproc
464
 259              	.LFE66:
465
 261              		.section	.text.GetCharSerial,"ax",%progbits
466
 262              		.align	1
467
 263              		.global	GetCharSerial
468
 264              		.syntax unified
469
 265              		.thumb
470
 266              		.thumb_func
471
 267              		.fpu softvfp
472
 269              	GetCharSerial:
473
 270              	.LVL18:
474
 271              	.LFB67:
475
  68:../libSerial/src/serial.c ****   uint8_t c;
476
 272              		.loc 1 68 1 is_stmt 1 view -0
477
 273              		.cfi_startproc
478
 274              		@ args = 0, pretend = 0, frame = 0
479
 275              		@ frame_needed = 0, uses_anonymous_args = 0
480
 276              		@ link register save eliminated.
481
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 9
482
 
483
 
484
  68:../libSerial/src/serial.c ****   uint8_t c;
485
 277              		.loc 1 68 1 is_stmt 0 view .LVU78
486
 278 0000 0346     		mov	r3, r0
487
  69:../libSerial/src/serial.c ****   __HAL_UART_DISABLE_IT (instance, UART_IT_RXNE);
488
 279              		.loc 1 69 3 is_stmt 1 view .LVU79
489
  70:../libSerial/src/serial.c ****   while (!instance->rx_usart_buffer_full
490
 280              		.loc 1 70 3 view .LVU80
491
 281 0002 0168     		ldr	r1, [r0]
492
 282 0004 CA68     		ldr	r2, [r1, #12]
493
 283 0006 22F02002 		bic	r2, r2, #32
494
 284 000a CA60     		str	r2, [r1, #12]
495
  71:../libSerial/src/serial.c ****       && (instance->rx_usart_in_Ptr == instance->rx_usart_out_Ptr))
496
 285              		.loc 1 71 3 view .LVU81
497
 286              	.L14:
498
  71:../libSerial/src/serial.c ****       && (instance->rx_usart_in_Ptr == instance->rx_usart_out_Ptr))
499
 287              		.loc 1 71 19 is_stmt 0 view .LVU82
500
 288 000c 93F81C28 		ldrb	r2, [r3, #2076]	@ zero_extendqisi2
501
  71:../libSerial/src/serial.c ****       && (instance->rx_usart_in_Ptr == instance->rx_usart_out_Ptr))
502
 289              		.loc 1 71 9 view .LVU83
503
 290 0010 8AB9     		cbnz	r2, .L15
504
  72:../libSerial/src/serial.c ****     {
505
 291              		.loc 1 72 19 view .LVU84
506
 292 0012 D3F81418 		ldr	r1, [r3, #2068]
507
  72:../libSerial/src/serial.c ****     {
508
 293              		.loc 1 72 48 view .LVU85
509
 294 0016 D3F81828 		ldr	r2, [r3, #2072]
510
  72:../libSerial/src/serial.c ****     {
511
 295              		.loc 1 72 7 view .LVU86
512
 296 001a 9142     		cmp	r1, r2
513
 297 001c 0BD1     		bne	.L15
514
  74:../libSerial/src/serial.c ****       __WFI (); /* wait for something */
515
 298              		.loc 1 74 7 is_stmt 1 view .LVU87
516
 299 001e 1968     		ldr	r1, [r3]
517
 300 0020 CA68     		ldr	r2, [r1, #12]
518
 301 0022 42F02002 		orr	r2, r2, #32
519
 302 0026 CA60     		str	r2, [r1, #12]
520
  75:../libSerial/src/serial.c ****       __HAL_UART_DISABLE_IT (instance, UART_IT_RXNE);
521
 303              		.loc 1 75 7 view .LVU88
522
 304              		.syntax unified
523
 305              	@ 75 "../libSerial/src/serial.c" 1
524
 306 0028 30BF     		wfi
525
 307              	@ 0 "" 2
526
  76:../libSerial/src/serial.c ****     }
527
 308              		.loc 1 76 7 view .LVU89
528
 309              		.thumb
529
 310              		.syntax unified
530
 311 002a 1968     		ldr	r1, [r3]
531
 312 002c CA68     		ldr	r2, [r1, #12]
532
 313 002e 22F02002 		bic	r2, r2, #32
533
 314 0032 CA60     		str	r2, [r1, #12]
534
 315 0034 EAE7     		b	.L14
535
 316              	.L15:
536
  79:../libSerial/src/serial.c ****   instance->rx_usart_buffer_full = 0; /* removed character */
537
 317              		.loc 1 79 3 view .LVU90
538
  79:../libSerial/src/serial.c ****   instance->rx_usart_buffer_full = 0; /* removed character */
539
 318              		.loc 1 79 39 is_stmt 0 view .LVU91
540
 319 0036 D3F81828 		ldr	r2, [r3, #2072]
541
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 10
542
 
543
 
544
  79:../libSerial/src/serial.c ****   instance->rx_usart_buffer_full = 0; /* removed character */
545
 320              		.loc 1 79 5 view .LVU92
546
 321 003a 1A44     		add	r2, r2, r3
547
 322 003c 92F81404 		ldrb	r0, [r2, #1044]	@ zero_extendqisi2
548
 323              	.LVL19:
549
  79:../libSerial/src/serial.c ****   instance->rx_usart_buffer_full = 0; /* removed character */
550
 324              		.loc 1 79 5 view .LVU93
551
 325 0040 C0B2     		uxtb	r0, r0
552
 326              	.LVL20:
553
  80:../libSerial/src/serial.c ****   instance->rx_usart_out_Ptr++;
554
 327              		.loc 1 80 3 is_stmt 1 view .LVU94
555
  80:../libSerial/src/serial.c ****   instance->rx_usart_out_Ptr++;
556
 328              		.loc 1 80 34 is_stmt 0 view .LVU95
557
 329 0042 0022     		movs	r2, #0
558
 330 0044 83F81C28 		strb	r2, [r3, #2076]
559
  81:../libSerial/src/serial.c ****   if (instance->rx_usart_out_Ptr >= RX_USART_BUFF_SIZ)
560
 331              		.loc 1 81 3 is_stmt 1 view .LVU96
561
  81:../libSerial/src/serial.c ****   if (instance->rx_usart_out_Ptr >= RX_USART_BUFF_SIZ)
562
 332              		.loc 1 81 11 is_stmt 0 view .LVU97
563
 333 0048 D3F81828 		ldr	r2, [r3, #2072]
564
  81:../libSerial/src/serial.c ****   if (instance->rx_usart_out_Ptr >= RX_USART_BUFF_SIZ)
565
 334              		.loc 1 81 29 view .LVU98
566
 335 004c 0132     		adds	r2, r2, #1
567
 336 004e C3F81828 		str	r2, [r3, #2072]
568
  82:../libSerial/src/serial.c ****     {
569
 337              		.loc 1 82 3 is_stmt 1 view .LVU99
570
  82:../libSerial/src/serial.c ****     {
571
 338              		.loc 1 82 15 is_stmt 0 view .LVU100
572
 339 0052 D3F81828 		ldr	r2, [r3, #2072]
573
  82:../libSerial/src/serial.c ****     {
574
 340              		.loc 1 82 6 view .LVU101
575
 341 0056 B2F5806F 		cmp	r2, #1024
576
 342 005a 02D3     		bcc	.L17
577
  84:../libSerial/src/serial.c ****     }
578
 343              		.loc 1 84 7 is_stmt 1 view .LVU102
579
  84:../libSerial/src/serial.c ****     }
580
 344              		.loc 1 84 34 is_stmt 0 view .LVU103
581
 345 005c 0022     		movs	r2, #0
582
 346 005e C3F81828 		str	r2, [r3, #2072]
583
 347              	.L17:
584
  86:../libSerial/src/serial.c ****   return c;
585
 348              		.loc 1 86 3 is_stmt 1 view .LVU104
586
 349 0062 1A68     		ldr	r2, [r3]
587
 350 0064 D368     		ldr	r3, [r2, #12]
588
 351              	.LVL21:
589
  86:../libSerial/src/serial.c ****   return c;
590
 352              		.loc 1 86 3 is_stmt 0 view .LVU105
591
 353 0066 43F02003 		orr	r3, r3, #32
592
 354 006a D360     		str	r3, [r2, #12]
593
  87:../libSerial/src/serial.c **** }
594
 355              		.loc 1 87 3 is_stmt 1 view .LVU106
595
  88:../libSerial/src/serial.c **** 
596
 356              		.loc 1 88 1 is_stmt 0 view .LVU107
597
 357 006c 7047     		bx	lr
598
 358              		.cfi_endproc
599
 359              	.LFE67:
600
 361              		.section	.text.EnableSerialRxInterrupt,"ax",%progbits
601
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 11
602
 
603
 
604
 362              		.align	1
605
 363              		.global	EnableSerialRxInterrupt
606
 364              		.syntax unified
607
 365              		.thumb
608
 366              		.thumb_func
609
 367              		.fpu softvfp
610
 369              	EnableSerialRxInterrupt:
611
 370              	.LVL22:
612
 371              	.LFB68:
613
  97:../libSerial/src/serial.c ****   /* cheat here - this is a macro and I have the same Instance member as the HAL handle, with the s
614
 372              		.loc 1 97 1 is_stmt 1 view -0
615
 373              		.cfi_startproc
616
 374              		@ args = 0, pretend = 0, frame = 0
617
 375              		@ frame_needed = 0, uses_anonymous_args = 0
618
 376              		@ link register save eliminated.
619
  99:../libSerial/src/serial.c **** }
620
 377              		.loc 1 99 3 view .LVU109
621
 378 0000 0268     		ldr	r2, [r0]
622
 379 0002 D368     		ldr	r3, [r2, #12]
623
 380 0004 43F02003 		orr	r3, r3, #32
624
 381 0008 D360     		str	r3, [r2, #12]
625
 100:../libSerial/src/serial.c **** 
626
 382              		.loc 1 100 1 is_stmt 0 view .LVU110
627
 383 000a 7047     		bx	lr
628
 384              		.cfi_endproc
629
 385              	.LFE68:
630
 387              		.section	.text.UART_IRQHandler,"ax",%progbits
631
 388              		.align	1
632
 389              		.global	UART_IRQHandler
633
 390              		.syntax unified
634
 391              		.thumb
635
 392              		.thumb_func
636
 393              		.fpu softvfp
637
 395              	UART_IRQHandler:
638
 396              	.LVL23:
639
 397              	.LFB70:
640
 131:../libSerial/src/serial.c **** 
641
 132:../libSerial/src/serial.c **** void
642
 133:../libSerial/src/serial.c **** UART_IRQHandler (usart_ctl *instance)
643
 134:../libSerial/src/serial.c **** {
644
 398              		.loc 1 134 1 is_stmt 1 view -0
645
 399              		.cfi_startproc
646
 400              		@ args = 0, pretend = 0, frame = 0
647
 401              		@ frame_needed = 0, uses_anonymous_args = 0
648
 402              		@ link register save eliminated.
649
 403              		.loc 1 134 1 is_stmt 0 view .LVU112
650
 404 0000 30B4     		push	{r4, r5}
651
 405              	.LCFI0:
652
 406              		.cfi_def_cfa_offset 8
653
 407              		.cfi_offset 4, -8
654
 408              		.cfi_offset 5, -4
655
 135:../libSerial/src/serial.c **** 
656
 136:../libSerial/src/serial.c ****   __disable_irq ();
657
 409              		.loc 1 136 3 is_stmt 1 view .LVU113
658
 410              	.LBB7:
659
 411              	.LBI7:
660
 412              		.file 2 "Drivers/CMSIS/Include/cmsis_gcc.h"
661
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 12
662
 
663
 
664
   1:Drivers/CMSIS/Include/cmsis_gcc.h **** /**************************************************************************//**
665
   2:Drivers/CMSIS/Include/cmsis_gcc.h ****  * @file     cmsis_gcc.h
666
   3:Drivers/CMSIS/Include/cmsis_gcc.h ****  * @brief    CMSIS compiler GCC header file
667
   4:Drivers/CMSIS/Include/cmsis_gcc.h ****  * @version  V5.0.4
668
   5:Drivers/CMSIS/Include/cmsis_gcc.h ****  * @date     09. April 2018
669
   6:Drivers/CMSIS/Include/cmsis_gcc.h ****  ******************************************************************************/
670
   7:Drivers/CMSIS/Include/cmsis_gcc.h **** /*
671
   8:Drivers/CMSIS/Include/cmsis_gcc.h ****  * Copyright (c) 2009-2018 Arm Limited. All rights reserved.
672
   9:Drivers/CMSIS/Include/cmsis_gcc.h ****  *
673
  10:Drivers/CMSIS/Include/cmsis_gcc.h ****  * SPDX-License-Identifier: Apache-2.0
674
  11:Drivers/CMSIS/Include/cmsis_gcc.h ****  *
675
  12:Drivers/CMSIS/Include/cmsis_gcc.h ****  * Licensed under the Apache License, Version 2.0 (the License); you may
676
  13:Drivers/CMSIS/Include/cmsis_gcc.h ****  * not use this file except in compliance with the License.
677
  14:Drivers/CMSIS/Include/cmsis_gcc.h ****  * You may obtain a copy of the License at
678
  15:Drivers/CMSIS/Include/cmsis_gcc.h ****  *
679
  16:Drivers/CMSIS/Include/cmsis_gcc.h ****  * www.apache.org/licenses/LICENSE-2.0
680
  17:Drivers/CMSIS/Include/cmsis_gcc.h ****  *
681
  18:Drivers/CMSIS/Include/cmsis_gcc.h ****  * Unless required by applicable law or agreed to in writing, software
682
  19:Drivers/CMSIS/Include/cmsis_gcc.h ****  * distributed under the License is distributed on an AS IS BASIS, WITHOUT
683
  20:Drivers/CMSIS/Include/cmsis_gcc.h ****  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
684
  21:Drivers/CMSIS/Include/cmsis_gcc.h ****  * See the License for the specific language governing permissions and
685
  22:Drivers/CMSIS/Include/cmsis_gcc.h ****  * limitations under the License.
686
  23:Drivers/CMSIS/Include/cmsis_gcc.h ****  */
687
  24:Drivers/CMSIS/Include/cmsis_gcc.h **** 
688
  25:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __CMSIS_GCC_H
689
  26:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __CMSIS_GCC_H
690
  27:Drivers/CMSIS/Include/cmsis_gcc.h **** 
691
  28:Drivers/CMSIS/Include/cmsis_gcc.h **** /* ignore some GCC warnings */
692
  29:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
693
  30:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wsign-conversion"
694
  31:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wconversion"
695
  32:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wunused-parameter"
696
  33:Drivers/CMSIS/Include/cmsis_gcc.h **** 
697
  34:Drivers/CMSIS/Include/cmsis_gcc.h **** /* Fallback for __has_builtin */
698
  35:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __has_builtin
699
  36:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __has_builtin(x) (0)
700
  37:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
701
  38:Drivers/CMSIS/Include/cmsis_gcc.h **** 
702
  39:Drivers/CMSIS/Include/cmsis_gcc.h **** /* CMSIS compiler specific defines */
703
  40:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __ASM
704
  41:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __ASM                                  __asm
705
  42:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
706
  43:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __INLINE
707
  44:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __INLINE                               inline
708
  45:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
709
  46:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __STATIC_INLINE
710
  47:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __STATIC_INLINE                        static inline
711
  48:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
712
  49:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __STATIC_FORCEINLINE                 
713
  50:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __STATIC_FORCEINLINE                   __attribute__((always_inline)) static inline
714
  51:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif                                           
715
  52:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __NO_RETURN
716
  53:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __NO_RETURN                            __attribute__((__noreturn__))
717
  54:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
718
  55:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __USED
719
  56:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __USED                                 __attribute__((used))
720
  57:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
721
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 13
722
 
723
 
724
  58:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __WEAK
725
  59:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __WEAK                                 __attribute__((weak))
726
  60:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
727
  61:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __PACKED
728
  62:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __PACKED                               __attribute__((packed, aligned(1)))
729
  63:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
730
  64:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __PACKED_STRUCT
731
  65:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __PACKED_STRUCT                        struct __attribute__((packed, aligned(1)))
732
  66:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
733
  67:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __PACKED_UNION
734
  68:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __PACKED_UNION                         union __attribute__((packed, aligned(1)))
735
  69:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
736
  70:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __UNALIGNED_UINT32        /* deprecated */
737
  71:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic push
738
  72:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic ignored "-Wpacked"
739
  73:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic ignored "-Wattributes"
740
  74:Drivers/CMSIS/Include/cmsis_gcc.h ****   struct __attribute__((packed)) T_UINT32 { uint32_t v; };
741
  75:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic pop
742
  76:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __UNALIGNED_UINT32(x)                  (((struct T_UINT32 *)(x))->v)
743
  77:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
744
  78:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __UNALIGNED_UINT16_WRITE
745
  79:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic push
746
  80:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic ignored "-Wpacked"
747
  81:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic ignored "-Wattributes"
748
  82:Drivers/CMSIS/Include/cmsis_gcc.h ****   __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; };
749
  83:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic pop
750
  84:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __UNALIGNED_UINT16_WRITE(addr, val)    (void)((((struct T_UINT16_WRITE *)(void *)(addr))-
751
  85:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
752
  86:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __UNALIGNED_UINT16_READ
753
  87:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic push
754
  88:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic ignored "-Wpacked"
755
  89:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic ignored "-Wattributes"
756
  90:Drivers/CMSIS/Include/cmsis_gcc.h ****   __PACKED_STRUCT T_UINT16_READ { uint16_t v; };
757
  91:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic pop
758
  92:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __UNALIGNED_UINT16_READ(addr)          (((const struct T_UINT16_READ *)(const void *)(add
759
  93:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
760
  94:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __UNALIGNED_UINT32_WRITE
761
  95:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic push
762
  96:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic ignored "-Wpacked"
763
  97:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic ignored "-Wattributes"
764
  98:Drivers/CMSIS/Include/cmsis_gcc.h ****   __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; };
765
  99:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic pop
766
 100:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __UNALIGNED_UINT32_WRITE(addr, val)    (void)((((struct T_UINT32_WRITE *)(void *)(addr))-
767
 101:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
768
 102:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __UNALIGNED_UINT32_READ
769
 103:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic push
770
 104:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic ignored "-Wpacked"
771
 105:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic ignored "-Wattributes"
772
 106:Drivers/CMSIS/Include/cmsis_gcc.h ****   __PACKED_STRUCT T_UINT32_READ { uint32_t v; };
773
 107:Drivers/CMSIS/Include/cmsis_gcc.h ****   #pragma GCC diagnostic pop
774
 108:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __UNALIGNED_UINT32_READ(addr)          (((const struct T_UINT32_READ *)(const void *)(add
775
 109:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
776
 110:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __ALIGNED
777
 111:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __ALIGNED(x)                           __attribute__((aligned(x)))
778
 112:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
779
 113:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef   __RESTRICT
780
 114:Drivers/CMSIS/Include/cmsis_gcc.h ****   #define __RESTRICT                             __restrict
781
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 14
782
 
783
 
784
 115:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
785
 116:Drivers/CMSIS/Include/cmsis_gcc.h **** 
786
 117:Drivers/CMSIS/Include/cmsis_gcc.h **** 
787
 118:Drivers/CMSIS/Include/cmsis_gcc.h **** /* ###########################  Core Function Access  ########################### */
788
 119:Drivers/CMSIS/Include/cmsis_gcc.h **** /** \ingroup  CMSIS_Core_FunctionInterface
789
 120:Drivers/CMSIS/Include/cmsis_gcc.h ****     \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions
790
 121:Drivers/CMSIS/Include/cmsis_gcc.h ****   @{
791
 122:Drivers/CMSIS/Include/cmsis_gcc.h ****  */
792
 123:Drivers/CMSIS/Include/cmsis_gcc.h **** 
793
 124:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
794
 125:Drivers/CMSIS/Include/cmsis_gcc.h ****   \brief   Enable IRQ Interrupts
795
 126:Drivers/CMSIS/Include/cmsis_gcc.h ****   \details Enables IRQ interrupts by clearing the I-bit in the CPSR.
796
 127:Drivers/CMSIS/Include/cmsis_gcc.h ****            Can only be executed in Privileged modes.
797
 128:Drivers/CMSIS/Include/cmsis_gcc.h ****  */
798
 129:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __enable_irq(void)
799
 130:Drivers/CMSIS/Include/cmsis_gcc.h **** {
800
 131:Drivers/CMSIS/Include/cmsis_gcc.h ****   __ASM volatile ("cpsie i" : : : "memory");
801
 132:Drivers/CMSIS/Include/cmsis_gcc.h **** }
802
 133:Drivers/CMSIS/Include/cmsis_gcc.h **** 
803
 134:Drivers/CMSIS/Include/cmsis_gcc.h **** 
804
 135:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
805
 136:Drivers/CMSIS/Include/cmsis_gcc.h ****   \brief   Disable IRQ Interrupts
806
 137:Drivers/CMSIS/Include/cmsis_gcc.h ****   \details Disables IRQ interrupts by setting the I-bit in the CPSR.
807
 138:Drivers/CMSIS/Include/cmsis_gcc.h ****            Can only be executed in Privileged modes.
808
 139:Drivers/CMSIS/Include/cmsis_gcc.h ****  */
809
 140:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __disable_irq(void)
810
 413              		.loc 2 140 27 view .LVU114
811
 414              	.LBB8:
812
 141:Drivers/CMSIS/Include/cmsis_gcc.h **** {
813
 142:Drivers/CMSIS/Include/cmsis_gcc.h ****   __ASM volatile ("cpsid i" : : : "memory");
814
 415              		.loc 2 142 3 view .LVU115
815
 416              		.syntax unified
816
 417              	@ 142 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
817
 418 0002 72B6     		cpsid i
818
 419              	@ 0 "" 2
819
 420              		.thumb
820
 421              		.syntax unified
821
 422              	.LBE8:
822
 423              	.LBE7:
823
 137:../libSerial/src/serial.c ****   uint32_t rxStatus;	// status from USART receiver
824
 424              		.loc 1 137 3 view .LVU116
825
 138:../libSerial/src/serial.c **** 
826
 139:../libSerial/src/serial.c ****   rxStatus = instance->Instance->SR;// read the status bits - this resets all the hardware signalli
827
 425              		.loc 1 139 3 view .LVU117
828
 426              		.loc 1 139 22 is_stmt 0 view .LVU118
829
 427 0004 0368     		ldr	r3, [r0]
830
 428              		.loc 1 139 12 view .LVU119
831
 429 0006 1A68     		ldr	r2, [r3]
832
 430              	.LVL24:
833
 140:../libSerial/src/serial.c **** 
834
 141:../libSerial/src/serial.c ****   if (rxStatus & USART_SR_RXNE)
835
 431              		.loc 1 141 3 is_stmt 1 view .LVU120
836
 432              		.loc 1 141 6 is_stmt 0 view .LVU121
837
 433 0008 12F0200F 		tst	r2, #32
838
 434 000c 1AD0     		beq	.L20
839
 435              	.LBB9:
840
 142:../libSerial/src/serial.c ****     {
841
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 15
842
 
843
 
844
 143:../libSerial/src/serial.c ****       // no error has occurred...
845
 144:../libSerial/src/serial.c ****       uint8_t rxChar = (uint8_t) (instance->Instance->DR & 0xff);// read the bottom 8-bits only
846
 436              		.loc 1 144 7 is_stmt 1 view .LVU122
847
 437              		.loc 1 144 53 is_stmt 0 view .LVU123
848
 438 000e 5968     		ldr	r1, [r3, #4]
849
 439              		.loc 1 144 15 view .LVU124
850
 440 0010 C9B2     		uxtb	r1, r1
851
 441              	.LVL25:
852
 145:../libSerial/src/serial.c **** 
853
 146:../libSerial/src/serial.c ****       if (!instance->rx_usart_buffer_full)
854
 442              		.loc 1 146 7 is_stmt 1 view .LVU125
855
 443              		.loc 1 146 20 is_stmt 0 view .LVU126
856
 444 0012 90F81C48 		ldrb	r4, [r0, #2076]	@ zero_extendqisi2
857
 445              		.loc 1 146 10 view .LVU127
858
 446 0016 ACB9     		cbnz	r4, .L20
859
 147:../libSerial/src/serial.c **** 	{
860
 148:../libSerial/src/serial.c **** 	  instance->rx_usart_buff[instance->rx_usart_in_Ptr++] = rxChar;
861
 447              		.loc 1 148 4 is_stmt 1 view .LVU128
862
 448              		.loc 1 148 36 is_stmt 0 view .LVU129
863
 449 0018 D0F81448 		ldr	r4, [r0, #2068]
864
 450              		.loc 1 148 53 view .LVU130
865
 451 001c 651C     		adds	r5, r4, #1
866
 452 001e C0F81458 		str	r5, [r0, #2068]
867
 453              		.loc 1 148 57 view .LVU131
868
 454 0022 0444     		add	r4, r4, r0
869
 455 0024 84F81414 		strb	r1, [r4, #1044]
870
 149:../libSerial/src/serial.c **** 
871
 150:../libSerial/src/serial.c **** 	  if (instance->rx_usart_in_Ptr >= RX_USART_BUFF_SIZ)
872
 456              		.loc 1 150 4 is_stmt 1 view .LVU132
873
 457              		.loc 1 150 16 is_stmt 0 view .LVU133
874
 458 0028 D0F81418 		ldr	r1, [r0, #2068]
875
 459              	.LVL26:
876
 460              		.loc 1 150 7 view .LVU134
877
 461 002c B1F5806F 		cmp	r1, #1024
878
 462 0030 02D3     		bcc	.L21
879
 151:../libSerial/src/serial.c **** 	    {
880
 152:../libSerial/src/serial.c **** 	      instance->rx_usart_in_Ptr = 0;
881
 463              		.loc 1 152 8 is_stmt 1 view .LVU135
882
 464              		.loc 1 152 34 is_stmt 0 view .LVU136
883
 465 0032 0021     		movs	r1, #0
884
 466 0034 C0F81418 		str	r1, [r0, #2068]
885
 467              	.LVL27:
886
 468              	.L21:
887
 153:../libSerial/src/serial.c **** 	    }
888
 154:../libSerial/src/serial.c **** 	  if (instance->rx_usart_in_Ptr == instance->rx_usart_out_Ptr)
889
 469              		.loc 1 154 4 is_stmt 1 view .LVU137
890
 470              		.loc 1 154 16 is_stmt 0 view .LVU138
891
 471 0038 D0F81448 		ldr	r4, [r0, #2068]
892
 472              		.loc 1 154 45 view .LVU139
893
 473 003c D0F81818 		ldr	r1, [r0, #2072]
894
 474              		.loc 1 154 7 view .LVU140
895
 475 0040 8C42     		cmp	r4, r1
896
 476 0042 24D0     		beq	.L26
897
 477              	.L20:
898
 478              		.loc 1 154 7 view .LVU141
899
 479              	.LBE9:
900
 155:../libSerial/src/serial.c **** 	    {
901
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 16
902
 
903
 
904
 156:../libSerial/src/serial.c **** 	      instance->rx_usart_buffer_full = 1; /* buffer overrun */
905
 157:../libSerial/src/serial.c **** 	    }
906
 158:../libSerial/src/serial.c **** 	}
907
 159:../libSerial/src/serial.c ****     }
908
 160:../libSerial/src/serial.c ****   /* check for transmitter interrupt : this code is used */
909
 161:../libSerial/src/serial.c ****   if ((rxStatus & USART_SR_TXE) != RESET)
910
 480              		.loc 1 161 3 is_stmt 1 view .LVU142
911
 481              		.loc 1 161 6 is_stmt 0 view .LVU143
912
 482 0044 12F0800F 		tst	r2, #128
913
 483 0048 2CD0     		beq	.L22
914
 162:../libSerial/src/serial.c ****     {
915
 163:../libSerial/src/serial.c **** 
916
 164:../libSerial/src/serial.c ****       /* Only enable the transmitter when baud detect has completed or check expired.
917
 165:../libSerial/src/serial.c ****        * and the software is ready for it to be enabled as programming mode is wanting
918
 166:../libSerial/src/serial.c ****        * to receive a response and that can get blocked if we're streaming a lot of debug messages*
919
 167:../libSerial/src/serial.c ****       if (instance->tx_usart_in_Ptr != instance->tx_usart_out_Ptr)
920
 484              		.loc 1 167 7 is_stmt 1 view .LVU144
921
 485              		.loc 1 167 19 is_stmt 0 view .LVU145
922
 486 004a D0F80814 		ldr	r1, [r0, #1032]
923
 487              		.loc 1 167 48 view .LVU146
924
 488 004e D0F80C24 		ldr	r2, [r0, #1036]
925
 489              	.LVL28:
926
 490              		.loc 1 167 10 view .LVU147
927
 491 0052 9142     		cmp	r1, r2
928
 492 0054 1FD0     		beq	.L23
929
 168:../libSerial/src/serial.c **** 	{
930
 169:../libSerial/src/serial.c **** 	  instance->Instance->DR =
931
 493              		.loc 1 169 4 is_stmt 1 view .LVU148
932
 170:../libSerial/src/serial.c **** 	      instance->tx_usart_buff[instance->tx_usart_out_Ptr++];
933
 494              		.loc 1 170 40 is_stmt 0 view .LVU149
934
 495 0056 D0F80C24 		ldr	r2, [r0, #1036]
935
 496              		.loc 1 170 58 view .LVU150
936
 497 005a 511C     		adds	r1, r2, #1
937
 498 005c C0F80C14 		str	r1, [r0, #1036]
938
 499              		.loc 1 170 31 view .LVU151
939
 500 0060 0244     		add	r2, r2, r0
940
 501 0062 127A     		ldrb	r2, [r2, #8]	@ zero_extendqisi2
941
 502 0064 D2B2     		uxtb	r2, r2
942
 169:../libSerial/src/serial.c **** 	      instance->tx_usart_buff[instance->tx_usart_out_Ptr++];
943
 503              		.loc 1 169 27 view .LVU152
944
 504 0066 5A60     		str	r2, [r3, #4]
945
 171:../libSerial/src/serial.c **** 	  if (instance->tx_usart_count != 0)
946
 505              		.loc 1 171 4 is_stmt 1 view .LVU153
947
 506              		.loc 1 171 16 is_stmt 0 view .LVU154
948
 507 0068 B0F81234 		ldrh	r3, [r0, #1042]
949
 508 006c 9BB2     		uxth	r3, r3
950
 509              		.loc 1 171 7 view .LVU155
951
 510 006e 2BB1     		cbz	r3, .L24
952
 172:../libSerial/src/serial.c **** 	    instance->tx_usart_count -= 1;
953
 511              		.loc 1 172 6 is_stmt 1 view .LVU156
954
 512              		.loc 1 172 31 is_stmt 0 view .LVU157
955
 513 0070 B0F81234 		ldrh	r3, [r0, #1042]
956
 514 0074 013B     		subs	r3, r3, #1
957
 515 0076 9BB2     		uxth	r3, r3
958
 516 0078 A0F81234 		strh	r3, [r0, #1042]	@ movhi
959
 517              	.L24:
960
 173:../libSerial/src/serial.c **** 
961
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 17
962
 
963
 
964
 174:../libSerial/src/serial.c **** 	  if (instance->tx_usart_out_Ptr >= TX_USART_BUFF_SIZ)
965
 518              		.loc 1 174 4 is_stmt 1 view .LVU158
966
 519              		.loc 1 174 16 is_stmt 0 view .LVU159
967
 520 007c D0F80C34 		ldr	r3, [r0, #1036]
968
 521              		.loc 1 174 7 view .LVU160
969
 522 0080 B3F5806F 		cmp	r3, #1024
970
 523 0084 0ED3     		bcc	.L22
971
 175:../libSerial/src/serial.c **** 	    {
972
 176:../libSerial/src/serial.c **** 	      instance->tx_usart_out_Ptr = 0;
973
 524              		.loc 1 176 8 is_stmt 1 view .LVU161
974
 525              		.loc 1 176 35 is_stmt 0 view .LVU162
975
 526 0086 0023     		movs	r3, #0
976
 527 0088 C0F80C34 		str	r3, [r0, #1036]
977
 528 008c 0AE0     		b	.L22
978
 529              	.LVL29:
979
 530              	.L26:
980
 531              	.LBB10:
981
 156:../libSerial/src/serial.c **** 	    }
982
 532              		.loc 1 156 8 is_stmt 1 view .LVU163
983
 156:../libSerial/src/serial.c **** 	    }
984
 533              		.loc 1 156 39 is_stmt 0 view .LVU164
985
 534 008e 0121     		movs	r1, #1
986
 535 0090 80F81C18 		strb	r1, [r0, #2076]
987
 536 0094 D6E7     		b	.L20
988
 537              	.LVL30:
989
 538              	.L23:
990
 156:../libSerial/src/serial.c **** 	    }
991
 539              		.loc 1 156 39 view .LVU165
992
 540              	.LBE10:
993
 177:../libSerial/src/serial.c **** 	    }
994
 178:../libSerial/src/serial.c **** 	}
995
 179:../libSerial/src/serial.c ****       else
996
 180:../libSerial/src/serial.c **** 	{
997
 181:../libSerial/src/serial.c **** 	  __HAL_UART_DISABLE_IT (instance, UART_IT_TXE);
998
 541              		.loc 1 181 4 is_stmt 1 view .LVU166
999
 542 0096 DA68     		ldr	r2, [r3, #12]
1000
 543 0098 22F08002 		bic	r2, r2, #128
1001
 544 009c DA60     		str	r2, [r3, #12]
1002
 182:../libSerial/src/serial.c **** 	  instance->tx_usart_running = 0;
1003
 545              		.loc 1 182 4 view .LVU167
1004
 546              		.loc 1 182 31 is_stmt 0 view .LVU168
1005
 547 009e 0023     		movs	r3, #0
1006
 548 00a0 80F81034 		strb	r3, [r0, #1040]
1007
 549              	.L22:
1008
 183:../libSerial/src/serial.c **** 	}
1009
 184:../libSerial/src/serial.c ****     }
1010
 185:../libSerial/src/serial.c **** 
1011
 186:../libSerial/src/serial.c ****   __enable_irq ();
1012
 550              		.loc 1 186 3 is_stmt 1 view .LVU169
1013
 551              	.LBB11:
1014
 552              	.LBI11:
1015
 129:Drivers/CMSIS/Include/cmsis_gcc.h **** {
1016
 553              		.loc 2 129 27 view .LVU170
1017
 554              	.LBB12:
1018
 131:Drivers/CMSIS/Include/cmsis_gcc.h **** }
1019
 555              		.loc 2 131 3 view .LVU171
1020
 556              		.syntax unified
1021
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 18
1022
 
1023
 
1024
 557              	@ 131 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1025
 558 00a4 62B6     		cpsie i
1026
 559              	@ 0 "" 2
1027
 560              		.thumb
1028
 561              		.syntax unified
1029
 562              	.LBE12:
1030
 563              	.LBE11:
1031
 187:../libSerial/src/serial.c **** }
1032
 564              		.loc 1 187 1 is_stmt 0 view .LVU172
1033
 565 00a6 30BC     		pop	{r4, r5}
1034
 566              	.LCFI1:
1035
 567              		.cfi_restore 5
1036
 568              		.cfi_restore 4
1037
 569              		.cfi_def_cfa_offset 0
1038
 570 00a8 7047     		bx	lr
1039
 571              		.cfi_endproc
1040
 572              	.LFE70:
1041
 574              		.section	.text.PutCharSerial,"ax",%progbits
1042
 575              		.align	1
1043
 576              		.global	PutCharSerial
1044
 577              		.syntax unified
1045
 578              		.thumb
1046
 579              		.thumb_func
1047
 580              		.fpu softvfp
1048
 582              	PutCharSerial:
1049
 583              	.LVL31:
1050
 584              	.LFB71:
1051
 188:../libSerial/src/serial.c **** 
1052
 189:../libSerial/src/serial.c **** void
1053
 190:../libSerial/src/serial.c **** PutCharSerial (usart_ctl *instance, uint8_t c)
1054
 191:../libSerial/src/serial.c **** {
1055
 585              		.loc 1 191 1 is_stmt 1 view -0
1056
 586              		.cfi_startproc
1057
 587              		@ args = 0, pretend = 0, frame = 0
1058
 588              		@ frame_needed = 0, uses_anonymous_args = 0
1059
 589              		.loc 1 191 1 is_stmt 0 view .LVU174
1060
 590 0000 08B5     		push	{r3, lr}
1061
 591              	.LCFI2:
1062
 592              		.cfi_def_cfa_offset 8
1063
 593              		.cfi_offset 3, -8
1064
 594              		.cfi_offset 14, -4
1065
 192:../libSerial/src/serial.c ****   // Put character in Crayon/Pen interface
1066
 193:../libSerial/src/serial.c ****   PutCharSerialFIFO (instance, c);
1067
 595              		.loc 1 193 3 is_stmt 1 view .LVU175
1068
 596 0002 FFF7FEFF 		bl	PutCharSerialFIFO
1069
 597              	.LVL32:
1070
 194:../libSerial/src/serial.c **** }
1071
 598              		.loc 1 194 1 is_stmt 0 view .LVU176
1072
 599 0006 08BD     		pop	{r3, pc}
1073
 600              		.cfi_endproc
1074
 601              	.LFE71:
1075
 603              		.section	.text.ResetTxBuffer,"ax",%progbits
1076
 604              		.align	1
1077
 605              		.global	ResetTxBuffer
1078
 606              		.syntax unified
1079
 607              		.thumb
1080
 608              		.thumb_func
1081
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 19
1082
 
1083
 
1084
 609              		.fpu softvfp
1085
 611              	ResetTxBuffer:
1086
 612              	.LVL33:
1087
 613              	.LFB72:
1088
 195:../libSerial/src/serial.c **** 
1089
 196:../libSerial/src/serial.c **** /*
1090
 197:../libSerial/src/serial.c ****  * \brief
1091
 198:../libSerial/src/serial.c ****  * ResetTxBuffer(void) - resets the serial transmitter buffer
1092
 199:../libSerial/src/serial.c ****  */
1093
 200:../libSerial/src/serial.c **** void
1094
 201:../libSerial/src/serial.c **** ResetTxBuffer (usart_ctl *instance)
1095
 202:../libSerial/src/serial.c **** {
1096
 614              		.loc 1 202 1 is_stmt 1 view -0
1097
 615              		.cfi_startproc
1098
 616              		@ args = 0, pretend = 0, frame = 0
1099
 617              		@ frame_needed = 0, uses_anonymous_args = 0
1100
 618              		@ link register save eliminated.
1101
 203:../libSerial/src/serial.c **** 
1102
 204:../libSerial/src/serial.c ****   instance->tx_usart_out_Ptr = 0;
1103
 619              		.loc 1 204 3 view .LVU178
1104
 620              		.loc 1 204 30 is_stmt 0 view .LVU179
1105
 621 0000 0023     		movs	r3, #0
1106
 622 0002 C0F80C34 		str	r3, [r0, #1036]
1107
 205:../libSerial/src/serial.c ****   instance->tx_usart_running = 0;
1108
 623              		.loc 1 205 3 is_stmt 1 view .LVU180
1109
 624              		.loc 1 205 30 is_stmt 0 view .LVU181
1110
 625 0006 80F81034 		strb	r3, [r0, #1040]
1111
 206:../libSerial/src/serial.c ****   instance->tx_usart_in_Ptr = 0; /* setup in pointer last to drop any chars come in */
1112
 626              		.loc 1 206 3 is_stmt 1 view .LVU182
1113
 627              		.loc 1 206 29 is_stmt 0 view .LVU183
1114
 628 000a C0F80834 		str	r3, [r0, #1032]
1115
 207:../libSerial/src/serial.c ****   instance->tx_usart_count = 0;
1116
 629              		.loc 1 207 3 is_stmt 1 view .LVU184
1117
 630              		.loc 1 207 28 is_stmt 0 view .LVU185
1118
 631 000e A0F81234 		strh	r3, [r0, #1042]	@ movhi
1119
 208:../libSerial/src/serial.c **** 
1120
 209:../libSerial/src/serial.c **** }
1121
 632              		.loc 1 209 1 view .LVU186
1122
 633 0012 7047     		bx	lr
1123
 634              		.cfi_endproc
1124
 635              	.LFE72:
1125
 637              		.section	.text.ResetRxBuffer,"ax",%progbits
1126
 638              		.align	1
1127
 639              		.global	ResetRxBuffer
1128
 640              		.syntax unified
1129
 641              		.thumb
1130
 642              		.thumb_func
1131
 643              		.fpu softvfp
1132
 645              	ResetRxBuffer:
1133
 646              	.LVL34:
1134
 647              	.LFB73:
1135
 210:../libSerial/src/serial.c **** 
1136
 211:../libSerial/src/serial.c **** /*
1137
 212:../libSerial/src/serial.c ****  * \brief
1138
 213:../libSerial/src/serial.c ****  * void ResetRxBuffer(void) - resets the serial receiver buffer
1139
 214:../libSerial/src/serial.c ****  */
1140
 215:../libSerial/src/serial.c **** void
1141
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 20
1142
 
1143
 
1144
 216:../libSerial/src/serial.c **** ResetRxBuffer (usart_ctl *instance)
1145
 217:../libSerial/src/serial.c **** {
1146
 648              		.loc 1 217 1 is_stmt 1 view -0
1147
 649              		.cfi_startproc
1148
 650              		@ args = 0, pretend = 0, frame = 0
1149
 651              		@ frame_needed = 0, uses_anonymous_args = 0
1150
 652              		@ link register save eliminated.
1151
 218:../libSerial/src/serial.c **** 
1152
 219:../libSerial/src/serial.c ****   instance->rx_usart_out_Ptr = 0;
1153
 653              		.loc 1 219 3 view .LVU188
1154
 654              		.loc 1 219 30 is_stmt 0 view .LVU189
1155
 655 0000 0023     		movs	r3, #0
1156
 656 0002 C0F81838 		str	r3, [r0, #2072]
1157
 220:../libSerial/src/serial.c ****   instance->rx_usart_buffer_full = 0;
1158
 657              		.loc 1 220 3 is_stmt 1 view .LVU190
1159
 658              		.loc 1 220 34 is_stmt 0 view .LVU191
1160
 659 0006 80F81C38 		strb	r3, [r0, #2076]
1161
 221:../libSerial/src/serial.c ****   instance->rx_usart_in_Ptr = 0; /* setup in pointer last to drop any chars come in */
1162
 660              		.loc 1 221 3 is_stmt 1 view .LVU192
1163
 661              		.loc 1 221 29 is_stmt 0 view .LVU193
1164
 662 000a C0F81438 		str	r3, [r0, #2068]
1165
 222:../libSerial/src/serial.c **** 
1166
 223:../libSerial/src/serial.c **** }
1167
 663              		.loc 1 223 1 view .LVU194
1168
 664 000e 7047     		bx	lr
1169
 665              		.cfi_endproc
1170
 666              	.LFE73:
1171
 668              		.section	.text.FlushSerial,"ax",%progbits
1172
 669              		.align	1
1173
 670              		.global	FlushSerial
1174
 671              		.syntax unified
1175
 672              		.thumb
1176
 673              		.thumb_func
1177
 674              		.fpu softvfp
1178
 676              	FlushSerial:
1179
 677              	.LVL35:
1180
 678              	.LFB74:
1181
 224:../libSerial/src/serial.c **** 
1182
 225:../libSerial/src/serial.c **** /***!
1183
 226:../libSerial/src/serial.c ****  * @brief Flush Serial input and output buffers
1184
 227:../libSerial/src/serial.c ****  */
1185
 228:../libSerial/src/serial.c **** void
1186
 229:../libSerial/src/serial.c **** FlushSerial (usart_ctl *instance)
1187
 230:../libSerial/src/serial.c **** {
1188
 679              		.loc 1 230 1 is_stmt 1 view -0
1189
 680              		.cfi_startproc
1190
 681              		@ args = 0, pretend = 0, frame = 0
1191
 682              		@ frame_needed = 0, uses_anonymous_args = 0
1192
 683              		.loc 1 230 1 is_stmt 0 view .LVU196
1193
 684 0000 10B5     		push	{r4, lr}
1194
 685              	.LCFI3:
1195
 686              		.cfi_def_cfa_offset 8
1196
 687              		.cfi_offset 4, -8
1197
 688              		.cfi_offset 14, -4
1198
 689 0002 0446     		mov	r4, r0
1199
 231:../libSerial/src/serial.c ****   ResetRxBuffer (instance);
1200
 690              		.loc 1 231 3 is_stmt 1 view .LVU197
1201
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 21
1202
 
1203
 
1204
 691 0004 FFF7FEFF 		bl	ResetRxBuffer
1205
 692              	.LVL36:
1206
 232:../libSerial/src/serial.c ****   ResetTxBuffer (instance);
1207
 693              		.loc 1 232 3 view .LVU198
1208
 694 0008 2046     		mov	r0, r4
1209
 695 000a FFF7FEFF 		bl	ResetTxBuffer
1210
 696              	.LVL37:
1211
 233:../libSerial/src/serial.c **** }
1212
 697              		.loc 1 233 1 is_stmt 0 view .LVU199
1213
 698 000e 10BD     		pop	{r4, pc}
1214
 699              		.loc 1 233 1 view .LVU200
1215
 700              		.cfi_endproc
1216
 701              	.LFE74:
1217
 703              		.section	.text.TxBufferEmpty,"ax",%progbits
1218
 704              		.align	1
1219
 705              		.global	TxBufferEmpty
1220
 706              		.syntax unified
1221
 707              		.thumb
1222
 708              		.thumb_func
1223
 709              		.fpu softvfp
1224
 711              	TxBufferEmpty:
1225
 712              	.LVL38:
1226
 713              	.LFB75:
1227
 234:../libSerial/src/serial.c **** 
1228
 235:../libSerial/src/serial.c **** /***!
1229
 236:../libSerial/src/serial.c ****  * @brief check if tx buffer is empty...
1230
 237:../libSerial/src/serial.c ****  */
1231
 238:../libSerial/src/serial.c **** uint8_t
1232
 239:../libSerial/src/serial.c **** TxBufferEmpty (usart_ctl *instance)
1233
 240:../libSerial/src/serial.c **** {
1234
 714              		.loc 1 240 1 is_stmt 1 view -0
1235
 715              		.cfi_startproc
1236
 716              		@ args = 0, pretend = 0, frame = 0
1237
 717              		@ frame_needed = 0, uses_anonymous_args = 0
1238
 718              		@ link register save eliminated.
1239
 241:../libSerial/src/serial.c ****   return (0 == instance->tx_usart_count );
1240
 719              		.loc 1 241 3 view .LVU202
1241
 720              		.loc 1 241 24 is_stmt 0 view .LVU203
1242
 721 0000 B0F81204 		ldrh	r0, [r0, #1042]
1243
 722              	.LVL39:
1244
 723              		.loc 1 241 24 view .LVU204
1245
 724 0004 80B2     		uxth	r0, r0
1246
 242:../libSerial/src/serial.c **** }
1247
 725              		.loc 1 242 1 view .LVU205
1248
 726 0006 B0FA80F0 		clz	r0, r0
1249
 727 000a 4009     		lsrs	r0, r0, #5
1250
 728 000c 7047     		bx	lr
1251
 729              		.cfi_endproc
1252
 730              	.LFE75:
1253
 732              		.section	.text.TxWaitEmpty,"ax",%progbits
1254
 733              		.align	1
1255
 734              		.global	TxWaitEmpty
1256
 735              		.syntax unified
1257
 736              		.thumb
1258
 737              		.thumb_func
1259
 738              		.fpu softvfp
1260
 740              	TxWaitEmpty:
1261
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 22
1262
 
1263
 
1264
 741              	.LFB76:
1265
 243:../libSerial/src/serial.c **** 
1266
 244:../libSerial/src/serial.c **** /***!
1267
 245:../libSerial/src/serial.c ****  * @brief wait for transmission to finish
1268
 246:../libSerial/src/serial.c ****  */
1269
 247:../libSerial/src/serial.c **** 
1270
 248:../libSerial/src/serial.c **** void TxWaitEmpty(usart_ctl *instance)
1271
 249:../libSerial/src/serial.c **** {
1272
 742              		.loc 1 249 1 is_stmt 1 view -0
1273
 743              		.cfi_startproc
1274
 744              		@ args = 0, pretend = 0, frame = 0
1275
 745              		@ frame_needed = 0, uses_anonymous_args = 0
1276
 746              		@ link register save eliminated.
1277
 747              	.LVL40:
1278
 748              	.L35:
1279
 250:../libSerial/src/serial.c ****   while (instance->tx_usart_count ||
1280
 251:../libSerial/src/serial.c ****        (instance->Instance->SR & USART_SR_TC) != RESET) {};
1281
 749              		.loc 1 251 58 discriminator 3 view .LVU207
1282
 250:../libSerial/src/serial.c ****   while (instance->tx_usart_count ||
1283
 750              		.loc 1 250 18 is_stmt 0 discriminator 3 view .LVU208
1284
 751 0000 B0F81234 		ldrh	r3, [r0, #1042]
1285
 752 0004 9BB2     		uxth	r3, r3
1286
 250:../libSerial/src/serial.c ****   while (instance->tx_usart_count ||
1287
 753              		.loc 1 250 9 discriminator 3 view .LVU209
1288
 754 0006 002B     		cmp	r3, #0
1289
 755 0008 FAD1     		bne	.L35
1290
 756              		.loc 1 251 17 discriminator 2 view .LVU210
1291
 757 000a 0368     		ldr	r3, [r0]
1292
 758              		.loc 1 251 27 discriminator 2 view .LVU211
1293
 759 000c 1B68     		ldr	r3, [r3]
1294
 250:../libSerial/src/serial.c ****   while (instance->tx_usart_count ||
1295
 760              		.loc 1 250 35 discriminator 2 view .LVU212
1296
 761 000e 13F0400F 		tst	r3, #64
1297
 762 0012 F5D1     		bne	.L35
1298
 252:../libSerial/src/serial.c **** }
1299
 763              		.loc 1 252 1 view .LVU213
1300
 764 0014 7047     		bx	lr
1301
 765              		.cfi_endproc
1302
 766              	.LFE76:
1303
 768              		.section	.text.init_usart_ctl,"ax",%progbits
1304
 769              		.align	1
1305
 770              		.global	init_usart_ctl
1306
 771              		.syntax unified
1307
 772              		.thumb
1308
 773              		.thumb_func
1309
 774              		.fpu softvfp
1310
 776              	init_usart_ctl:
1311
 777              	.LVL41:
1312
 778              	.LFB77:
1313
 253:../libSerial/src/serial.c **** 
1314
 254:../libSerial/src/serial.c **** /****
1315
 255:../libSerial/src/serial.c ****  * @brief Initialise control structure
1316
 256:../libSerial/src/serial.c ****  */
1317
 257:../libSerial/src/serial.c **** void
1318
 258:../libSerial/src/serial.c **** init_usart_ctl (usart_ctl *instance, UART_HandleTypeDef *handle)
1319
 259:../libSerial/src/serial.c **** {
1320
 779              		.loc 1 259 1 is_stmt 1 view -0
1321
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 23
1322
 
1323
 
1324
 780              		.cfi_startproc
1325
 781              		@ args = 0, pretend = 0, frame = 0
1326
 782              		@ frame_needed = 0, uses_anonymous_args = 0
1327
 783              		@ link register save eliminated.
1328
 260:../libSerial/src/serial.c **** 
1329
 261:../libSerial/src/serial.c ****   instance->handle = handle;
1330
 784              		.loc 1 261 3 view .LVU215
1331
 785              		.loc 1 261 20 is_stmt 0 view .LVU216
1332
 786 0000 4160     		str	r1, [r0, #4]
1333
 262:../libSerial/src/serial.c ****   instance->Instance = handle->Instance;
1334
 787              		.loc 1 262 3 is_stmt 1 view .LVU217
1335
 788              		.loc 1 262 30 is_stmt 0 view .LVU218
1336
 789 0002 0B68     		ldr	r3, [r1]
1337
 790              		.loc 1 262 22 view .LVU219
1338
 791 0004 0360     		str	r3, [r0]
1339
 263:../libSerial/src/serial.c **** 
1340
 264:../libSerial/src/serial.c ****   instance->tx_usart_in_Ptr = 0;
1341
 792              		.loc 1 264 3 is_stmt 1 view .LVU220
1342
 793              		.loc 1 264 29 is_stmt 0 view .LVU221
1343
 794 0006 0023     		movs	r3, #0
1344
 795 0008 C0F80834 		str	r3, [r0, #1032]
1345
 265:../libSerial/src/serial.c ****   instance->tx_usart_out_Ptr = 0;
1346
 796              		.loc 1 265 3 is_stmt 1 view .LVU222
1347
 797              		.loc 1 265 30 is_stmt 0 view .LVU223
1348
 798 000c C0F80C34 		str	r3, [r0, #1036]
1349
 266:../libSerial/src/serial.c ****   instance->tx_usart_running = 0;
1350
 799              		.loc 1 266 3 is_stmt 1 view .LVU224
1351
 800              		.loc 1 266 30 is_stmt 0 view .LVU225
1352
 801 0010 80F81034 		strb	r3, [r0, #1040]
1353
 267:../libSerial/src/serial.c ****   instance->tx_usart_count = 0;
1354
 802              		.loc 1 267 3 is_stmt 1 view .LVU226
1355
 803              		.loc 1 267 28 is_stmt 0 view .LVU227
1356
 804 0014 A0F81234 		strh	r3, [r0, #1042]	@ movhi
1357
 268:../libSerial/src/serial.c **** 
1358
 269:../libSerial/src/serial.c ****   instance->rx_usart_in_Ptr = 0;
1359
 805              		.loc 1 269 3 is_stmt 1 view .LVU228
1360
 806              		.loc 1 269 29 is_stmt 0 view .LVU229
1361
 807 0018 C0F81438 		str	r3, [r0, #2068]
1362
 270:../libSerial/src/serial.c ****   instance->rx_usart_out_Ptr = 0;
1363
 808              		.loc 1 270 3 is_stmt 1 view .LVU230
1364
 809              		.loc 1 270 30 is_stmt 0 view .LVU231
1365
 810 001c C0F81838 		str	r3, [r0, #2072]
1366
 271:../libSerial/src/serial.c ****   instance->rx_usart_buffer_full = 0;
1367
 811              		.loc 1 271 3 is_stmt 1 view .LVU232
1368
 812              		.loc 1 271 34 is_stmt 0 view .LVU233
1369
 813 0020 80F81C38 		strb	r3, [r0, #2076]
1370
 272:../libSerial/src/serial.c **** 
1371
 273:../libSerial/src/serial.c **** }
1372
 814              		.loc 1 273 1 view .LVU234
1373
 815 0024 7047     		bx	lr
1374
 816              		.cfi_endproc
1375
 817              	.LFE77:
1376
 819              		.section	.text.USART1_IRQHandler,"ax",%progbits
1377
 820              		.align	1
1378
 821              		.global	USART1_IRQHandler
1379
 822              		.syntax unified
1380
 823              		.thumb
1381
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 24
1382
 
1383
 
1384
 824              		.thumb_func
1385
 825              		.fpu softvfp
1386
 827              	USART1_IRQHandler:
1387
 828              	.LFB78:
1388
 274:../libSerial/src/serial.c **** 
1389
 275:../libSerial/src/serial.c **** /////////////////////////////////////////////////////////
1390
 276:../libSerial/src/serial.c **** /// Moved from generated code  to avoid crappy HAL handler
1391
 277:../libSerial/src/serial.c **** #if defined SERIAL_UART1
1392
 278:../libSerial/src/serial.c **** void USART1_IRQHandler(void)
1393
 279:../libSerial/src/serial.c **** {
1394
 829              		.loc 1 279 1 is_stmt 1 view -0
1395
 830              		.cfi_startproc
1396
 831              		@ args = 0, pretend = 0, frame = 0
1397
 832              		@ frame_needed = 0, uses_anonymous_args = 0
1398
 833 0000 08B5     		push	{r3, lr}
1399
 834              	.LCFI4:
1400
 835              		.cfi_def_cfa_offset 8
1401
 836              		.cfi_offset 3, -8
1402
 837              		.cfi_offset 14, -4
1403
 280:../libSerial/src/serial.c **** 	UART_IRQHandler(&uc1);
1404
 838              		.loc 1 280 2 view .LVU236
1405
 839 0002 0248     		ldr	r0, .L40
1406
 840 0004 FFF7FEFF 		bl	UART_IRQHandler
1407
 841              	.LVL42:
1408
 281:../libSerial/src/serial.c **** }
1409
 842              		.loc 1 281 1 is_stmt 0 view .LVU237
1410
 843 0008 08BD     		pop	{r3, pc}
1411
 844              	.L41:
1412
 845 000a 00BF     		.align	2
1413
 846              	.L40:
1414
 847 000c 00000000 		.word	uc1
1415
 848              		.cfi_endproc
1416
 849              	.LFE78:
1417
 851              		.comm	uc1,2080,4
1418
 852              		.text
1419
 853              	.Letext0:
1420
 854              		.file 3 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
1421
 855              		.file 4 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
1422
 856              		.file 5 "Drivers/CMSIS/Include/core_cm3.h"
1423
 857              		.file 6 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h"
1424
 858              		.file 7 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h"
1425
 859              		.file 8 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h"
1426
 860              		.file 9 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h"
1427
 861              		.file 10 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h"
1428
 862              		.file 11 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_spi.h"
1429
 863              		.file 12 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h"
1430
 864              		.file 13 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h"
1431
 865              		.file 14 "Core/Inc/main.h"
1432
 866              		.file 15 "../libSerial/inc/libSerial/serial.h"
1433
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s 			page 25
1434
 
1435
 
1436
DEFINED SYMBOLS
1437
                            *ABS*:0000000000000000 serial.c
1438
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:16     .text.PutCharSerialFIFO:0000000000000000 $t
1439
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:23     .text.PutCharSerialFIFO:0000000000000000 PutCharSerialFIFO
1440
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:105    .text.SerialCharsReceived:0000000000000000 $t
1441
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:112    .text.SerialCharsReceived:0000000000000000 SerialCharsReceived
1442
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:195    .text.PollSerial:0000000000000000 $t
1443
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:202    .text.PollSerial:0000000000000000 PollSerial
1444
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:262    .text.GetCharSerial:0000000000000000 $t
1445
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:269    .text.GetCharSerial:0000000000000000 GetCharSerial
1446
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:362    .text.EnableSerialRxInterrupt:0000000000000000 $t
1447
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:369    .text.EnableSerialRxInterrupt:0000000000000000 EnableSerialRxInterrupt
1448
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:388    .text.UART_IRQHandler:0000000000000000 $t
1449
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:395    .text.UART_IRQHandler:0000000000000000 UART_IRQHandler
1450
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:575    .text.PutCharSerial:0000000000000000 $t
1451
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:582    .text.PutCharSerial:0000000000000000 PutCharSerial
1452
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:604    .text.ResetTxBuffer:0000000000000000 $t
1453
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:611    .text.ResetTxBuffer:0000000000000000 ResetTxBuffer
1454
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:638    .text.ResetRxBuffer:0000000000000000 $t
1455
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:645    .text.ResetRxBuffer:0000000000000000 ResetRxBuffer
1456
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:669    .text.FlushSerial:0000000000000000 $t
1457
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:676    .text.FlushSerial:0000000000000000 FlushSerial
1458
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:704    .text.TxBufferEmpty:0000000000000000 $t
1459
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:711    .text.TxBufferEmpty:0000000000000000 TxBufferEmpty
1460
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:733    .text.TxWaitEmpty:0000000000000000 $t
1461
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:740    .text.TxWaitEmpty:0000000000000000 TxWaitEmpty
1462
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:769    .text.init_usart_ctl:0000000000000000 $t
1463
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:776    .text.init_usart_ctl:0000000000000000 init_usart_ctl
1464
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:820    .text.USART1_IRQHandler:0000000000000000 $t
1465
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:827    .text.USART1_IRQHandler:0000000000000000 USART1_IRQHandler
1466
C:\Users\mike\AppData\Local\Temp\ccrAkAGc.s:847    .text.USART1_IRQHandler:000000000000000c $d
1467
                            *COM*:0000000000000820 uc1
1468
 
1469
NO UNDEFINED SYMBOLS