Browse code

Add source code of the firmware for the IO Board

Pawel Jablonski authored on 05/06/2023 17:01:27
Showing 1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,899 @@
1
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
2
+<ProjectOpt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_optx.xsd">
3
+
4
+  <SchemaVersion>1.0</SchemaVersion>
5
+
6
+  <Header>### uVision Project, (C) Keil Software</Header>
7
+
8
+  <Extensions>
9
+    <cExt>*.c</cExt>
10
+    <aExt>*.s*; *.src; *.a*</aExt>
11
+    <oExt>*.obj; *.o</oExt>
12
+    <lExt>*.lib</lExt>
13
+    <tExt>*.txt; *.h; *.inc; *.md</tExt>
14
+    <pExt>*.plm</pExt>
15
+    <CppX>*.cpp</CppX>
16
+    <nMigrate>0</nMigrate>
17
+  </Extensions>
18
+
19
+  <DaveTm>
20
+    <dwLowDateTime>0</dwLowDateTime>
21
+    <dwHighDateTime>0</dwHighDateTime>
22
+  </DaveTm>
23
+
24
+  <Target>
25
+    <TargetName>IO</TargetName>
26
+    <ToolsetNumber>0x4</ToolsetNumber>
27
+    <ToolsetName>ARM-ADS</ToolsetName>
28
+    <TargetOption>
29
+      <CLKADS>12000000</CLKADS>
30
+      <OPTTT>
31
+        <gFlags>1</gFlags>
32
+        <BeepAtEnd>1</BeepAtEnd>
33
+        <RunSim>0</RunSim>
34
+        <RunTarget>1</RunTarget>
35
+        <RunAbUc>0</RunAbUc>
36
+      </OPTTT>
37
+      <OPTHX>
38
+        <HexSelection>1</HexSelection>
39
+        <FlashByte>65535</FlashByte>
40
+        <HexRangeLowAddress>0</HexRangeLowAddress>
41
+        <HexRangeHighAddress>0</HexRangeHighAddress>
42
+        <HexOffset>0</HexOffset>
43
+      </OPTHX>
44
+      <OPTLEX>
45
+        <PageWidth>79</PageWidth>
46
+        <PageLength>66</PageLength>
47
+        <TabStop>8</TabStop>
48
+        <ListingPath>.\Listings\</ListingPath>
49
+      </OPTLEX>
50
+      <ListingPage>
51
+        <CreateCListing>1</CreateCListing>
52
+        <CreateAListing>1</CreateAListing>
53
+        <CreateLListing>1</CreateLListing>
54
+        <CreateIListing>0</CreateIListing>
55
+        <AsmCond>1</AsmCond>
56
+        <AsmSymb>1</AsmSymb>
57
+        <AsmXref>0</AsmXref>
58
+        <CCond>1</CCond>
59
+        <CCode>0</CCode>
60
+        <CListInc>0</CListInc>
61
+        <CSymb>0</CSymb>
62
+        <LinkerCodeListing>0</LinkerCodeListing>
63
+      </ListingPage>
64
+      <OPTXL>
65
+        <LMap>1</LMap>
66
+        <LComments>1</LComments>
67
+        <LGenerateSymbols>1</LGenerateSymbols>
68
+        <LLibSym>1</LLibSym>
69
+        <LLines>1</LLines>
70
+        <LLocSym>1</LLocSym>
71
+        <LPubSym>1</LPubSym>
72
+        <LXref>0</LXref>
73
+        <LExpSel>0</LExpSel>
74
+      </OPTXL>
75
+      <OPTFL>
76
+        <tvExp>1</tvExp>
77
+        <tvExpOptDlg>0</tvExpOptDlg>
78
+        <IsCurrentTarget>1</IsCurrentTarget>
79
+      </OPTFL>
80
+      <CpuCode>18</CpuCode>
81
+      <DebugOpt>
82
+        <uSim>0</uSim>
83
+        <uTrg>1</uTrg>
84
+        <sLdApp>1</sLdApp>
85
+        <sGomain>1</sGomain>
86
+        <sRbreak>1</sRbreak>
87
+        <sRwatch>1</sRwatch>
88
+        <sRmem>1</sRmem>
89
+        <sRfunc>1</sRfunc>
90
+        <sRbox>1</sRbox>
91
+        <tLdApp>1</tLdApp>
92
+        <tGomain>1</tGomain>
93
+        <tRbreak>1</tRbreak>
94
+        <tRwatch>1</tRwatch>
95
+        <tRmem>1</tRmem>
96
+        <tRfunc>0</tRfunc>
97
+        <tRbox>1</tRbox>
98
+        <tRtrace>1</tRtrace>
99
+        <sRSysVw>1</sRSysVw>
100
+        <tRSysVw>1</tRSysVw>
101
+        <sRunDeb>0</sRunDeb>
102
+        <sLrtime>0</sLrtime>
103
+        <bEvRecOn>1</bEvRecOn>
104
+        <bSchkAxf>0</bSchkAxf>
105
+        <bTchkAxf>0</bTchkAxf>
106
+        <nTsel>6</nTsel>
107
+        <sDll></sDll>
108
+        <sDllPa></sDllPa>
109
+        <sDlgDll></sDlgDll>
110
+        <sDlgPa></sDlgPa>
111
+        <sIfile></sIfile>
112
+        <tDll></tDll>
113
+        <tDllPa></tDllPa>
114
+        <tDlgDll></tDlgDll>
115
+        <tDlgPa></tDlgPa>
116
+        <tIfile></tIfile>
117
+        <pMon>STLink\ST-LINKIII-KEIL_SWO.dll</pMon>
118
+      </DebugOpt>
119
+      <TargetDriverDllRegistry>
120
+        <SetRegEntry>
121
+          <Number>0</Number>
122
+          <Key>ST-LINKIII-KEIL_SWO</Key>
123
+          <Name>-U51FF6B066684565224230287 -O198 -SF4000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(0BB11477) -L00(0) -TO131090 -TC8000000 -TT10000000 -TP21 -TDS8003 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC1000 -FN1 -FF0STM32F0xx_128_2K.FLM -FS08000000 -FL020000 -FP0($$Device:STM32F072RBTx$CMSIS\Flash\STM32F0xx_128_2K.FLM)</Name>
124
+        </SetRegEntry>
125
+        <SetRegEntry>
126
+          <Number>0</Number>
127
+          <Key>UL2CM3</Key>
128
+          <Name>UL2CM3(-S0 -C0 -P0 )  -FN1 -FC1000 -FD20000000 -FF0STM32F0xx_128_2K -FL020000 -FS08000000 -FP0($$Device:STM32F072RBTx$CMSIS\Flash\STM32F0xx_128_2K.FLM)</Name>
129
+        </SetRegEntry>
130
+        <SetRegEntry>
131
+          <Number>0</Number>
132
+          <Key>DLGDARM</Key>
133
+          <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)</Name>
134
+        </SetRegEntry>
135
+        <SetRegEntry>
136
+          <Number>0</Number>
137
+          <Key>ARMRTXEVENTFLAGS</Key>
138
+          <Name>-L70 -Z18 -C0 -M0 -T1</Name>
139
+        </SetRegEntry>
140
+        <SetRegEntry>
141
+          <Number>0</Number>
142
+          <Key>DLGTARM</Key>
143
+          <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)</Name>
144
+        </SetRegEntry>
145
+        <SetRegEntry>
146
+          <Number>0</Number>
147
+          <Key>ARMDBGFLAGS</Key>
148
+          <Name>-T0</Name>
149
+        </SetRegEntry>
150
+        <SetRegEntry>
151
+          <Number>0</Number>
152
+          <Key>DLGUARM</Key>
153
+          <Name>(105=-1,-1,-1,-1,0)</Name>
154
+        </SetRegEntry>
155
+      </TargetDriverDllRegistry>
156
+      <Breakpoint/>
157
+      <WatchWindow1>
158
+        <Ww>
159
+          <count>0</count>
160
+          <WinNumber>1</WinNumber>
161
+          <ItemText>bufferRx</ItemText>
162
+        </Ww>
163
+        <Ww>
164
+          <count>1</count>
165
+          <WinNumber>1</WinNumber>
166
+          <ItemText>a</ItemText>
167
+        </Ww>
168
+        <Ww>
169
+          <count>2</count>
170
+          <WinNumber>1</WinNumber>
171
+          <ItemText>dirSize</ItemText>
172
+        </Ww>
173
+        <Ww>
174
+          <count>3</count>
175
+          <WinNumber>1</WinNumber>
176
+          <ItemText>dirBuffer[16 * 64]</ItemText>
177
+        </Ww>
178
+      </WatchWindow1>
179
+      <MemoryWindow1>
180
+        <Mm>
181
+          <WinNumber>1</WinNumber>
182
+          <SubType>0</SubType>
183
+          <ItemText>dirBuffer</ItemText>
184
+          <AccSizeX>0</AccSizeX>
185
+        </Mm>
186
+      </MemoryWindow1>
187
+      <Tracepoint>
188
+        <THDelay>0</THDelay>
189
+      </Tracepoint>
190
+      <DebugFlag>
191
+        <trace>0</trace>
192
+        <periodic>1</periodic>
193
+        <aLwin>1</aLwin>
194
+        <aCover>0</aCover>
195
+        <aSer1>0</aSer1>
196
+        <aSer2>0</aSer2>
197
+        <aPa>0</aPa>
198
+        <viewmode>1</viewmode>
199
+        <vrSel>0</vrSel>
200
+        <aSym>0</aSym>
201
+        <aTbox>0</aTbox>
202
+        <AscS1>0</AscS1>
203
+        <AscS2>0</AscS2>
204
+        <AscS3>0</AscS3>
205
+        <aSer3>0</aSer3>
206
+        <eProf>0</eProf>
207
+        <aLa>0</aLa>
208
+        <aPa1>0</aPa1>
209
+        <AscS4>0</AscS4>
210
+        <aSer4>0</aSer4>
211
+        <StkLoc>0</StkLoc>
212
+        <TrcWin>0</TrcWin>
213
+        <newCpu>0</newCpu>
214
+        <uProt>0</uProt>
215
+      </DebugFlag>
216
+      <LintExecutable>C:\Users\demoh\Downloads\pclp-1.3-windows-eval2\windows\pclp64.exe</LintExecutable>
217
+      <LintConfigFile></LintConfigFile>
218
+      <bLintAuto>0</bLintAuto>
219
+      <bAutoGenD>0</bAutoGenD>
220
+      <LntExFlags>29</LntExFlags>
221
+      <pMisraName>.\Lint\MISRA_C_2012_Config.lnt</pMisraName>
222
+      <pszMrule>MISRA_C_2012_Config</pszMrule>
223
+      <pSingCmds></pSingCmds>
224
+      <pMultCmds></pMultCmds>
225
+      <pMisraNamep></pMisraNamep>
226
+      <pszMrulep></pszMrulep>
227
+      <pSingCmdsp></pSingCmdsp>
228
+      <pMultCmdsp></pMultCmdsp>
229
+      <DebugDescription>
230
+        <Enable>1</Enable>
231
+        <EnableFlashSeq>0</EnableFlashSeq>
232
+        <EnableLog>0</EnableLog>
233
+        <Protocol>2</Protocol>
234
+        <DbgClock>4000000</DbgClock>
235
+      </DebugDescription>
236
+    </TargetOption>
237
+  </Target>
238
+
239
+  <Group>
240
+    <GroupName>source</GroupName>
241
+    <tvExp>1</tvExp>
242
+    <tvExpOptDlg>0</tvExpOptDlg>
243
+    <cbSel>0</cbSel>
244
+    <RteFlg>0</RteFlg>
245
+    <File>
246
+      <GroupNumber>1</GroupNumber>
247
+      <FileNumber>1</FileNumber>
248
+      <FileType>1</FileType>
249
+      <tvExp>0</tvExp>
250
+      <tvExpOptDlg>0</tvExpOptDlg>
251
+      <bDave2>0</bDave2>
252
+      <PathWithFileName>.\main.c</PathWithFileName>
253
+      <FilenameWithoutPath>main.c</FilenameWithoutPath>
254
+      <RteFlg>0</RteFlg>
255
+      <bShared>0</bShared>
256
+    </File>
257
+    <File>
258
+      <GroupNumber>1</GroupNumber>
259
+      <FileNumber>2</FileNumber>
260
+      <FileType>5</FileType>
261
+      <tvExp>0</tvExp>
262
+      <tvExpOptDlg>0</tvExpOptDlg>
263
+      <bDave2>0</bDave2>
264
+      <PathWithFileName>.\led.h</PathWithFileName>
265
+      <FilenameWithoutPath>led.h</FilenameWithoutPath>
266
+      <RteFlg>0</RteFlg>
267
+      <bShared>0</bShared>
268
+    </File>
269
+    <File>
270
+      <GroupNumber>1</GroupNumber>
271
+      <FileNumber>3</FileNumber>
272
+      <FileType>1</FileType>
273
+      <tvExp>0</tvExp>
274
+      <tvExpOptDlg>0</tvExpOptDlg>
275
+      <bDave2>0</bDave2>
276
+      <PathWithFileName>.\led.c</PathWithFileName>
277
+      <FilenameWithoutPath>led.c</FilenameWithoutPath>
278
+      <RteFlg>0</RteFlg>
279
+      <bShared>0</bShared>
280
+    </File>
281
+    <File>
282
+      <GroupNumber>1</GroupNumber>
283
+      <FileNumber>4</FileNumber>
284
+      <FileType>1</FileType>
285
+      <tvExp>0</tvExp>
286
+      <tvExpOptDlg>0</tvExpOptDlg>
287
+      <bDave2>0</bDave2>
288
+      <PathWithFileName>.\rtc.c</PathWithFileName>
289
+      <FilenameWithoutPath>rtc.c</FilenameWithoutPath>
290
+      <RteFlg>0</RteFlg>
291
+      <bShared>0</bShared>
292
+    </File>
293
+    <File>
294
+      <GroupNumber>1</GroupNumber>
295
+      <FileNumber>5</FileNumber>
296
+      <FileType>5</FileType>
297
+      <tvExp>0</tvExp>
298
+      <tvExpOptDlg>0</tvExpOptDlg>
299
+      <bDave2>0</bDave2>
300
+      <PathWithFileName>.\keyboard.h</PathWithFileName>
301
+      <FilenameWithoutPath>keyboard.h</FilenameWithoutPath>
302
+      <RteFlg>0</RteFlg>
303
+      <bShared>0</bShared>
304
+    </File>
305
+    <File>
306
+      <GroupNumber>1</GroupNumber>
307
+      <FileNumber>6</FileNumber>
308
+      <FileType>5</FileType>
309
+      <tvExp>0</tvExp>
310
+      <tvExpOptDlg>0</tvExpOptDlg>
311
+      <bDave2>0</bDave2>
312
+      <PathWithFileName>.\rtc.h</PathWithFileName>
313
+      <FilenameWithoutPath>rtc.h</FilenameWithoutPath>
314
+      <RteFlg>0</RteFlg>
315
+      <bShared>0</bShared>
316
+    </File>
317
+    <File>
318
+      <GroupNumber>1</GroupNumber>
319
+      <FileNumber>7</FileNumber>
320
+      <FileType>1</FileType>
321
+      <tvExp>0</tvExp>
322
+      <tvExpOptDlg>0</tvExpOptDlg>
323
+      <bDave2>0</bDave2>
324
+      <PathWithFileName>.\keyboard.c</PathWithFileName>
325
+      <FilenameWithoutPath>keyboard.c</FilenameWithoutPath>
326
+      <RteFlg>0</RteFlg>
327
+      <bShared>0</bShared>
328
+    </File>
329
+    <File>
330
+      <GroupNumber>1</GroupNumber>
331
+      <FileNumber>8</FileNumber>
332
+      <FileType>5</FileType>
333
+      <tvExp>0</tvExp>
334
+      <tvExpOptDlg>0</tvExpOptDlg>
335
+      <bDave2>0</bDave2>
336
+      <PathWithFileName>.\speaker.h</PathWithFileName>
337
+      <FilenameWithoutPath>speaker.h</FilenameWithoutPath>
338
+      <RteFlg>0</RteFlg>
339
+      <bShared>0</bShared>
340
+    </File>
341
+    <File>
342
+      <GroupNumber>1</GroupNumber>
343
+      <FileNumber>9</FileNumber>
344
+      <FileType>1</FileType>
345
+      <tvExp>0</tvExp>
346
+      <tvExpOptDlg>0</tvExpOptDlg>
347
+      <bDave2>0</bDave2>
348
+      <PathWithFileName>.\speaker.c</PathWithFileName>
349
+      <FilenameWithoutPath>speaker.c</FilenameWithoutPath>
350
+      <RteFlg>0</RteFlg>
351
+      <bShared>0</bShared>
352
+    </File>
353
+    <File>
354
+      <GroupNumber>1</GroupNumber>
355
+      <FileNumber>10</FileNumber>
356
+      <FileType>5</FileType>
357
+      <tvExp>0</tvExp>
358
+      <tvExpOptDlg>0</tvExpOptDlg>
359
+      <bDave2>0</bDave2>
360
+      <PathWithFileName>.\lcd.h</PathWithFileName>
361
+      <FilenameWithoutPath>lcd.h</FilenameWithoutPath>
362
+      <RteFlg>0</RteFlg>
363
+      <bShared>0</bShared>
364
+    </File>
365
+    <File>
366
+      <GroupNumber>1</GroupNumber>
367
+      <FileNumber>11</FileNumber>
368
+      <FileType>1</FileType>
369
+      <tvExp>0</tvExp>
370
+      <tvExpOptDlg>0</tvExpOptDlg>
371
+      <bDave2>0</bDave2>
372
+      <PathWithFileName>.\lcd.c</PathWithFileName>
373
+      <FilenameWithoutPath>lcd.c</FilenameWithoutPath>
374
+      <RteFlg>0</RteFlg>
375
+      <bShared>0</bShared>
376
+    </File>
377
+    <File>
378
+      <GroupNumber>1</GroupNumber>
379
+      <FileNumber>12</FileNumber>
380
+      <FileType>5</FileType>
381
+      <tvExp>0</tvExp>
382
+      <tvExpOptDlg>0</tvExpOptDlg>
383
+      <bDave2>0</bDave2>
384
+      <PathWithFileName>.\flash.h</PathWithFileName>
385
+      <FilenameWithoutPath>flash.h</FilenameWithoutPath>
386
+      <RteFlg>0</RteFlg>
387
+      <bShared>0</bShared>
388
+    </File>
389
+    <File>
390
+      <GroupNumber>1</GroupNumber>
391
+      <FileNumber>13</FileNumber>
392
+      <FileType>1</FileType>
393
+      <tvExp>0</tvExp>
394
+      <tvExpOptDlg>0</tvExpOptDlg>
395
+      <bDave2>0</bDave2>
396
+      <PathWithFileName>.\flash.c</PathWithFileName>
397
+      <FilenameWithoutPath>flash.c</FilenameWithoutPath>
398
+      <RteFlg>0</RteFlg>
399
+      <bShared>0</bShared>
400
+    </File>
401
+    <File>
402
+      <GroupNumber>1</GroupNumber>
403
+      <FileNumber>14</FileNumber>
404
+      <FileType>5</FileType>
405
+      <tvExp>0</tvExp>
406
+      <tvExpOptDlg>0</tvExpOptDlg>
407
+      <bDave2>0</bDave2>
408
+      <PathWithFileName>.\io.h</PathWithFileName>
409
+      <FilenameWithoutPath>io.h</FilenameWithoutPath>
410
+      <RteFlg>0</RteFlg>
411
+      <bShared>0</bShared>
412
+    </File>
413
+    <File>
414
+      <GroupNumber>1</GroupNumber>
415
+      <FileNumber>15</FileNumber>
416
+      <FileType>1</FileType>
417
+      <tvExp>0</tvExp>
418
+      <tvExpOptDlg>0</tvExpOptDlg>
419
+      <bDave2>0</bDave2>
420
+      <PathWithFileName>.\io.c</PathWithFileName>
421
+      <FilenameWithoutPath>io.c</FilenameWithoutPath>
422
+      <RteFlg>0</RteFlg>
423
+      <bShared>0</bShared>
424
+    </File>
425
+    <File>
426
+      <GroupNumber>1</GroupNumber>
427
+      <FileNumber>16</FileNumber>
428
+      <FileType>5</FileType>
429
+      <tvExp>0</tvExp>
430
+      <tvExpOptDlg>0</tvExpOptDlg>
431
+      <bDave2>0</bDave2>
432
+      <PathWithFileName>.\font.h</PathWithFileName>
433
+      <FilenameWithoutPath>font.h</FilenameWithoutPath>
434
+      <RteFlg>0</RteFlg>
435
+      <bShared>0</bShared>
436
+    </File>
437
+    <File>
438
+      <GroupNumber>1</GroupNumber>
439
+      <FileNumber>17</FileNumber>
440
+      <FileType>1</FileType>
441
+      <tvExp>0</tvExp>
442
+      <tvExpOptDlg>0</tvExpOptDlg>
443
+      <bDave2>0</bDave2>
444
+      <PathWithFileName>.\usb.c</PathWithFileName>
445
+      <FilenameWithoutPath>usb.c</FilenameWithoutPath>
446
+      <RteFlg>0</RteFlg>
447
+      <bShared>0</bShared>
448
+    </File>
449
+    <File>
450
+      <GroupNumber>1</GroupNumber>
451
+      <FileNumber>18</FileNumber>
452
+      <FileType>5</FileType>
453
+      <tvExp>0</tvExp>
454
+      <tvExpOptDlg>0</tvExpOptDlg>
455
+      <bDave2>0</bDave2>
456
+      <PathWithFileName>.\usb.h</PathWithFileName>
457
+      <FilenameWithoutPath>usb.h</FilenameWithoutPath>
458
+      <RteFlg>0</RteFlg>
459
+      <bShared>0</bShared>
460
+    </File>
461
+    <File>
462
+      <GroupNumber>1</GroupNumber>
463
+      <FileNumber>19</FileNumber>
464
+      <FileType>1</FileType>
465
+      <tvExp>0</tvExp>
466
+      <tvExpOptDlg>0</tvExpOptDlg>
467
+      <bDave2>0</bDave2>
468
+      <PathWithFileName>.\rs232.c</PathWithFileName>
469
+      <FilenameWithoutPath>rs232.c</FilenameWithoutPath>
470
+      <RteFlg>0</RteFlg>
471
+      <bShared>0</bShared>
472
+    </File>
473
+    <File>
474
+      <GroupNumber>1</GroupNumber>
475
+      <FileNumber>20</FileNumber>
476
+      <FileType>5</FileType>
477
+      <tvExp>0</tvExp>
478
+      <tvExpOptDlg>0</tvExpOptDlg>
479
+      <bDave2>0</bDave2>
480
+      <PathWithFileName>.\rs232.h</PathWithFileName>
481
+      <FilenameWithoutPath>rs232.h</FilenameWithoutPath>
482
+      <RteFlg>0</RteFlg>
483
+      <bShared>0</bShared>
484
+    </File>
485
+    <File>
486
+      <GroupNumber>1</GroupNumber>
487
+      <FileNumber>21</FileNumber>
488
+      <FileType>1</FileType>
489
+      <tvExp>0</tvExp>
490
+      <tvExpOptDlg>0</tvExpOptDlg>
491
+      <bDave2>0</bDave2>
492
+      <PathWithFileName>.\fs.c</PathWithFileName>
493
+      <FilenameWithoutPath>fs.c</FilenameWithoutPath>
494
+      <RteFlg>0</RteFlg>
495
+      <bShared>0</bShared>
496
+    </File>
497
+    <File>
498
+      <GroupNumber>1</GroupNumber>
499
+      <FileNumber>22</FileNumber>
500
+      <FileType>5</FileType>
501
+      <tvExp>0</tvExp>
502
+      <tvExpOptDlg>0</tvExpOptDlg>
503
+      <bDave2>0</bDave2>
504
+      <PathWithFileName>.\fs.h</PathWithFileName>
505
+      <FilenameWithoutPath>fs.h</FilenameWithoutPath>
506
+      <RteFlg>0</RteFlg>
507
+      <bShared>0</bShared>
508
+    </File>
509
+  </Group>
510
+
511
+  <Group>
512
+    <GroupName>usbd</GroupName>
513
+    <tvExp>0</tvExp>
514
+    <tvExpOptDlg>0</tvExpOptDlg>
515
+    <cbSel>0</cbSel>
516
+    <RteFlg>0</RteFlg>
517
+    <File>
518
+      <GroupNumber>2</GroupNumber>
519
+      <FileNumber>23</FileNumber>
520
+      <FileType>1</FileType>
521
+      <tvExp>0</tvExp>
522
+      <tvExpOptDlg>0</tvExpOptDlg>
523
+      <bDave2>0</bDave2>
524
+      <PathWithFileName>.\USBD\usbd_core.c</PathWithFileName>
525
+      <FilenameWithoutPath>usbd_core.c</FilenameWithoutPath>
526
+      <RteFlg>0</RteFlg>
527
+      <bShared>0</bShared>
528
+    </File>
529
+    <File>
530
+      <GroupNumber>2</GroupNumber>
531
+      <FileNumber>24</FileNumber>
532
+      <FileType>5</FileType>
533
+      <tvExp>0</tvExp>
534
+      <tvExpOptDlg>0</tvExpOptDlg>
535
+      <bDave2>0</bDave2>
536
+      <PathWithFileName>.\USBD\usbd_core.h</PathWithFileName>
537
+      <FilenameWithoutPath>usbd_core.h</FilenameWithoutPath>
538
+      <RteFlg>0</RteFlg>
539
+      <bShared>0</bShared>
540
+    </File>
541
+    <File>
542
+      <GroupNumber>2</GroupNumber>
543
+      <FileNumber>25</FileNumber>
544
+      <FileType>1</FileType>
545
+      <tvExp>0</tvExp>
546
+      <tvExpOptDlg>0</tvExpOptDlg>
547
+      <bDave2>0</bDave2>
548
+      <PathWithFileName>.\USBD\usbd_ctlreq.c</PathWithFileName>
549
+      <FilenameWithoutPath>usbd_ctlreq.c</FilenameWithoutPath>
550
+      <RteFlg>0</RteFlg>
551
+      <bShared>0</bShared>
552
+    </File>
553
+    <File>
554
+      <GroupNumber>2</GroupNumber>
555
+      <FileNumber>26</FileNumber>
556
+      <FileType>5</FileType>
557
+      <tvExp>0</tvExp>
558
+      <tvExpOptDlg>0</tvExpOptDlg>
559
+      <bDave2>0</bDave2>
560
+      <PathWithFileName>.\USBD\usbd_ctlreq.h</PathWithFileName>
561
+      <FilenameWithoutPath>usbd_ctlreq.h</FilenameWithoutPath>
562
+      <RteFlg>0</RteFlg>
563
+      <bShared>0</bShared>
564
+    </File>
565
+    <File>
566
+      <GroupNumber>2</GroupNumber>
567
+      <FileNumber>27</FileNumber>
568
+      <FileType>5</FileType>
569
+      <tvExp>0</tvExp>
570
+      <tvExpOptDlg>0</tvExpOptDlg>
571
+      <bDave2>0</bDave2>
572
+      <PathWithFileName>.\USBD\usbd_def.h</PathWithFileName>
573
+      <FilenameWithoutPath>usbd_def.h</FilenameWithoutPath>
574
+      <RteFlg>0</RteFlg>
575
+      <bShared>0</bShared>
576
+    </File>
577
+    <File>
578
+      <GroupNumber>2</GroupNumber>
579
+      <FileNumber>28</FileNumber>
580
+      <FileType>1</FileType>
581
+      <tvExp>0</tvExp>
582
+      <tvExpOptDlg>0</tvExpOptDlg>
583
+      <bDave2>0</bDave2>
584
+      <PathWithFileName>.\USBD\usbd_ioreq.c</PathWithFileName>
585
+      <FilenameWithoutPath>usbd_ioreq.c</FilenameWithoutPath>
586
+      <RteFlg>0</RteFlg>
587
+      <bShared>0</bShared>
588
+    </File>
589
+    <File>
590
+      <GroupNumber>2</GroupNumber>
591
+      <FileNumber>29</FileNumber>
592
+      <FileType>5</FileType>
593
+      <tvExp>0</tvExp>
594
+      <tvExpOptDlg>0</tvExpOptDlg>
595
+      <bDave2>0</bDave2>
596
+      <PathWithFileName>.\USBD\usbd_ioreq.h</PathWithFileName>
597
+      <FilenameWithoutPath>usbd_ioreq.h</FilenameWithoutPath>
598
+      <RteFlg>0</RteFlg>
599
+      <bShared>0</bShared>
600
+    </File>
601
+    <File>
602
+      <GroupNumber>2</GroupNumber>
603
+      <FileNumber>30</FileNumber>
604
+      <FileType>1</FileType>
605
+      <tvExp>0</tvExp>
606
+      <tvExpOptDlg>0</tvExpOptDlg>
607
+      <bDave2>0</bDave2>
608
+      <PathWithFileName>.\USBD\usbd_msc.c</PathWithFileName>
609
+      <FilenameWithoutPath>usbd_msc.c</FilenameWithoutPath>
610
+      <RteFlg>0</RteFlg>
611
+      <bShared>0</bShared>
612
+    </File>
613
+    <File>
614
+      <GroupNumber>2</GroupNumber>
615
+      <FileNumber>31</FileNumber>
616
+      <FileType>5</FileType>
617
+      <tvExp>0</tvExp>
618
+      <tvExpOptDlg>0</tvExpOptDlg>
619
+      <bDave2>0</bDave2>
620
+      <PathWithFileName>.\USBD\usbd_msc.h</PathWithFileName>
621
+      <FilenameWithoutPath>usbd_msc.h</FilenameWithoutPath>
622
+      <RteFlg>0</RteFlg>
623
+      <bShared>0</bShared>
624
+    </File>
625
+    <File>
626
+      <GroupNumber>2</GroupNumber>
627
+      <FileNumber>32</FileNumber>
628
+      <FileType>1</FileType>
629
+      <tvExp>0</tvExp>
630
+      <tvExpOptDlg>0</tvExpOptDlg>
631
+      <bDave2>0</bDave2>
632
+      <PathWithFileName>.\USBD\usbd_msc_bot.c</PathWithFileName>
633
+      <FilenameWithoutPath>usbd_msc_bot.c</FilenameWithoutPath>
634
+      <RteFlg>0</RteFlg>
635
+      <bShared>0</bShared>
636
+    </File>
637
+    <File>
638
+      <GroupNumber>2</GroupNumber>
639
+      <FileNumber>33</FileNumber>
640
+      <FileType>5</FileType>
641
+      <tvExp>0</tvExp>
642
+      <tvExpOptDlg>0</tvExpOptDlg>
643
+      <bDave2>0</bDave2>
644
+      <PathWithFileName>.\USBD\usbd_msc_bot.h</PathWithFileName>
645
+      <FilenameWithoutPath>usbd_msc_bot.h</FilenameWithoutPath>
646
+      <RteFlg>0</RteFlg>
647
+      <bShared>0</bShared>
648
+    </File>
649
+    <File>
650
+      <GroupNumber>2</GroupNumber>
651
+      <FileNumber>34</FileNumber>
652
+      <FileType>1</FileType>
653
+      <tvExp>0</tvExp>
654
+      <tvExpOptDlg>0</tvExpOptDlg>
655
+      <bDave2>0</bDave2>
656
+      <PathWithFileName>.\USBD\usbd_msc_data.c</PathWithFileName>
657
+      <FilenameWithoutPath>usbd_msc_data.c</FilenameWithoutPath>
658
+      <RteFlg>0</RteFlg>
659
+      <bShared>0</bShared>
660
+    </File>
661
+    <File>
662
+      <GroupNumber>2</GroupNumber>
663
+      <FileNumber>35</FileNumber>
664
+      <FileType>5</FileType>
665
+      <tvExp>0</tvExp>
666
+      <tvExpOptDlg>0</tvExpOptDlg>
667
+      <bDave2>0</bDave2>
668
+      <PathWithFileName>.\USBD\usbd_msc_data.h</PathWithFileName>
669
+      <FilenameWithoutPath>usbd_msc_data.h</FilenameWithoutPath>
670
+      <RteFlg>0</RteFlg>
671
+      <bShared>0</bShared>
672
+    </File>
673
+    <File>
674
+      <GroupNumber>2</GroupNumber>
675
+      <FileNumber>36</FileNumber>
676
+      <FileType>1</FileType>
677
+      <tvExp>0</tvExp>
678
+      <tvExpOptDlg>0</tvExpOptDlg>
679
+      <bDave2>0</bDave2>
680
+      <PathWithFileName>.\USBD\usbd_msc_scsi.c</PathWithFileName>
681
+      <FilenameWithoutPath>usbd_msc_scsi.c</FilenameWithoutPath>
682
+      <RteFlg>0</RteFlg>
683
+      <bShared>0</bShared>
684
+    </File>
685
+    <File>
686
+      <GroupNumber>2</GroupNumber>
687
+      <FileNumber>37</FileNumber>
688
+      <FileType>5</FileType>
689
+      <tvExp>0</tvExp>
690
+      <tvExpOptDlg>0</tvExpOptDlg>
691
+      <bDave2>0</bDave2>
692
+      <PathWithFileName>.\USBD\usbd_msc_scsi.h</PathWithFileName>
693
+      <FilenameWithoutPath>usbd_msc_scsi.h</FilenameWithoutPath>
694
+      <RteFlg>0</RteFlg>
695
+      <bShared>0</bShared>
696
+    </File>
697
+    <File>
698
+      <GroupNumber>2</GroupNumber>
699
+      <FileNumber>38</FileNumber>
700
+      <FileType>1</FileType>
701
+      <tvExp>0</tvExp>
702
+      <tvExpOptDlg>0</tvExpOptDlg>
703
+      <bDave2>0</bDave2>
704
+      <PathWithFileName>.\USBD\usbd_storage_if.c</PathWithFileName>
705
+      <FilenameWithoutPath>usbd_storage_if.c</FilenameWithoutPath>
706
+      <RteFlg>0</RteFlg>
707
+      <bShared>0</bShared>
708
+    </File>
709
+    <File>
710
+      <GroupNumber>2</GroupNumber>
711
+      <FileNumber>39</FileNumber>
712
+      <FileType>5</FileType>
713
+      <tvExp>0</tvExp>
714
+      <tvExpOptDlg>0</tvExpOptDlg>
715
+      <bDave2>0</bDave2>
716
+      <PathWithFileName>.\USBD\usbd_storage_if.h</PathWithFileName>
717
+      <FilenameWithoutPath>usbd_storage_if.h</FilenameWithoutPath>
718
+      <RteFlg>0</RteFlg>
719
+      <bShared>0</bShared>
720
+    </File>
721
+    <File>
722
+      <GroupNumber>2</GroupNumber>
723
+      <FileNumber>40</FileNumber>
724
+      <FileType>1</FileType>
725
+      <tvExp>0</tvExp>
726
+      <tvExpOptDlg>0</tvExpOptDlg>
727
+      <bDave2>0</bDave2>
728
+      <PathWithFileName>.\USBD\usbd_conf.c</PathWithFileName>
729
+      <FilenameWithoutPath>usbd_conf.c</FilenameWithoutPath>
730
+      <RteFlg>0</RteFlg>
731
+      <bShared>0</bShared>
732
+    </File>
733
+    <File>
734
+      <GroupNumber>2</GroupNumber>
735
+      <FileNumber>41</FileNumber>
736
+      <FileType>5</FileType>
737
+      <tvExp>0</tvExp>
738
+      <tvExpOptDlg>0</tvExpOptDlg>
739
+      <bDave2>0</bDave2>
740
+      <PathWithFileName>.\USBD\usbd_conf.h</PathWithFileName>
741
+      <FilenameWithoutPath>usbd_conf.h</FilenameWithoutPath>
742
+      <RteFlg>0</RteFlg>
743
+      <bShared>0</bShared>
744
+    </File>
745
+    <File>
746
+      <GroupNumber>2</GroupNumber>
747
+      <FileNumber>42</FileNumber>
748
+      <FileType>1</FileType>
749
+      <tvExp>0</tvExp>
750
+      <tvExpOptDlg>0</tvExpOptDlg>
751
+      <bDave2>0</bDave2>
752
+      <PathWithFileName>.\USBD\usbd_desc.c</PathWithFileName>
753
+      <FilenameWithoutPath>usbd_desc.c</FilenameWithoutPath>
754
+      <RteFlg>0</RteFlg>
755
+      <bShared>0</bShared>
756
+    </File>
757
+    <File>
758
+      <GroupNumber>2</GroupNumber>
759
+      <FileNumber>43</FileNumber>
760
+      <FileType>5</FileType>
761
+      <tvExp>0</tvExp>
762
+      <tvExpOptDlg>0</tvExpOptDlg>
763
+      <bDave2>0</bDave2>
764
+      <PathWithFileName>.\USBD\usbd_desc.h</PathWithFileName>
765
+      <FilenameWithoutPath>usbd_desc.h</FilenameWithoutPath>
766
+      <RteFlg>0</RteFlg>
767
+      <bShared>0</bShared>
768
+    </File>
769
+  </Group>
770
+
771
+  <Group>
772
+    <GroupName>fatfs</GroupName>
773
+    <tvExp>0</tvExp>
774
+    <tvExpOptDlg>0</tvExpOptDlg>
775
+    <cbSel>0</cbSel>
776
+    <RteFlg>0</RteFlg>
777
+    <File>
778
+      <GroupNumber>3</GroupNumber>
779
+      <FileNumber>44</FileNumber>
780
+      <FileType>5</FileType>
781
+      <tvExp>0</tvExp>
782
+      <tvExpOptDlg>0</tvExpOptDlg>
783
+      <bDave2>0</bDave2>
784
+      <PathWithFileName>.\FatFs\diskio.h</PathWithFileName>
785
+      <FilenameWithoutPath>diskio.h</FilenameWithoutPath>
786
+      <RteFlg>0</RteFlg>
787
+      <bShared>0</bShared>
788
+    </File>
789
+    <File>
790
+      <GroupNumber>3</GroupNumber>
791
+      <FileNumber>45</FileNumber>
792
+      <FileType>5</FileType>
793
+      <tvExp>0</tvExp>
794
+      <tvExpOptDlg>0</tvExpOptDlg>
795
+      <bDave2>0</bDave2>
796
+      <PathWithFileName>.\FatFs\ff.h</PathWithFileName>
797
+      <FilenameWithoutPath>ff.h</FilenameWithoutPath>
798
+      <RteFlg>0</RteFlg>
799
+      <bShared>0</bShared>
800
+    </File>
801
+    <File>
802
+      <GroupNumber>3</GroupNumber>
803
+      <FileNumber>46</FileNumber>
804
+      <FileType>5</FileType>
805
+      <tvExp>0</tvExp>
806
+      <tvExpOptDlg>0</tvExpOptDlg>
807
+      <bDave2>0</bDave2>
808
+      <PathWithFileName>.\FatFs\ff_gen_drv.h</PathWithFileName>
809
+      <FilenameWithoutPath>ff_gen_drv.h</FilenameWithoutPath>
810
+      <RteFlg>0</RteFlg>
811
+      <bShared>0</bShared>
812
+    </File>
813
+    <File>
814
+      <GroupNumber>3</GroupNumber>
815
+      <FileNumber>47</FileNumber>
816
+      <FileType>5</FileType>
817
+      <tvExp>0</tvExp>
818
+      <tvExpOptDlg>0</tvExpOptDlg>
819
+      <bDave2>0</bDave2>
820
+      <PathWithFileName>.\FatFs\integer.h</PathWithFileName>
821
+      <FilenameWithoutPath>integer.h</FilenameWithoutPath>
822
+      <RteFlg>0</RteFlg>
823
+      <bShared>0</bShared>
824
+    </File>
825
+    <File>
826
+      <GroupNumber>3</GroupNumber>
827
+      <FileNumber>48</FileNumber>
828
+      <FileType>1</FileType>
829
+      <tvExp>0</tvExp>
830
+      <tvExpOptDlg>0</tvExpOptDlg>
831
+      <bDave2>0</bDave2>
832
+      <PathWithFileName>.\FatFs\diskio.c</PathWithFileName>
833
+      <FilenameWithoutPath>diskio.c</FilenameWithoutPath>
834
+      <RteFlg>0</RteFlg>
835
+      <bShared>0</bShared>
836
+    </File>
837
+    <File>
838
+      <GroupNumber>3</GroupNumber>
839
+      <FileNumber>49</FileNumber>
840
+      <FileType>1</FileType>
841
+      <tvExp>0</tvExp>
842
+      <tvExpOptDlg>0</tvExpOptDlg>
843
+      <bDave2>0</bDave2>
844
+      <PathWithFileName>.\FatFs\ff.c</PathWithFileName>
845
+      <FilenameWithoutPath>ff.c</FilenameWithoutPath>
846
+      <RteFlg>0</RteFlg>
847
+      <bShared>0</bShared>
848
+    </File>
849
+    <File>
850
+      <GroupNumber>3</GroupNumber>
851
+      <FileNumber>50</FileNumber>
852
+      <FileType>1</FileType>
853
+      <tvExp>0</tvExp>
854
+      <tvExpOptDlg>0</tvExpOptDlg>
855
+      <bDave2>0</bDave2>
856
+      <PathWithFileName>.\FatFs\ff_gen_drv.c</PathWithFileName>
857
+      <FilenameWithoutPath>ff_gen_drv.c</FilenameWithoutPath>
858
+      <RteFlg>0</RteFlg>
859
+      <bShared>0</bShared>
860
+    </File>
861
+    <File>
862
+      <GroupNumber>3</GroupNumber>
863
+      <FileNumber>51</FileNumber>
864
+      <FileType>5</FileType>
865
+      <tvExp>0</tvExp>
866
+      <tvExpOptDlg>0</tvExpOptDlg>
867
+      <bDave2>0</bDave2>
868
+      <PathWithFileName>.\FatFs\ffconf.h</PathWithFileName>
869
+      <FilenameWithoutPath>ffconf.h</FilenameWithoutPath>
870
+      <RteFlg>0</RteFlg>
871
+      <bShared>0</bShared>
872
+    </File>
873
+  </Group>
874
+
875
+  <Group>
876
+    <GroupName>::CMSIS</GroupName>
877
+    <tvExp>0</tvExp>
878
+    <tvExpOptDlg>0</tvExpOptDlg>
879
+    <cbSel>0</cbSel>
880
+    <RteFlg>1</RteFlg>
881
+  </Group>
882
+
883
+  <Group>
884
+    <GroupName>::CMSIS Driver</GroupName>
885
+    <tvExp>1</tvExp>
886
+    <tvExpOptDlg>0</tvExpOptDlg>
887
+    <cbSel>0</cbSel>
888
+    <RteFlg>1</RteFlg>
889
+  </Group>
890
+
891
+  <Group>
892
+    <GroupName>::Device</GroupName>
893
+    <tvExp>0</tvExp>
894
+    <tvExpOptDlg>0</tvExpOptDlg>
895
+    <cbSel>0</cbSel>
896
+    <RteFlg>1</RteFlg>
897
+  </Group>
898
+
899
+</ProjectOpt>