Compare commits
481 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d45420579a | |||
| 1ac4b0b640 | |||
| eb4b14af59 | |||
| 325f34b867 | |||
| 46cd82a2d6 | |||
| 15bcefc9d1 | |||
| 58dcd3f128 | |||
| 7aa40392d0 | |||
| 1d32330d27 | |||
| 7c783ef0bf | |||
| 6b59a997c2 | |||
| 774811d83b | |||
| 9b55ab972c | |||
| f6828c9ad1 | |||
| 5d00281bbe | |||
| e60ba49220 | |||
| 5f0c413e56 | |||
| 524e62bcc7 | |||
| 2d2946753b | |||
| 2c5ad43d22 | |||
| ee9b117da0 | |||
| 7e42d35d00 | |||
| c715aba1b8 | |||
| 29e0d7b4f5 | |||
| d91eaed4fb | |||
| 6983f193ce | |||
| 5640b54ae9 | |||
| 9948179728 | |||
| 874a2cb05a | |||
| 777709171f | |||
| 885caace80 | |||
| 40cb4d7a1e | |||
| 680b0a0599 | |||
| c60469f5b4 | |||
| 6bc775b694 | |||
| 547877b30d | |||
| 0af1434882 | |||
| b1477d96f5 | |||
| 119d8e385c | |||
| 23adda2e53 | |||
| c3cdf4c8ad | |||
| 20a9324c58 | |||
| f5808d6731 | |||
| a16a487bf2 | |||
| 2704879aa4 | |||
| 693b2e457d | |||
| cb335af011 | |||
| fcc89f3e1c | |||
| ed222d73cf | |||
| e5ad26aac2 | |||
| 779b7a12b8 | |||
| 29b9ba4d9b | |||
| 6707ef752f | |||
| ec08a5963b | |||
| 4cb79ef397 | |||
| b85750fa98 | |||
| 341988a20c | |||
| 38264f809b | |||
| 476ffa4714 | |||
| b3a37db2b5 | |||
| d25c49001c | |||
| ed0d0f0c32 | |||
| 39bb06ee62 | |||
| 7b8ef106f3 | |||
| 9781ffaae0 | |||
| 87ddc852d5 | |||
| 4ddb378a4b | |||
| a6a7a7a98d | |||
| 801a9a89f1 | |||
| 6bd5ed1fdf | |||
| 073c13782f | |||
| 4c17c08cc4 | |||
| f8265791bb | |||
| e45b5d46cb | |||
| c0133c2597 | |||
| a802b91a5b | |||
| e5b90bcd7d | |||
| 06819baf8b | |||
| 1c0ae3875a | |||
| 609e4165ce | |||
| 55d124009e | |||
| 6d6a8ac809 | |||
| 9420f7f3b3 | |||
| f5b252a52d | |||
| 64a8e00dbb | |||
| 40ab6e563a | |||
| 2fd739339a | |||
| 3d3594105a | |||
| 7c9aca9d3d | |||
| 8432c4f98f | |||
| c56c42c4f8 | |||
| 276738d93b | |||
| 9f1bf4ee19 | |||
| c5319d9ff7 | |||
| f0bd1200ce | |||
| 2239768e82 | |||
| 4eae2bc3d0 | |||
| d513ef1c49 | |||
| 83c2b31313 | |||
| 064b28c081 | |||
| a45a7f1105 | |||
| 1b845035e1 | |||
| 8ce11489ae | |||
| 76e4043810 | |||
| ffa6beaa5f | |||
| 007ffcbe85 | |||
| e4f9ba5ba3 | |||
| d9b611a72a | |||
| 4014526e94 | |||
| 9b39f8d9a6 | |||
| 420b016e55 | |||
| c64d88bb1a | |||
| aa26bd2095 | |||
| 9469edb747 | |||
| d00073e790 | |||
| 4b778c1976 | |||
| d9904e2bb1 | |||
| ff6351483c | |||
| 69452da545 | |||
| 1959767107 | |||
| 2cf61acef2 | |||
| 580cde7cf6 | |||
| d85d98a78c | |||
| 57285258b9 | |||
| 0c89f42463 | |||
| 84bebeded7 | |||
| 1c14375948 | |||
| c1cedcb9c2 | |||
| 271a80766b | |||
| efb7df7c33 | |||
| 0471fa43dc | |||
| aa0c14c588 | |||
| 2543fd1238 | |||
| c01d6a3899 | |||
| 79e5a480ec | |||
| e3bb56f38b | |||
| 77cc277ba9 | |||
| 0bb8d7788d | |||
| fcb35d7b91 | |||
| 970d2adf73 | |||
| 3d1779ad81 | |||
| 05bbb46400 | |||
| b1dae861fc | |||
| b9a0acffea | |||
| 765326df98 | |||
| 394b959ae5 | |||
| 09ab588e06 | |||
| ad4898e0f0 | |||
| 535f2a2f7d | |||
| a2235da1fd | |||
| f9e281ea4a | |||
| 8a64684247 | |||
| 290af2a77c | |||
| 99ceee42f6 | |||
| 6bc11ba56a | |||
| 704253a9e8 | |||
| efe3678d55 | |||
| 3347d31297 | |||
| d84d8666c5 | |||
| b9e839ff41 | |||
| 24634276aa | |||
| 8e691ba69e | |||
| 30aa17dd0e | |||
| f0fbe52296 | |||
| 48f61c564f | |||
| 1e67263010 | |||
| 9cf1e8f268 | |||
| ceb15a9af1 | |||
| fe0c6093d5 | |||
| a231b33ef8 | |||
| ccacc34bd0 | |||
| 111d593567 | |||
| 65eb3ab488 | |||
| ad65de63fe | |||
| 135c7aaac4 | |||
| 881e0ced01 | |||
| e79a73588f | |||
| 2c03a95d28 | |||
| 17177af681 | |||
| bda081de95 | |||
| 638c2fe671 | |||
| 3d1de663a8 | |||
| d1b1daeed7 | |||
| 3c22eda2dc | |||
| 5deae80baa | |||
| 0ce0e65d40 | |||
| cacc86099e | |||
| 9b0d2a7fce | |||
| 71387262fc | |||
| e9fbbc2aa1 | |||
| ead9ef68ce | |||
| b3f57d19b1 | |||
| 3b6cc46136 | |||
| 11e1e8a26c | |||
| a6ce89f73f | |||
| aceb1d2f05 | |||
| 24c476d919 | |||
| 28332daea7 | |||
| 0439d8d97d | |||
| 3baec88cce | |||
| a3a69d24fd | |||
| 7ae75451bc | |||
| 6937b6a54f | |||
| fdbe554eda | |||
| dac9aa3444 | |||
| b9f8f07bbc | |||
| 3815fc66b4 | |||
| 77dbf2f5c9 | |||
| e6c157688a | |||
| 4c72d92ebe | |||
| 919dfbc31b | |||
| cc6f06dc3e | |||
| 0d97b06c57 | |||
| feffc91f96 | |||
| fdb2c85ce3 | |||
| 94e0286059 | |||
| 97b1aac278 | |||
| ac7f145da5 | |||
| 43f89eee78 | |||
| 9ab356af36 | |||
| c9f7007368 | |||
| 4ebdb5cfa1 | |||
| cd25c99600 | |||
| adf44acec1 | |||
| 61ba6905d3 | |||
| 9991c818a4 | |||
| 0e5f136c22 | |||
| 9cd9680805 | |||
| 6faafc39e4 | |||
| 27896cd970 | |||
| 761a2c1653 | |||
| fd59b5a6ea | |||
| fec1fd439e | |||
| f0bc9575b9 | |||
| 7a87809974 | |||
| 83befad0b1 | |||
| 1eb6b386e5 | |||
| 4d51474c65 | |||
| 3cb8a846b6 | |||
| bb0e524314 | |||
| f4a49e95f8 | |||
| d1dcc60965 | |||
| bacb67a75e | |||
| b9aaaf441e | |||
| d7684cb6b8 | |||
| bd527afe41 | |||
| 996e73f2c8 | |||
| 9fdf1b535d | |||
| c9bb309c29 | |||
| 9939a92809 | |||
| d5f1068b78 | |||
| 5fdc676460 | |||
| d826e90919 | |||
| 3bb8a11aff | |||
| 7c00fd31c6 | |||
| a77f800a1d | |||
| 799a7434dc | |||
| 320c960370 | |||
| 68673ef071 | |||
| 114b7d1776 | |||
| 9e6a71f7f8 | |||
| ad566ac363 | |||
| 0516a58ec6 | |||
| 143f733077 | |||
| a774a98ea4 | |||
| 22350a3555 | |||
| bd3ab34263 | |||
| 1f3ef4c84a | |||
| 2add4a55ef | |||
| 8788cf21c4 | |||
| 2ddc9eb927 | |||
| a4f8684bef | |||
| 10c6cf52b1 | |||
| f12064e029 | |||
| 985cf9f977 | |||
| 1b54fcae86 | |||
| f1b2e5a530 | |||
| 2464c99999 | |||
| 17fd5ace9b | |||
| e266de61bf | |||
| e8ba02eb7a | |||
| 40edc8677f | |||
| 82d9be071b | |||
| 81760c35c9 | |||
| 9a361e6e97 | |||
| 67a276dbb6 | |||
| be1276785c | |||
| 2f8b646a4f | |||
| 1ff7bc8746 | |||
| 1dbf5c1b6b | |||
| 5ba1f22de8 | |||
| e04a49b6a0 | |||
| 5b2529ad71 | |||
| e0a193c671 | |||
| 99023db231 | |||
| 2c5c92e578 | |||
| 22594e36c0 | |||
| 9018c98a68 | |||
| 62ed077791 | |||
| 68b32a5a15 | |||
| a24aebf4ac | |||
| 95a7926f36 | |||
| 76d5537b7a | |||
| 75f1fcc663 | |||
| ab803c7a54 | |||
| 0431f8f1be | |||
| 4f1884a468 | |||
| 1789fd82a0 | |||
| 9602b5e7fb | |||
| 08e9cc715f | |||
| 578b483c68 | |||
| fc2bd6b187 | |||
| e7180b56ee | |||
| 020703e07d | |||
| c1e8443ceb | |||
| 7cda4c4dec | |||
| 4194730f9c | |||
| a3fabf7eb6 | |||
| 33b17782cf | |||
| 0307d7ba2a | |||
| 00c431dfd0 | |||
| 317b34a8c0 | |||
| 09060b0b6f | |||
| 4cdda6dacb | |||
| 54193ffae7 | |||
| af5cd3dcf2 | |||
| c9985a3c67 | |||
| 1d7aa1b0ad | |||
| bb4561bd4e | |||
| 9077420de8 | |||
| 26e5f36783 | |||
| 4d5b7b3033 | |||
| ed73d2fdae | |||
| a00aec83ff | |||
| 6b611ff248 | |||
| e2af8153ed | |||
| 5724a22c9d | |||
| ee8e207004 | |||
| a2c93167ce | |||
| e94fd65e8f | |||
| ddf2f9e8f5 | |||
| 923e6408e7 | |||
| 96e6a441b9 | |||
| fbb8a4cbf6 | |||
| 2c84a79ebb | |||
| 7bd2381dca | |||
| a922b0cc40 | |||
| 3c0cf37074 | |||
| f9412ed0ea | |||
| da6647391c | |||
| a2c6c0298e | |||
| aa6c58df79 | |||
| 71d43c26be | |||
| e9dea14165 | |||
| 3b076f0faa | |||
| 2f4c6ce787 | |||
| 6425ffd91c | |||
| cbbe0a7387 | |||
| ad0c8e6bd6 | |||
| 68085d5ea5 | |||
| bfba8a23e1 | |||
| 2cd847b57b | |||
| 11928ccbb8 | |||
| 7bc70b5a72 | |||
| e10eeb48dd | |||
| 1298b5ce2a | |||
| 6bb6678e07 | |||
| 21cae3841d | |||
| 332f134542 | |||
| 3d7c0be8f3 | |||
| 3a80c00cc5 | |||
| 4811d4fb7b | |||
| 866c569afb | |||
| c02f13773a | |||
| 4d70145b4a | |||
| 31cac06417 | |||
| f442760ac4 | |||
| bcca4e2d7a | |||
| 8801b2fa9d | |||
| b32974aab8 | |||
| 133ebc1032 | |||
| e1cdcd73fc | |||
| aa410bec37 | |||
| 3ac4620c7d | |||
| 5283d905b7 | |||
| f1b30c3ba7 | |||
| 37d16a41b7 | |||
| 4d5704d99e | |||
| 95f667e3b0 | |||
| 1d33c05ca3 | |||
| 5b4e14ec73 | |||
| fb5cbe212e | |||
| f675ff0b66 | |||
| 83ad8302c1 | |||
| 955c3a2e7c | |||
| 664b6e56b9 | |||
| f94e4375f3 | |||
| 1cf1c01163 | |||
| 0cd2fe0528 | |||
| fb34754e1f | |||
| 20d5804a87 | |||
| 5851dc9707 | |||
| 7cc337c0fd | |||
| 09685951c3 | |||
| 720f6d3548 | |||
| 1393d568a0 | |||
| 92b6a3a4f2 | |||
| becdca9dc7 | |||
| dc3cce9990 | |||
| f8d7296f76 | |||
| 615eba69bd | |||
| aab6d49812 | |||
| 9bfef795e7 | |||
| 428808715a | |||
| 7dfc856318 | |||
| c87fb49656 | |||
| df21b2021a | |||
| 6cb386e578 | |||
| bd7c73f2a5 | |||
| ea21075a1d | |||
| 71a5d93a21 | |||
| c461f71cf2 | |||
| 9ce8ea1400 | |||
| b181d9273b | |||
| 069881f5c4 | |||
| ce61501d43 | |||
| 386f2940ad | |||
| 1965f6e182 | |||
| f699ecdae9 | |||
| 6655e7dd20 | |||
| 1101798a28 | |||
| e7836141d1 | |||
| b824867264 | |||
| a115b00822 | |||
| e34a0e9d5b | |||
| 2dee13b495 | |||
| cdd208fc7b | |||
| 86df7e4735 | |||
| 0cb04a5fdb | |||
| b05a3db6f0 | |||
| c0f9a6216c | |||
| 5f21e2bae6 | |||
| 69e2327b41 | |||
| 80d23a4dad | |||
| 6dc12400c5 | |||
| 68fcbd56f6 | |||
| 2ff06e2142 | |||
| 4ed89630f7 | |||
| cb512647b3 | |||
| 284725f420 | |||
| d9e2aad988 | |||
| 3f0aeb68ea | |||
| 285500cd86 | |||
| c7dfaff662 | |||
| be85ccb830 | |||
| f1f7b519e5 | |||
| 694395f997 | |||
| e88fb5c895 | |||
| bbdc1cb56f | |||
| 9d94be8dd6 | |||
| 2b70c8b1d1 | |||
| 56dafa2198 | |||
| 47a9e50a2e | |||
| bffc1e89c4 | |||
| 2ad8bf988a | |||
| ef4eb1f30b | |||
| f2d1faeec4 | |||
| bbb0481774 | |||
| 67fa04b8ed | |||
| aac42015f8 | |||
| debc9b061f | |||
| 43da6cc840 | |||
| 170eb132a4 | |||
| 875f5c2d9d | |||
| fba9d4cf67 | |||
| 72ecd7e39f | |||
| 00e35e4042 | |||
| 1d3d8e0836 | |||
| db61e6b3ad | |||
| b5d76a99b2 | |||
| 2d566a420d |
+3
-1
@@ -3,6 +3,8 @@
|
||||
# CSS package
|
||||
xdctools_*/
|
||||
ccsv8/
|
||||
simplelink/ble_sdk_2_02_02_25/examples/cc2650em/simple_peripheral/ccs/app/.config/
|
||||
|
||||
# CSS build files
|
||||
FlashROM/
|
||||
FlashROM/
|
||||
/Elite_test.txt
|
||||
|
||||
Binary file not shown.
@@ -0,0 +1,7 @@
|
||||
MAC 18:04:ED:37:C6:6A .
|
||||
. coeff offset
|
||||
ADC_C1 311760871.760443 -50619.5024488329
|
||||
ADC_C2 0.065484773376246 -1061.19682828209
|
||||
ADC_C3 0.003142283837061 -50.9228211021286
|
||||
DAC -1.05569320115838 -0.000624379961454
|
||||
ADC_V1 56126.9201379636 10.1198174952741
|
||||
@@ -0,0 +1,23 @@
|
||||
no device y=ax+b MAC a+ b+ a- b- avg
|
||||
1 c6be c6be 1804ED37C6BE 2270 -7040 2259 -14129 4.15063496100114
|
||||
2 8cd0 8cd0 0081F9E48CD0 2199 -4616 2162 -16396 4.67288597901671
|
||||
3 c694 c694 1804ED37C694 2354 -12824 2354 -11216 4.34663132771076
|
||||
4 c6c7 c6c7 1804ED37C6C7 2199 -7238 2221 -15702 4.63164432837751
|
||||
5 9b97 9b97 0081F9E49B97 2227 -9846 2151 -26609 4.75015860006776
|
||||
6 c6df c6df 1804ED37C6DF 2132 -3844 2054 -21545 4.89066238118665
|
||||
7 c652 c652 18:04:ED:37:C6:52 2024 -7687 2086 -11283 4.88850143182858
|
||||
8 c5ed c5ed 18:04:ED:37:C5:ED 2231 -1711 2353 -70845 4.45265043545859
|
||||
9 9bef 9bef 0081F9E49BEF 2383 -8585 2415 -20347 4.2758539244186
|
||||
10 8b50 8b50 00:81:F9:E4:8B:50 2369 -11005 2360 -11797 4.30475635707671
|
||||
11 c641 c641 18:04:ED:37:C6:41 2090 4616 1997 -40665 5.07591391714942
|
||||
12 E8E6 E8E6 A4:DA:32:D4:E8:E6 2306 -88454 2418 -15140 4.2686494968089
|
||||
13 E73B E73B A4:DA:32:D4:E7:3B 2262 -564 2298 44746 4.35551198222141
|
||||
14 EEE2 EEE2 A4:DA:32:D4:EE:E2 2057 5980 2096 -21411 4.82094019052184
|
||||
15 E871 E871 A4:DA:32:D4:E8:71 2175 -4549 2220 31468 4.60684608395208
|
||||
16 EFC4 EFC4 A4:DA:32:D4:EF:C4 2348 -4371 2374 -26606 4.45106768611704
|
||||
17 EF85 EF85 A4:DA:32:D4:EF:85 2136 -3339 2189 -30040 4.61909624778354
|
||||
18 E7DA E7DA A4:DA:32:D4:E7:DA 2081 -3015 2122 -21543 4.79766509652981
|
||||
19 E6EA E6EA A4:DA:32:D4:E6:EA 2039 -262 2127 -47259 4.79384458739747
|
||||
20 EEDB EEDB A4:DA:32:D4:EE:DB 2214 -1170 2351 -24636 4.44485358085645
|
||||
21 E73A E73A A4:DA:32:D4:E7:3A 2210 -4855 2339 -16434 4.47776494604746
|
||||
22 E6CF E6CF A4:DA:32:D4:E6:CF 2135 -5206 2193 -30885 4.73462680884304
|
||||
@@ -26,7 +26,8 @@ BioPro Device
|
||||
3. Neulive 1.3
|
||||
|
||||
`simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_neulive.h`
|
||||
|
||||
[docs](simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx\app/headstage/uni/Neulive13.md)
|
||||
|
||||
4. EliteZM
|
||||
|
||||
`simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_zm.h`
|
||||
@@ -35,6 +36,10 @@ BioPro Device
|
||||
|
||||
`simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_sti.h`
|
||||
|
||||
6. Neulive 2.0
|
||||
|
||||
`simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_neu.h`
|
||||
|
||||
### Notable source code
|
||||
|
||||
* gpio table
|
||||
|
||||
Executable
+39
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
#path=$(pwd)
|
||||
#folder=$($path | awk -F"/" '{$NF}')
|
||||
folder=$(basename "$(pwd)")
|
||||
|
||||
if [ "$folder" == "bioprocc2650" ]; then
|
||||
year=$(date +%-y)
|
||||
month=$(date +%-m)
|
||||
day=$(date +%-d)
|
||||
hour=$(date +%-H)
|
||||
minute=$(date +%-M)
|
||||
|
||||
hash=$(git rev-parse HEAD)
|
||||
branch=$(git rev-parse --abbrev-ref HEAD)
|
||||
|
||||
sed -i "5c #define VERSION_DATE_YEAR ${year}"\
|
||||
./simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_version.h
|
||||
|
||||
sed -i "6c #define VERSION_DATE_MONTH ${month}"\
|
||||
./simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_version.h
|
||||
|
||||
sed -i "7c #define VERSION_DATE_DAY ${day}"\
|
||||
./simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_version.h
|
||||
|
||||
sed -i "8c #define VERSION_DATE_HOUR ${hour}"\
|
||||
./simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_version.h
|
||||
|
||||
sed -i "9c #define VERSION_DATE_MINUTE ${minute}"\
|
||||
./simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_version.h
|
||||
|
||||
sed -i "13c #define VERSION_HASH ${hash}"\
|
||||
./simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_version.h
|
||||
|
||||
sed -i "14c #define VERSION_GIT_BRANCH ${branch}"\
|
||||
./simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_version.h
|
||||
|
||||
#cat ./simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/headstage_version.h
|
||||
fi
|
||||
@@ -17,32 +17,32 @@ STI_PARAMETER = {
|
||||
}
|
||||
|
||||
NEULIVE_INSTRUCTION = {
|
||||
'RIS': '3b101#header#;2b0;3b>LB;4b0;1bCH;1bFS;3b>WF;5b>TV;4b>PM;4b>NM;4b>SR',
|
||||
'RIS': '3b101#header#;2b0;3b>LB;2b0;1bCH;1bFS;3b>WF;5b>TV;4b>PM;4b>NM;4b>SR',
|
||||
'UMC': '3b001#umc_parameter;3b>AG;4b>PW;6b>TT;2b>SB;6b>TF;1bCA;1bCB;1bCC;1bCD;4b>CHA;4b>CHB;4b>CHC;4b>CHD'
|
||||
}
|
||||
|
||||
NEULIVE_PARAMETER = {
|
||||
'LB': 0,
|
||||
'CH': 0,
|
||||
'FS': 0,
|
||||
'WF': 0,
|
||||
'TV': 0,
|
||||
'PM': 15,
|
||||
'NM': 0,
|
||||
'SR': 0,
|
||||
'AG': 5,
|
||||
'PW': 0,
|
||||
'TT': 0,
|
||||
'SB': 1,
|
||||
'TF': 3,
|
||||
'CA': 1,
|
||||
'CB': 0,
|
||||
'CC': 0,
|
||||
'CD': 0,
|
||||
'CHA': 0,
|
||||
'CHB': 1,
|
||||
'CHC': 2,
|
||||
'CHD': 3,
|
||||
'LB': 0, # LOW BAND FREQEUNCY
|
||||
'CH': 1, # CHOPPER
|
||||
'FS': 0, # FAST SETTLE
|
||||
'WF': 1, # WAVEFORM : POS, NEG, P2N...etc.
|
||||
'TV': 0, # STIMULATION VOLTAGE
|
||||
'PM': 0, # P CHANNEL SELECT
|
||||
'NM': 0, # N CHANNEL SELECT
|
||||
'SR': 0, # ADC SAMPLING RATE
|
||||
'AG': 5, # AMP GAIN
|
||||
'PW': 0, # PULSE WIDTH
|
||||
'TT': 9, # STIMULATION TIMES
|
||||
'SB': 2, # STIMULATION BEHAVIOR
|
||||
'TF': 1, # STIMULATION FREQUENCY
|
||||
'CA': 1, # AMP CHANNEL A ENABLE
|
||||
'CB': 1, # AMP CHANNEL B ENABLE
|
||||
'CC': 1, # AMP CHANNEL C ENABLE
|
||||
'CD': 1, # AMP CHANNEL D ENABLE
|
||||
'CHA': 9, # AMP CHANNEL A
|
||||
'CHB': 1, # AMP CHANNEL B
|
||||
'CHC': 2, # AMP CHANNEL C
|
||||
'CHD': 3, # AMP CHANNEL D
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
*.txt
|
||||
@@ -1,7 +1,534 @@
|
||||
def main():
|
||||
file = open('C:/ti/python_test_code/uni/att_notify.psd', 'r')
|
||||
print(file.read())
|
||||
file.close()
|
||||
"""
|
||||
purpose:
|
||||
|
||||
in order to analyze the data loss of bluetooth, a small code is needed.
|
||||
Guess that there are three type of data loss. In order to prove this idea,
|
||||
several tests are needed
|
||||
|
||||
types of data loss:
|
||||
|
||||
1. packet loss:
|
||||
bluetooth notification does not need any negotiation.
|
||||
if there is any packet loss during the connection,
|
||||
it will not be lost forever
|
||||
|
||||
2. program delay causes loss in client(headstage):
|
||||
too many effort on data packaging, it would cause
|
||||
data delay
|
||||
|
||||
3. program delay causes loss in host(controller):
|
||||
...todo and need to define
|
||||
|
||||
Assume that we have lost several bytes data. We want to analyze the type of data lost.
|
||||
method:
|
||||
compare ramp data with time stamp, there are several conditions
|
||||
if data_delta * 1 / sampling_rate == time_delta:
|
||||
this should be packet loss
|
||||
else
|
||||
this should be program delay
|
||||
|
||||
method to coped with the corresponding problem:
|
||||
1. try 'Indication' to check data loss is reduced or not.
|
||||
2. modified the procedure of data packaging
|
||||
3. after the upper two problems are excluded, this problem should be left over
|
||||
|
||||
"""
|
||||
import os.path
|
||||
import sys
|
||||
from collections import Counter
|
||||
from typing import List, Optional, Dict, Set, Any
|
||||
|
||||
|
||||
class Options:
|
||||
def __init__(self):
|
||||
self.skip = False
|
||||
self.round = 2
|
||||
self.overflow_pow: Optional[int] = None
|
||||
|
||||
# print options
|
||||
self.quiet = False
|
||||
|
||||
# graph options
|
||||
self.graph: Optional[str] = None
|
||||
self.graph_log_scale = False
|
||||
self.graph_save_path: Optional[str] = None
|
||||
|
||||
# fft graph options
|
||||
self.fft_x_log = False
|
||||
self.fft_y_norm = False
|
||||
self.fft_channel = 0
|
||||
|
||||
@staticmethod
|
||||
def print_help():
|
||||
prg = sys.argv[0]
|
||||
|
||||
print(prg, '[OPTIONS]', 'FILE', '...')
|
||||
print()
|
||||
print('OPTIONS:')
|
||||
print(' -h, --help : print help')
|
||||
print(' --skip : skip if FILE not found')
|
||||
print(' --round VALUE : floating number round')
|
||||
print(' --overflow VALUE : overflow number. 2^VALUE')
|
||||
print()
|
||||
print('OPTIONS (print):')
|
||||
print(' -q : do not print table')
|
||||
print()
|
||||
print('OPTIONS (graph):')
|
||||
print(' --graph TYPE : use matplotlib to generate graph. could be:')
|
||||
print(' ramp : ramp data, calculate value miss')
|
||||
print(' fft : sin wave data, calculate fft')
|
||||
print(' --graph-log-scale :')
|
||||
print(' --graph-save PATH : save graph file path')
|
||||
print()
|
||||
print('OPTIONS (graph=fft):')
|
||||
print(' --fft-channel CH : filter channel')
|
||||
print(' --fft-log : log x-axis')
|
||||
print(' --fft-norm : log x-axis normalize')
|
||||
print(' --fft [opt,...] : above')
|
||||
print()
|
||||
print('ARGUMENTS:')
|
||||
print(' FILE : txt data file')
|
||||
print()
|
||||
|
||||
|
||||
class Result:
|
||||
def __init__(self, data_file: str, options: Options):
|
||||
# data file information
|
||||
self.data_file = data_file
|
||||
self.date_time: Optional[str] = None
|
||||
self.device_name: Optional[str] = None
|
||||
self.device_address: Optional[str] = None
|
||||
self.parameter: Dict[str, str] = {}
|
||||
self.channel: Set[int] = set()
|
||||
self.total_duration: float = 0.0
|
||||
|
||||
# analysis data
|
||||
self.data_count = 0
|
||||
self.time_delta_counter = Counter()
|
||||
self.value_delta_counter = Counter()
|
||||
|
||||
# analysis options
|
||||
self.round = options.round
|
||||
|
||||
self.overflow: Optional[int] = None
|
||||
if options.overflow_pow is not None:
|
||||
self.overflow = 2 ** options.overflow_pow
|
||||
|
||||
# temp data
|
||||
self._prev_time: Optional[float] = None
|
||||
self._prev_value: Optional[int] = None
|
||||
self._close = False
|
||||
|
||||
@property
|
||||
def sample_rate(self) -> int:
|
||||
try:
|
||||
sample_rate = self.parameter['SAMPLE_RATE']
|
||||
except KeyError as e:
|
||||
raise RuntimeError('data file do not contain SAMPLE_RATE') from e
|
||||
|
||||
try:
|
||||
return int(sample_rate)
|
||||
except ValueError as e:
|
||||
raise RuntimeError('data file SAMPLE_RATE value not a value : ' + str(sample_rate)) from e
|
||||
|
||||
def update(self, time: float, channel: int, value: int):
|
||||
if self._close:
|
||||
raise RuntimeError('closed')
|
||||
|
||||
self.data_count += 1
|
||||
|
||||
if self._prev_time is not None:
|
||||
delta = round(time - self._prev_time, self.round)
|
||||
self.time_delta_counter[delta] += 1
|
||||
|
||||
if self._prev_value is not None:
|
||||
delta = value - self._prev_value
|
||||
self.value_delta_counter[delta] += 1
|
||||
|
||||
self._prev_time = time
|
||||
self.channel.add(channel)
|
||||
self._prev_value = value
|
||||
self.total_duration = time
|
||||
|
||||
def close(self):
|
||||
self._close = True
|
||||
|
||||
if self.overflow is not None:
|
||||
|
||||
self.value_delta_counter[1] += self.value_delta_counter[1 - self.overflow]
|
||||
del self.value_delta_counter[1 - self.overflow]
|
||||
i = 2
|
||||
|
||||
while i - self.overflow in self.value_delta_counter:
|
||||
self.value_delta_counter[i] += self.value_delta_counter[i - self.overflow]
|
||||
del self.value_delta_counter[i - self.overflow]
|
||||
i += 1
|
||||
|
||||
|
||||
def calculate(txt_file: str, options: Options) -> Result:
|
||||
if not os.path.exists(txt_file):
|
||||
raise FileNotFoundError(txt_file)
|
||||
|
||||
result = Result(txt_file, options)
|
||||
|
||||
parsing_state = 0
|
||||
|
||||
with open(txt_file) as _file:
|
||||
for line, content in enumerate(_file): # type: int, str
|
||||
content = content.strip()
|
||||
|
||||
if len(content) == 0:
|
||||
continue
|
||||
|
||||
if parsing_state == 0:
|
||||
if content.startswith('#'):
|
||||
if result.date_time is None:
|
||||
result.date_time = content[1:].strip()
|
||||
|
||||
elif content.startswith('# device_name'):
|
||||
result.device_name = content[len('# device_name'):].strip()
|
||||
|
||||
elif content.startswith('# mac_address'):
|
||||
result.device_address = content[len('# mac_address'):].strip()
|
||||
|
||||
elif content.startswith('# parameter'):
|
||||
parsing_state = 1
|
||||
|
||||
elif parsing_state == 1:
|
||||
if content.startswith('#'):
|
||||
if content.startswith('# time_stamp'):
|
||||
parsing_state = 2
|
||||
|
||||
else:
|
||||
part = content[2:].split(' ', maxsplit=2)
|
||||
|
||||
result.parameter[part[0]] = part[1]
|
||||
|
||||
elif parsing_state == 2:
|
||||
if content.startswith('#'):
|
||||
continue
|
||||
|
||||
part = content.split(' ', maxsplit=3)
|
||||
|
||||
try:
|
||||
time = part[0]
|
||||
channel = part[1]
|
||||
value = part[2]
|
||||
except IndexError:
|
||||
print('@%d' % (line + 1), 'incomplete data', ':', content)
|
||||
continue
|
||||
|
||||
check_pass = True
|
||||
|
||||
try:
|
||||
time = float(time)
|
||||
except ValueError:
|
||||
print('@%d' % (line + 1), 'incomplete time', ':', time)
|
||||
check_pass = False
|
||||
|
||||
try:
|
||||
channel = int(channel)
|
||||
except ValueError:
|
||||
print('@%d' % (line + 1), 'incomplete channel', ':', channel)
|
||||
check_pass = False
|
||||
|
||||
try:
|
||||
value = int(value)
|
||||
except ValueError:
|
||||
print('@%d' % (line + 1), 'incomplete value', ':', value)
|
||||
check_pass = False
|
||||
|
||||
if check_pass:
|
||||
result.update(time, channel, value)
|
||||
|
||||
result.close()
|
||||
|
||||
return result
|
||||
|
||||
|
||||
def print_result(result: Result, options: Options):
|
||||
def print_table(counter: Dict[Any, Any], key_format='%10d', value_format='%d'):
|
||||
f = ' %s : %s' % (key_format, value_format)
|
||||
for k in sorted(counter.keys()):
|
||||
print(f % (k, counter[k]))
|
||||
|
||||
if not options.quiet:
|
||||
print(result.data_file)
|
||||
print('data_count', result.data_count)
|
||||
print('channel', ' '.join(list(map(str, sorted(result.channel)))))
|
||||
print()
|
||||
inv_map = {v: k for k, v in result.time_delta_counter.items()}
|
||||
print('data loss rate', 1 - max(inv_map.keys()) * inv_map[max(inv_map.keys())] / result.total_duration)
|
||||
try:
|
||||
sample_rate = result.sample_rate
|
||||
print('sample_rate [1/s]', sample_rate)
|
||||
print('1/sample_rate [ms]', 1000 / sample_rate)
|
||||
except RuntimeError:
|
||||
print('sample_rate', '(E)')
|
||||
|
||||
print('time_delta')
|
||||
print_table(result.time_delta_counter, '%10.2f')
|
||||
print()
|
||||
|
||||
print('value_delta')
|
||||
print_table(result.value_delta_counter)
|
||||
print()
|
||||
|
||||
# packet miss rate
|
||||
|
||||
#
|
||||
if options.graph == 'ramp':
|
||||
delta_value = list(filter(lambda it: it > 0, result.value_delta_counter))
|
||||
total = sum(map(lambda it: it * result.value_delta_counter[it], delta_value))
|
||||
miss = sum(map(lambda it: (it - 1) * result.value_delta_counter[it], delta_value))
|
||||
print('value_miss (ramp)', '%d/%d' % (miss, total), '%.2f%%' % (100 * miss / total))
|
||||
valid_time = list(filter(lambda it: it < 50, result.time_delta_counter))
|
||||
total_valid_t = sum(map(lambda it: it * result.time_delta_counter[it], valid_time))
|
||||
print('time_waste (ramp)', '%d/%d' % (total_valid_t, result.total_duration), '%.2f%%' % ( 100 * total_valid_t / result.total_duration))
|
||||
timesofwaste = list(filter(lambda it: it > 50, result.time_delta_counter))
|
||||
timesintotal = sum(map(lambda it: result.time_delta_counter[it], timesofwaste))
|
||||
print('waste time occur times (ramp)', '%d' % timesintotal)
|
||||
print()
|
||||
|
||||
paint_ramp_result(result, options)
|
||||
|
||||
elif options.graph == 'fft':
|
||||
paint_fft_result(result, options)
|
||||
|
||||
|
||||
def calculate_(result: Result):
|
||||
print(max(result))
|
||||
|
||||
|
||||
def paint_fft_result(result: Result, options: Options):
|
||||
import matplotlib.pyplot as plt
|
||||
import numpy as np
|
||||
from scipy import signal
|
||||
from scipy.interpolate import interp1d
|
||||
from scipy.fftpack import fft
|
||||
|
||||
time_seq = []
|
||||
value_seq = []
|
||||
time_offset = None
|
||||
total_duration = 0.0
|
||||
|
||||
with open(result.data_file) as _file:
|
||||
for line in _file:
|
||||
line = line.strip()
|
||||
|
||||
if len(line) == 0 or line.startswith('#'):
|
||||
continue
|
||||
|
||||
else:
|
||||
part = line.split(' ', maxsplit=3)
|
||||
channel = int(part[1])
|
||||
|
||||
if channel == options.fft_channel:
|
||||
time = float(part[0])
|
||||
|
||||
if time_offset is None:
|
||||
time_seq.append(0.0)
|
||||
time_offset = time
|
||||
else:
|
||||
total_duration = time - time_offset
|
||||
time_seq.append(time - time_offset)
|
||||
|
||||
value_seq.append(int(part[2]))
|
||||
|
||||
if len(time_seq) == 0:
|
||||
raise RuntimeError('empty channel data : ' + str(options.fft_channel))
|
||||
|
||||
plt.figure(1)
|
||||
f1, pxx_den = signal.periodogram(value_seq, 1e3)
|
||||
plt.semilogy(f1, pxx_den)
|
||||
plt.ylim([1e-7, 1e7])
|
||||
plt.xlabel('frequency [hz]')
|
||||
plt.ylabel('PSD[v**2/Hz')
|
||||
|
||||
plt.figure(2)
|
||||
sample_rate = result.sample_rate
|
||||
time_delta = 1 / sample_rate
|
||||
total_time_step = int(total_duration / (time_delta * 1000))
|
||||
|
||||
f = interp1d(time_seq, value_seq, copy=False)
|
||||
|
||||
t = np.linspace(0, total_duration, total_time_step)
|
||||
|
||||
fft_result = fft(f(t))
|
||||
fft_result = fft_result[:len(fft_result) // 2]
|
||||
fft_x = np.linspace(0, 1.0/(2.0*time_delta), len(fft_result)//2)
|
||||
|
||||
if options.fft_x_log:
|
||||
fft_x = np.log10(fft_x)
|
||||
|
||||
if options.fft_y_norm:
|
||||
fft_result /= sum(fft_result)
|
||||
|
||||
plt.plot(fft_x, 2.0 / len(fft_result) * np.abs(fft_result[0:len(fft_result)//2]))
|
||||
|
||||
|
||||
if options.graph_save_path is not None:
|
||||
plt.savefig(options.graph_save_path, dpi=600)
|
||||
else:
|
||||
plt.show()
|
||||
|
||||
|
||||
def paint_ramp_result(result: Result, options: Options):
|
||||
import matplotlib.pyplot as plt
|
||||
|
||||
fig, (at, av) = plt.subplots(2, 1)
|
||||
|
||||
time_delta_data = list(result.time_delta_counter)
|
||||
expect_time_delta = 1000 / result.sample_rate
|
||||
time_delta_bins = int((max(time_delta_data) - min(time_delta_data)) / expect_time_delta)
|
||||
time_delta_weight = [result.time_delta_counter[k] for k in time_delta_data]
|
||||
at.hist(time_delta_data,
|
||||
bins=time_delta_bins,
|
||||
weights=time_delta_weight,
|
||||
log=options.graph_log_scale,
|
||||
align='left')
|
||||
|
||||
value_delta_data = list(result.value_delta_counter)
|
||||
value_delta_bins = max(value_delta_data) - min(value_delta_data)
|
||||
value_delta_weight = [result.value_delta_counter[k] for k in value_delta_data]
|
||||
av.hist(value_delta_data,
|
||||
bins=value_delta_bins,
|
||||
weights=value_delta_weight,
|
||||
log=options.graph_log_scale,
|
||||
align='left')
|
||||
|
||||
fig.tight_layout()
|
||||
|
||||
if options.graph_save_path is not None:
|
||||
plt.savefig(options.graph_save_path, dpi=600)
|
||||
else:
|
||||
plt.show()
|
||||
|
||||
|
||||
|
||||
|
||||
def main(argv: List[str]):
|
||||
"""
|
||||
|
||||
:param argv:
|
||||
:return:
|
||||
"""
|
||||
|
||||
# df = pd.read_csv("C:/Users/yichin/Downloads/last-2019-07-18-16-30-15-7.csv", sep=",", skiprows=12, header=None)
|
||||
# sel_df = pd.DataFrame(df)
|
||||
# column, row = sel_df.shape
|
||||
# sel_df = sel_df.fillna(value=0)
|
||||
# delta_df = sel_df.diff(periods=1)
|
||||
# delta_df = delta_df.fillna(value=0)
|
||||
# delta_df = delta_df.drop(column - 1)
|
||||
# delta_df.set_axis(['time_delta', 'data_delta'], axis='columns', inplace=True)
|
||||
|
||||
o = Options()
|
||||
|
||||
i = 0
|
||||
while i < len(argv):
|
||||
arg = argv[i]
|
||||
|
||||
if arg in ('-h', '--help'):
|
||||
o.print_help()
|
||||
return
|
||||
|
||||
elif arg == '--skip':
|
||||
o.skip = True
|
||||
i += 1
|
||||
|
||||
elif arg == '--round':
|
||||
o.round = int(argv[i + 1])
|
||||
i += 2
|
||||
|
||||
elif arg.startswith('--round='):
|
||||
o.round = int(arg[len('--round='):])
|
||||
i += 1
|
||||
|
||||
elif arg == '--overflow':
|
||||
o.overflow_pow = int(argv[i + 1])
|
||||
i += 2
|
||||
|
||||
elif arg.startswith('--overflow='):
|
||||
o.overflow_pow = int(arg[len('--overflow='):])
|
||||
i += 1
|
||||
|
||||
elif arg == '-q':
|
||||
o.quiet = True
|
||||
i += 1
|
||||
|
||||
elif arg == '--graph':
|
||||
o.graph = argv[i + 1]
|
||||
i += 2
|
||||
|
||||
elif arg.startswith('--graph='):
|
||||
o.graph = arg[len('--graph='):]
|
||||
i += 1
|
||||
|
||||
elif arg == '--graph-log-scale':
|
||||
o.graph_log_scale = True
|
||||
i += 1
|
||||
|
||||
elif arg == '--graph-save':
|
||||
o.graph_save_path = argv[i + 1]
|
||||
i += 2
|
||||
|
||||
elif arg.startswith('--graph-save='):
|
||||
o.graph = arg[len('--graph-save='):]
|
||||
i += 1
|
||||
|
||||
elif arg == '--fft-channel':
|
||||
o.fft_channel = int(argv[i + 1])
|
||||
i += 2
|
||||
|
||||
elif arg.startswith('--fft-channel='):
|
||||
o.fft_channel = int(arg[len('--fft-channel='):])
|
||||
i += 1
|
||||
|
||||
elif arg == '--fft-log':
|
||||
o.fft_x_log = True
|
||||
i += 1
|
||||
|
||||
elif arg == '--fft-norm':
|
||||
o.fft_y_norm = True
|
||||
i += 1
|
||||
|
||||
elif arg.startswith('--fft'):
|
||||
if arg == '--fft':
|
||||
c = argv[i + 1]
|
||||
i += 2
|
||||
elif arg.startswith('--fft='):
|
||||
c = arg[len('--fft='):]
|
||||
i += 1
|
||||
else:
|
||||
raise ValueError('unknown options : ' + arg)
|
||||
|
||||
for a in c.split(','):
|
||||
if a == 'log':
|
||||
o.fft_x_log = True
|
||||
elif a == 'norm':
|
||||
o.fft_y_norm = True
|
||||
elif a.startswith('channel='):
|
||||
o.fft_channel = int(a[len('channel='):])
|
||||
else:
|
||||
raise ValueError('unknown options : --fft-' + a)
|
||||
|
||||
elif arg.startswith('-'):
|
||||
raise ValueError('unknown options : ' + arg)
|
||||
|
||||
else:
|
||||
i += 1
|
||||
try:
|
||||
result = calculate(arg, o)
|
||||
except FileNotFoundError:
|
||||
if o.skip:
|
||||
continue
|
||||
else:
|
||||
raise
|
||||
|
||||
else:
|
||||
print_result(result, o)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
main(sys.argv[1:])
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
import unittest
|
||||
import random
|
||||
from random import randint
|
||||
from typing import List, Optional
|
||||
|
||||
@@ -182,7 +181,7 @@ class UniRearrangeMuxChannelTest(unittest.TestCase):
|
||||
|
||||
def test_count_channel(self):
|
||||
self.assertEqual(count_channel(to_channel_table(7, 3, 2)), count_channel_without_re(to_channel_table(7, 3, 2)))
|
||||
self.assertEqual(count_channel(to_channel_table(0, 1, 2)), count_channel_without_re(to_channel_table(0, 1, 2)))
|
||||
self.assertEqual(count_channel(to_channel_table(0, 10, 2)), count_channel_without_re(to_channel_table(0, 10, 2)))
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
eclipse.preferences.version=1
|
||||
inEditor=false
|
||||
onBuild=false
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.cdt.debug.core.toggleBreakpointModel=com.ti.ccstudio.debug.CCSBreakpointMarker
|
||||
+24
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<configurations XML_version="1.2" id="configurations_0">
|
||||
<configuration XML_version="1.2" id="configuration_0">
|
||||
<instance XML_version="1.2" desc="Texas Instruments XDS100v3 USB Debug Probe" href="connections/TIXDS100v3_Dot7_Connection.xml" id="Texas Instruments XDS100v3 USB Debug Probe" xml="TIXDS100v3_Dot7_Connection.xml" xmlpath="connections"/>
|
||||
<connection XML_version="1.2" id="Texas Instruments XDS100v3 USB Debug Probe">
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cs_dap.xml" id="drivers" xml="tixds100v2cs_dap.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cortexM.xml" id="drivers" xml="tixds100v2cortexM.xml" xmlpath="drivers"/>
|
||||
<property Type="choicelist" Value="2" id="The Converter Usage">
|
||||
<choice Name="Generate 1149.7 2-pin advanced modes" value="enable">
|
||||
<property Type="choicelist" Value="1" id="The Converter 1149.7 Frequency">
|
||||
<choice Name="Overclock with user specified value" value="unused">
|
||||
<property Type="choicelist" Value="5" id="-- Choose a value from 1.0MHz to 50.0MHz"/>
|
||||
</choice>
|
||||
</property>
|
||||
<property Type="choicelist" Value="5" id="The Target Scan Format"/>
|
||||
</choice>
|
||||
</property>
|
||||
<platform XML_version="1.2" id="platform_0">
|
||||
<instance XML_version="1.2" desc="CC2640F128" href="devices/cc2640f128.xml" id="CC2640F128" xml="cc2640f128.xml" xmlpath="devices"/>
|
||||
</platform>
|
||||
</connection>
|
||||
</configuration>
|
||||
</configurations>
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
The 'targetConfigs' folder contains target-configuration (.ccxml) files, automatically generated based
|
||||
on the device and connection settings specified in your project on the Properties > General page.
|
||||
|
||||
Please note that in automatic target-configuration management, changes to the project's device and/or
|
||||
connection settings will either modify an existing or generate a new target-configuration file. Thus,
|
||||
if you manually edit these auto-generated files, you may need to re-apply your changes. Alternatively,
|
||||
you may create your own target-configuration file for this project and manage it manually. You can
|
||||
always switch back to automatic target-configuration management by checking the "Manage the project's
|
||||
target-configuration automatically" checkbox on the project's Properties > General page.
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
eclipse.preferences.version=1
|
||||
inEditor=false
|
||||
onBuild=false
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.cdt.debug.core.toggleBreakpointModel=com.ti.ccstudio.debug.CCSBreakpointMarker
|
||||
+24
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<configurations XML_version="1.2" id="configurations_0">
|
||||
<configuration XML_version="1.2" id="configuration_0">
|
||||
<instance XML_version="1.2" desc="Texas Instruments XDS100v3 USB Debug Probe" href="connections/TIXDS100v3_Dot7_Connection.xml" id="Texas Instruments XDS100v3 USB Debug Probe" xml="TIXDS100v3_Dot7_Connection.xml" xmlpath="connections"/>
|
||||
<connection XML_version="1.2" id="Texas Instruments XDS100v3 USB Debug Probe">
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cs_dap.xml" id="drivers" xml="tixds100v2cs_dap.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cortexM.xml" id="drivers" xml="tixds100v2cortexM.xml" xmlpath="drivers"/>
|
||||
<property Type="choicelist" Value="2" id="The Converter Usage">
|
||||
<choice Name="Generate 1149.7 2-pin advanced modes" value="enable">
|
||||
<property Type="choicelist" Value="1" id="The Converter 1149.7 Frequency">
|
||||
<choice Name="Overclock with user specified value" value="unused">
|
||||
<property Type="choicelist" Value="5" id="-- Choose a value from 1.0MHz to 50.0MHz"/>
|
||||
</choice>
|
||||
</property>
|
||||
<property Type="choicelist" Value="5" id="The Target Scan Format"/>
|
||||
</choice>
|
||||
</property>
|
||||
<platform XML_version="1.2" id="platform_0">
|
||||
<instance XML_version="1.2" desc="CC2640F128" href="devices/cc2640f128.xml" id="CC2640F128" xml="cc2640f128.xml" xmlpath="devices"/>
|
||||
</platform>
|
||||
</connection>
|
||||
</configuration>
|
||||
</configurations>
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
The 'targetConfigs' folder contains target-configuration (.ccxml) files, automatically generated based
|
||||
on the device and connection settings specified in your project on the Properties > General page.
|
||||
|
||||
Please note that in automatic target-configuration management, changes to the project's device and/or
|
||||
connection settings will either modify an existing or generate a new target-configuration file. Thus,
|
||||
if you manually edit these auto-generated files, you may need to re-apply your changes. Alternatively,
|
||||
you may create your own target-configuration file for this project and manage it manually. You can
|
||||
always switch back to automatic target-configuration management by checking the "Manage the project's
|
||||
target-configuration automatically" checkbox on the project's Properties > General page.
|
||||
+322
-164
@@ -1,167 +1,325 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?fileVersion 4.0.0?>
|
||||
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
|
||||
<storageModule configRelations="2" moduleId="org.eclipse.cdt.core.settings">
|
||||
<cconfiguration id="com.ti.ccstudio.buildDefinitions.TMS470.Default.1291753115">
|
||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.TMS470.Default.1291753115" moduleId="org.eclipse.cdt.core.settings" name="FlashROM">
|
||||
<externalSettings/>
|
||||
<extensions>
|
||||
<extension id="com.ti.ccstudio.errorparser.CoffErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="com.ti.ccstudio.errorparser.LinkErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="com.ti.ccstudio.errorparser.AsmErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="com.ti.rtsc.XDCtools.parsers.ErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.rtsc.xdctools.parsers.ErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/>
|
||||
</extensions>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactExtension="out" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" errorParsers="org.eclipse.rtsc.xdctools.parsers.ErrorParser;com.ti.rtsc.XDCtools.parsers.ErrorParser;com.ti.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser" id="com.ti.ccstudio.buildDefinitions.TMS470.Default.1291753115" name="FlashROM" parent="com.ti.ccstudio.buildDefinitions.TMS470.Default" postbuildStep="${CG_TOOL_HEX} -order MS --memwidth=8 --romwidth=8 --intel -o ${ProjName}.hex ${ProjName}.out" prebuildStep="">
|
||||
<folderInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Default.1291753115." name="/" resourcePath="">
|
||||
<toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exe.DebugToolchain.1418073980" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exe.linkerDebug.1380025885">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.1582688306" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=Cortex M.CC2640F128"/>
|
||||
<listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>
|
||||
<listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.5.0"/>
|
||||
<listOptionValue builtIn="false" value="LINKER_COMMAND_FILE="/>
|
||||
<listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY="libc.a""/>
|
||||
<listOptionValue builtIn="false" value="RTSC_MBS_VERSION=2.2.0"/>
|
||||
<listOptionValue builtIn="false" value="XDC_VERSION=3.32.0.06_core"/>
|
||||
<listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.rtsc.TIRTOSCC13XX_CC26XX:2.21.01.08;"/>
|
||||
<listOptionValue builtIn="false" value="INACTIVE_REPOS="/>
|
||||
<listOptionValue builtIn="false" value="EXPANDED_REPOS="/>
|
||||
<listOptionValue builtIn="false" value="LINK_ORDER=TOOLS/ccs_linker_defines.cmd;TOOLS/cc26xx_app.cmd;"/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.739662419" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="16.9.4.LTS" valueType="string"/>
|
||||
<targetPlatform id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exe.targetPlatformDebug.634338313" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exe.targetPlatformDebug"/>
|
||||
<builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exe.builderDebug.1783170872" name="GNU Make.FlashROM" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exe.builderDebug"/>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exe.compilerDebug.853360855" name="ARM Compiler" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exe.compilerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.SILICON_VERSION.205081197" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.SILICON_VERSION.7M3" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.CODE_STATE.1562370453" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.CODE_STATE.16" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.ABI.54100387" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.ABI.eabi" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.LITTLE_ENDIAN.776513622" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.OPT_LEVEL.1445673478" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.OPT_LEVEL" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.OPT_LEVEL.4" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.OPT_FOR_SPEED.484926802" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.OPT_FOR_SPEED" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.OPT_FOR_SPEED.0" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.INCLUDE_PATH.1112813014" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.INCLUDE_PATH" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/examples/simple_central/cc26xx/app"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/icall/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/roles/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/roles"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/simple_profile"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/common/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/heapmgr"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/controller/cc26xx/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/target/_common"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/target"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/target/_common/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/osal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/sdata"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/saddr"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/icall/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/rom"/>
|
||||
<listOptionValue builtIn="false" value="${CC26XXWARE}"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.C_DIALECT.863938432" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.C_DIALECT" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.C_DIALECT.C99" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DEFINE.1446784470" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DEFINE" valueType="definedSymbols">
|
||||
<listOptionValue builtIn="false" value="BOARD_DISPLAY_EXCLUDE_UART"/>
|
||||
<listOptionValue builtIn="false" value="CC2650DK_7ID"/>
|
||||
<listOptionValue builtIn="false" value="CC26XX"/>
|
||||
<listOptionValue builtIn="false" value="GAPCENTRALROLE_NUM_RSSI_LINKS=1"/>
|
||||
<listOptionValue builtIn="false" value="HEAPMGR_SIZE=0"/>
|
||||
<listOptionValue builtIn="false" value="ICALL_MAX_NUM_ENTITIES=6"/>
|
||||
<listOptionValue builtIn="false" value="ICALL_MAX_NUM_TASKS=3"/>
|
||||
<listOptionValue builtIn="false" value="POWER_SAVING"/>
|
||||
<listOptionValue builtIn="false" value="USE_ICALL"/>
|
||||
<listOptionValue builtIn="false" value="xBOARD_DISPLAY_EXCLUDE_LCD"/>
|
||||
<listOptionValue builtIn="false" value="xDisplay_DISABLE_ALL"/>
|
||||
<listOptionValue builtIn="false" value="xdc_runtime_Assert_DISABLE_ALL"/>
|
||||
<listOptionValue builtIn="false" value="xdc_runtime_Log_DISABLE_ALL"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DIAG_WARNING.1982088211" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DIAG_WARNING" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="225"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DISPLAY_ERROR_NUMBER.1446305355" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DIAG_SUPPRESS.1394384102" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DIAG_SUPPRESS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="48"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DIAG_WRAP.850367854" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DIAG_WRAP.off" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.GEN_FUNC_SUBSECTIONS.1893776167" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.GEN_FUNC_SUBSECTIONS" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.GEN_FUNC_SUBSECTIONS.on" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.CMD_FILE.2006401530" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.CMD_FILE" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/config/build_components.opt"/>
|
||||
<listOptionValue builtIn="false" value="${ORG_PROJ_DIR}/build_config.opt"/>
|
||||
<listOptionValue builtIn="false" value="${ORG_PROJ_DIR}/../../ccs/config/ccs_compiler_defines.bcfg"/>
|
||||
</option>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compiler.inputType__C_SRCS.339372296" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compiler.inputType__C_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compiler.inputType__CPP_SRCS.1684283158" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compiler.inputType__CPP_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compiler.inputType__ASM_SRCS.876227203" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compiler.inputType__ASM_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compiler.inputType__ASM2_SRCS.1353139879" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compiler.inputType__ASM2_SRCS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exe.linkerDebug.1380025885" name="ARM Linker" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exe.linkerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.STACK_SIZE.266547265" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.STACK_SIZE" value="256" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.HEAP_SIZE.1467179876" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.HEAP_SIZE" value="0" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.MAP_FILE.1547400525" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.MAP_FILE" value=""${ProjName}.map"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.OUTPUT_FILE.2000240221" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.OUTPUT_FILE" value=""${ProjName}.out"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.LIBRARY.1982802675" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.LIBRARY" valueType="libs">
|
||||
<listOptionValue builtIn="false" value=""libc.a""/>
|
||||
<listOptionValue builtIn="false" value="${CC26XXWARE}/driverlib/bin/ccs/driverlib.lib"/>
|
||||
<listOptionValue builtIn="false" value="${ROM}/common_rom_releases/03282014/common_rom.symbols"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.SEARCH_PATH.1904712364" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.SEARCH_PATH" valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/lib"/>
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.DIAG_WRAP.2092354689" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.DIAG_WRAP.off" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.DIAG_SUPPRESS.747202646" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.DIAG_SUPPRESS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="10247-D"/>
|
||||
<listOptionValue builtIn="false" value="16002-D"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.DISPLAY_ERROR_NUMBER.1660885810" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.XML_LINK_INFO.1420411176" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.XML_LINK_INFO" value=""${ProjName}_linkInfo.xml"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.UNUSED_SECTION_ELIMINATION.1346463382" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.UNUSED_SECTION_ELIMINATION" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.UNUSED_SECTION_ELIMINATION.on" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.COMPRESS_DWARF.770157989" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.COMPRESS_DWARF" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.linkerID.COMPRESS_DWARF.on" valueType="enumerated"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exeLinker.inputType__CMD_SRCS.421661570" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exeLinker.inputType__CMD_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exeLinker.inputType__CMD2_SRCS.1231976535" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exeLinker.inputType__CMD2_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exeLinker.inputType__GEN_CMDS.604048880" name="Generated Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.exeLinker.inputType__GEN_CMDS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.hex.2015157039" name="ARM Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.hex"/>
|
||||
<tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.1717747287" name="XDCtools" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool">
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH.1962556839" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${COM_TI_RTSC_TIRTOSCC13XX_CC26XX_REPOS}"/>
|
||||
<listOptionValue builtIn="false" value="${TARGET_CONTENT_BASE}"/>
|
||||
</option>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET.807920375" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET" value="ti.targets.arm.elf.M3" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.1248595667" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM" value="ti.platforms.simplelink:CC2650F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW.444999592" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW" value="ti.platforms.simplelink:CC2650F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.1186365171" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE" value="release" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.430694521" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR" value=""${CG_TOOL_ROOT}"" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS.136330490" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS" value=""${COMPILER_FLAGS}"" valueType="string"/>
|
||||
</tool>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
<sourceEntries>
|
||||
<entry excluding="cc26x0f128.cmd" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
|
||||
</sourceEntries>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<project id="SimpleBLECentral.com.ti.ccstudio.buildDefinitions.TMS470.ProjectType.293217533" name="ARM" projectType="com.ti.ccstudio.buildDefinitions.TMS470.ProjectType"/>
|
||||
</storageModule>
|
||||
<storageModule moduleId="scannerConfiguration"/>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.language.mapping">
|
||||
<project-mappings>
|
||||
<content-type-mapping configuration="" content-type="org.eclipse.cdt.core.asmSource" language="com.ti.ccstudio.core.TIASMLanguage"/>
|
||||
<content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cHeader" language="com.ti.ccstudio.core.TIGCCLanguage"/>
|
||||
<content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cSource" language="com.ti.ccstudio.core.TIGCCLanguage"/>
|
||||
<content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxHeader" language="com.ti.ccstudio.core.TIGPPLanguage"/>
|
||||
<content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxSource" language="com.ti.ccstudio.core.TIGPPLanguage"/>
|
||||
</project-mappings>
|
||||
</storageModule>
|
||||
<storageModule configRelations="2" moduleId="org.eclipse.cdt.core.settings">
|
||||
<cconfiguration id="com.ti.ccstudio.buildDefinitions.TMS470.Default.1291753115">
|
||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider"
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470.Default.1291753115"
|
||||
moduleId="org.eclipse.cdt.core.settings" name="FlashROM">
|
||||
<externalSettings/>
|
||||
<extensions>
|
||||
<extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/>
|
||||
<extension id="com.ti.ccstudio.errorparser.CoffErrorParser"
|
||||
point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="com.ti.ccstudio.errorparser.LinkErrorParser"
|
||||
point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="com.ti.ccstudio.errorparser.AsmErrorParser"
|
||||
point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="com.ti.rtsc.XDCtools.parsers.ErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.rtsc.xdctools.parsers.ErrorParser"
|
||||
point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
</extensions>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactExtension="out" artifactName="${ProjName}" buildProperties=""
|
||||
cleanCommand="${CG_CLEAN_CMD}" description=""
|
||||
errorParsers="org.eclipse.rtsc.xdctools.parsers.ErrorParser;com.ti.rtsc.XDCtools.parsers.ErrorParser;com.ti.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470.Default.1291753115" name="FlashROM"
|
||||
parent="com.ti.ccstudio.buildDefinitions.TMS470.Default"
|
||||
postbuildStep="${CG_TOOL_HEX} -order MS --memwidth=8 --romwidth=8 --intel -o ${ProjName}.hex ${ProjName}.out"
|
||||
prebuildStep="">
|
||||
<folderInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Default.1291753115." name="/"
|
||||
resourcePath="">
|
||||
<toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain.1547228068"
|
||||
name="TI Build Tools"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain"
|
||||
targetTool="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.823790760">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.1311981229"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=Cortex M.CC2650F128"/>
|
||||
<listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>
|
||||
<listOptionValue builtIn="false" value="LINKER_COMMAND_FILE=cc26x0f128.cmd"/>
|
||||
<listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
|
||||
<listOptionValue builtIn="false" value="XDC_VERSION=3.32.0.06_core"/>
|
||||
<listOptionValue builtIn="false" value="INACTIVE_REPOS="/>
|
||||
<listOptionValue builtIn="false" value="EXPANDED_REPOS="/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="RTSC_PRODUCTS=com.ti.rtsc.TIRTOSCC13XX_CC26XX:2.21.01.08;"/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
|
||||
<listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.5.0"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="LINK_ORDER=TOOLS/ccs_linker_defines.cmd;TOOLS/cc26xx_app.cmd;"/>
|
||||
<listOptionValue builtIn="false" value="RTSC_MBS_VERSION=2.2.0"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1278535507"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION"
|
||||
value="18.1.3.LTS" valueType="string"/>
|
||||
<targetPlatform
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug.1286316488"
|
||||
name="Platform"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug"/>
|
||||
<builder buildPath="${BuildDirectory}"
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug.446247774"
|
||||
name="GNU Make.FlashROM" parallelBuildOn="true" parallelizationNumber="optimal"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug"/>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug.1912820484"
|
||||
name="ARM Compiler"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.147395442"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.7M3"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.1631152097"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.16"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.1810396348"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.eabi"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN.1849265676"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN"
|
||||
value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.1940421475"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.4"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.1367001075"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.0"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH.286581495"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH"
|
||||
valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${SRC_EX}/examples/simple_central/cc26xx/app"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/icall/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/roles/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/roles"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/simple_profile"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/common/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/heapmgr"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/controller/cc26xx/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/target/_common"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/target"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${SRC_COMMON}/hal/src/target/_common/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/osal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/sdata"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/saddr"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/icall/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/rom"/>
|
||||
<listOptionValue builtIn="false" value="${CC26XXWARE}"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.25198801"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.C99"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE.1378439661"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE"
|
||||
valueType="definedSymbols">
|
||||
<listOptionValue builtIn="false" value="BOARD_DISPLAY_EXCLUDE_UART"/>
|
||||
<listOptionValue builtIn="false" value="CC2650DK_7ID"/>
|
||||
<listOptionValue builtIn="false" value="CC26XX"/>
|
||||
<listOptionValue builtIn="false" value="GAPCENTRALROLE_NUM_RSSI_LINKS=1"/>
|
||||
<listOptionValue builtIn="false" value="HEAPMGR_SIZE=0"/>
|
||||
<listOptionValue builtIn="false" value="ICALL_MAX_NUM_ENTITIES=6"/>
|
||||
<listOptionValue builtIn="false" value="ICALL_MAX_NUM_TASKS=3"/>
|
||||
<listOptionValue builtIn="false" value="POWER_SAVING"/>
|
||||
<listOptionValue builtIn="false" value="USE_ICALL"/>
|
||||
<listOptionValue builtIn="false" value="xBOARD_DISPLAY_EXCLUDE_LCD"/>
|
||||
<listOptionValue builtIn="false" value="xDisplay_DISABLE_ALL"/>
|
||||
<listOptionValue builtIn="false" value="xdc_runtime_Assert_DISABLE_ALL"/>
|
||||
<listOptionValue builtIn="false" value="xdc_runtime_Log_DISABLE_ALL"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING.233710223"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="225"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS.20229844"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="48"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.515276425"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.off"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER.472353918"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER"
|
||||
value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS.603203403"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS.on"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE.1076262962"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/config/build_components.opt"/>
|
||||
<listOptionValue builtIn="false" value="${ORG_PROJ_DIR}/build_config.opt"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${ORG_PROJ_DIR}/../../ccs/config/ccs_compiler_defines.bcfg"/>
|
||||
</option>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS.20122028"
|
||||
name="C Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS.1937961346"
|
||||
name="C++ Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS.1529081332"
|
||||
name="Assembly Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS.1787052493"
|
||||
name="Assembly Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.823790760"
|
||||
name="ARM Linker"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE.654839495"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE"
|
||||
value="256" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE.1634394199"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE"
|
||||
value="0" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE.81069661"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE"
|
||||
value=""${ProjName}.map"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE.460762728"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE"
|
||||
value="${ProjName}.out" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY.1440650831"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY"
|
||||
valueType="libs">
|
||||
<listOptionValue builtIn="false" value="libc.a"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${CC26XXWARE}/driverlib/bin/ccs/driverlib.lib"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${ROM}/common_rom_releases/03282014/common_rom.symbols"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH.1917305202"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH"
|
||||
valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/lib"/>
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.87877887"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.off"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER.607092195"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER"
|
||||
value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS.898739186"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="10247-D"/>
|
||||
<listOptionValue builtIn="false" value="16002-D"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO.456484788"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO"
|
||||
value=""${ProjName}_linkInfo.xml"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.1278856259"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.on"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.1963895384"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.on"
|
||||
valueType="enumerated"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS.219058338"
|
||||
name="Linker Command Files"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS.992399023"
|
||||
name="Linker Command Files"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS.1599766614"
|
||||
name="Generated Linker Command Files"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.2046318121"
|
||||
name="ARM Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH.966050821"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH" value="8"
|
||||
valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH.1884095023"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH" value="8"
|
||||
valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.1998683028"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.INTEL"
|
||||
valueType="enumerated"/>
|
||||
</tool>
|
||||
<tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.405695666" name="XDCtools"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool">
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH.605667670"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${COM_TI_RTSC_TIRTOSCC13XX_CC26XX_REPOS}"/>
|
||||
<listOptionValue builtIn="false" value="${TARGET_CONTENT_BASE}"/>
|
||||
</option>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET.133637234"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET"
|
||||
value="ti.targets.arm.elf.M3" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.2039910934"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM"
|
||||
value="ti.platforms.simplelink:CC2650F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW.1480791815"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW"
|
||||
value="ti.platforms.simplelink:CC2650F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.214895402"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE"
|
||||
value="release" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.1983684756"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR"
|
||||
value="${CG_TOOL_ROOT}" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS.224609618"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS"
|
||||
value=""${COMPILER_FLAGS}"" valueType="string"/>
|
||||
</tool>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
<sourceEntries>
|
||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
|
||||
</sourceEntries>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<project id="SimpleBLECentral.com.ti.ccstudio.buildDefinitions.TMS470.ProjectType.293217533" name="ARM"
|
||||
projectType="com.ti.ccstudio.buildDefinitions.TMS470.ProjectType"/>
|
||||
</storageModule>
|
||||
<storageModule moduleId="scannerConfiguration"/>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.language.mapping">
|
||||
<project-mappings>
|
||||
<content-type-mapping configuration="" content-type="org.eclipse.cdt.core.asmSource"
|
||||
language="com.ti.ccstudio.core.TIASMLanguage"/>
|
||||
<content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cHeader"
|
||||
language="com.ti.ccstudio.core.TIGCCLanguage"/>
|
||||
<content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cSource"
|
||||
language="com.ti.ccstudio.core.TIGCCLanguage"/>
|
||||
<content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxHeader"
|
||||
language="com.ti.ccstudio.core.TIGPPLanguage"/>
|
||||
<content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxSource"
|
||||
language="com.ti.ccstudio.core.TIGPPLanguage"/>
|
||||
</project-mappings>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>
|
||||
</cproject>
|
||||
|
||||
@@ -1,419 +1,419 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>simple_central_cc2650em_app</name>
|
||||
<comment/>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
|
||||
<triggers>full,incremental,</triggers>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.rtsc.xdctools.buildDefinitions.XDC.xdcNature</nature>
|
||||
<nature>com.ti.ccstudio.core.ccsNature</nature>
|
||||
<nature>org.eclipse.cdt.core.cnature</nature>
|
||||
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
|
||||
<nature>org.eclipse.cdt.core.ccnature</nature>
|
||||
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
|
||||
</natures>
|
||||
<linkedResources>
|
||||
<link>
|
||||
<name>Application</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/ECC</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/ECC/ECCROMCC26XX.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/ecc/ECCROMCC26XX.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/ECC/ECCROMCC26XX.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/ecc/ECCROMCC26XX.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICallBLE</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>PROFILES</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Startup</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>TOOLS</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/board_key.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/board_key.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/board_key.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/board_key.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/simple_central.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/examples/simple_central/cc26xx/app/simple_central.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/simple_central.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/examples/simple_central/cc26xx/app/simple_central.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/util.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/util.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/util.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/util.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/PIN</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/RF</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/SPI</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/TRNG</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UART</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UDMA</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/heapmgr.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/heapmgr/heapmgr.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/icall.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/icall/src/icall.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/icall.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/icall/src/inc/icall.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/icall_addrs.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/icall/inc/icall_addrs.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/icall_cc2650.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/icall/src/icall_cc2650.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/icall_platform.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/icall/src/icall_platform.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICallBLE/ble_user_config.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/icall/app/ble_user_config.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICallBLE/ble_user_config.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/icall/inc/ble_user_config.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICallBLE/icall_api.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/icall/app/icall_api.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICallBLE/icall_apimsg.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/icall/inc/icall_apimsg.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/gap.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_BLE_CORE/inc/gap.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/gapbondmgr.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/profiles/roles/gapbondmgr.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/gapgattserver.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/inc/gapgattserver.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/gatt.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_BLE_CORE/inc/gatt.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/hci.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_BLE_CORE/inc/hci.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/osal_snv.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/osal/src/inc/osal_snv.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>PROFILES/central.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/profiles/roles/cc26xx/central.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>PROFILES/central.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/profiles/roles/cc26xx/central.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Startup/board.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/target/board.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Startup/ccfg_app_ble.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>PARENT-1-ORG_PROJ_DIR/config/ccfg_app_ble.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Startup/main.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/examples/simple_central/cc26xx/app/main.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>TOOLS/app_ble.cfg</name>
|
||||
<type>1</type>
|
||||
<locationURI>PARENT-2-ORG_PROJ_DIR/ccs/config/app_ble.cfg</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>TOOLS/cc26xx_app.cmd</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/ccs/cc26xx_app.cmd</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>TOOLS/ccs_compiler_defines.bcfg</name>
|
||||
<type>1</type>
|
||||
<locationURI>PARENT-2-ORG_PROJ_DIR/ccs/config/ccs_compiler_defines.bcfg</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>TOOLS/ccs_linker_defines.cmd</name>
|
||||
<type>1</type>
|
||||
<locationURI>PARENT-2-ORG_PROJ_DIR/ccs/config/ccs_linker_defines.cmd</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display/Display.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/mw/display/Display.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display/DisplayDogm1286.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/mw/display/DisplayDogm1286.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display/DisplayDogm1286.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/mw/display/DisplayDogm1286.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display/DisplayUART.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/mw/display/DisplayUART.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display/DisplayUART.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/mw/display/DisplayUART.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/PIN/PIN.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/PIN.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/PIN/PINCC26XX.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/pin/PINCC26XX.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/PIN/PINCC26XX.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/pin/PINCC26XX.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/RF/RFCC26XX_singleMode.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/rf/RFCC26XX_singleMode.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/RF/RF.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/rf/RF.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/SPI/SPI.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/SPI.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/SPI/SPI.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/SPI.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/SPI/SPICC26XXDMA.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/spi/SPICC26XXDMA.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/SPI/SPICC26XXDMA.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/spi/SPICC26XXDMA.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/TRNG/TRNGCC26XX.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/hal/src/target/_common/TRNGCC26XX.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/TRNG/TRNGCC26XX.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/hal/src/target/_common/TRNGCC26XX.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UART/UART.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/UART.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UART/UART.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/UART.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UART/UARTCC26XX.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/uart/UARTCC26XX.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UART/UARTCC26XX.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/uart/UARTCC26XX.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UDMA/UDMACC26XX.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/dma/UDMACC26XX.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UDMA/UDMACC26XX.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/dma/UDMACC26XX.h</locationURI>
|
||||
</link>
|
||||
</linkedResources>
|
||||
<variableList>
|
||||
<variable>
|
||||
<name>CC26XXWARE</name>
|
||||
<value>file:/C:/ti/tirtos_cc13xx_cc26xx_2_21_01_08/products/cc26xxware_2_24_03_17272</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>ORG_PROJ_DIR</name>
|
||||
<value>${PARENT-2-PROJECT_LOC}/iar/stack</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>ROM</name>
|
||||
<value>${PARENT-5-ORG_PROJ_DIR}/src/rom</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>SRC_BLE_CORE</name>
|
||||
<value>${PARENT-5-ORG_PROJ_DIR}/src</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>SRC_COMMON</name>
|
||||
<value>${PARENT-5-ORG_PROJ_DIR}/src/components</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>SRC_EX</name>
|
||||
<value>${PARENT-5-ORG_PROJ_DIR}/src</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>TI_RTOS_DRIVERS_BASE</name>
|
||||
<value>file:/C:/ti/tirtos_cc13xx_cc26xx_2_21_01_08/products/tidrivers_cc13xx_cc26xx_2_21_01_01/packages</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>TOOLS_BLE</name>
|
||||
<value>${PARENT-5-ORG_PROJ_DIR}/tools</value>
|
||||
</variable>
|
||||
</variableList>
|
||||
<name>simple_central_cc2650em_app</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
|
||||
<triggers>full,incremental,</triggers>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.rtsc.xdctools.buildDefinitions.XDC.xdcNature</nature>
|
||||
<nature>com.ti.ccstudio.core.ccsNature</nature>
|
||||
<nature>org.eclipse.cdt.core.cnature</nature>
|
||||
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
|
||||
<nature>org.eclipse.cdt.core.ccnature</nature>
|
||||
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
|
||||
</natures>
|
||||
<linkedResources>
|
||||
<link>
|
||||
<name>Application</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICallBLE</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>PROFILES</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Startup</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>TOOLS</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/board_key.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/board_key.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/board_key.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/board_key.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/simple_central.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/examples/simple_central/cc26xx/app/simple_central.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/simple_central.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/examples/simple_central/cc26xx/app/simple_central.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/util.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/util.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Application/util.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/util.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/ECC</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/PIN</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/RF</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/SPI</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/TRNG</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UART</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UDMA</name>
|
||||
<type>2</type>
|
||||
<locationURI>virtual:/virtual</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/heapmgr.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/heapmgr/heapmgr.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/icall.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/icall/src/icall.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/icall.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/icall/src/inc/icall.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/icall_addrs.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/icall/inc/icall_addrs.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/icall_cc2650.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/icall/src/icall_cc2650.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICall/icall_platform.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/icall/src/icall_platform.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICallBLE/ble_user_config.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/icall/app/ble_user_config.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICallBLE/ble_user_config.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/icall/inc/ble_user_config.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICallBLE/icall_api.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/icall/app/icall_api.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>ICallBLE/icall_apimsg.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/icall/inc/icall_apimsg.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/gap.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_BLE_CORE/inc/gap.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/gapbondmgr.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/profiles/roles/gapbondmgr.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/gapgattserver.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/inc/gapgattserver.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/gatt.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_BLE_CORE/inc/gatt.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/hci.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_BLE_CORE/inc/hci.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Include/osal_snv.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/osal/src/inc/osal_snv.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>PROFILES/central.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/profiles/roles/cc26xx/central.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>PROFILES/central.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/profiles/roles/cc26xx/central.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Startup/board.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/target/board.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Startup/ccfg_app_ble.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>PARENT-1-ORG_PROJ_DIR/config/ccfg_app_ble.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Startup/main.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/examples/simple_central/cc26xx/app/main.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>TOOLS/app_ble.cfg</name>
|
||||
<type>1</type>
|
||||
<locationURI>PARENT-2-ORG_PROJ_DIR/ccs/config/app_ble.cfg</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>TOOLS/cc26xx_app.cmd</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/ccs/cc26xx_app.cmd</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>TOOLS/ccs_compiler_defines.bcfg</name>
|
||||
<type>1</type>
|
||||
<locationURI>PARENT-2-ORG_PROJ_DIR/ccs/config/ccs_compiler_defines.bcfg</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>TOOLS/ccs_linker_defines.cmd</name>
|
||||
<type>1</type>
|
||||
<locationURI>PARENT-2-ORG_PROJ_DIR/ccs/config/ccs_linker_defines.cmd</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display/Display.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/mw/display/Display.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display/DisplayDogm1286.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/mw/display/DisplayDogm1286.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display/DisplayDogm1286.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/mw/display/DisplayDogm1286.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display/DisplayUART.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/mw/display/DisplayUART.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/Display/DisplayUART.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/mw/display/DisplayUART.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/ECC/ECCROMCC26XX.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/ecc/ECCROMCC26XX.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/ECC/ECCROMCC26XX.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_EX/common/cc26xx/ecc/ECCROMCC26XX.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/PIN/PIN.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/PIN.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/PIN/PINCC26XX.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/pin/PINCC26XX.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/PIN/PINCC26XX.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/pin/PINCC26XX.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/RF/RF.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/rf/RF.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/RF/RFCC26XX_singleMode.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/rf/RFCC26XX_singleMode.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/SPI/SPI.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/SPI.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/SPI/SPI.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/SPI.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/SPI/SPICC26XXDMA.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/spi/SPICC26XXDMA.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/SPI/SPICC26XXDMA.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/spi/SPICC26XXDMA.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/TRNG/TRNGCC26XX.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/hal/src/target/_common/TRNGCC26XX.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/TRNG/TRNGCC26XX.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>SRC_COMMON/hal/src/target/_common/TRNGCC26XX.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UART/UART.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/UART.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UART/UART.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/UART.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UART/UARTCC26XX.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/uart/UARTCC26XX.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UART/UARTCC26XX.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/uart/UARTCC26XX.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UDMA/UDMACC26XX.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/dma/UDMACC26XX.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>Drivers/UDMA/UDMACC26XX.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>TI_RTOS_DRIVERS_BASE/ti/drivers/dma/UDMACC26XX.h</locationURI>
|
||||
</link>
|
||||
</linkedResources>
|
||||
<variableList>
|
||||
<variable>
|
||||
<name>CC26XXWARE</name>
|
||||
<value>file:/C:/ti/tirtos_cc13xx_cc26xx_2_21_01_08/products/cc26xxware_2_24_03_17272</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>ORG_PROJ_DIR</name>
|
||||
<value>$%7BPARENT-2-PROJECT_LOC%7D/iar/stack</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>ROM</name>
|
||||
<value>$%7BPARENT-5-ORG_PROJ_DIR%7D/src/rom</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>SRC_BLE_CORE</name>
|
||||
<value>$%7BPARENT-5-ORG_PROJ_DIR%7D/src</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>SRC_COMMON</name>
|
||||
<value>$%7BPARENT-5-ORG_PROJ_DIR%7D/src/components</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>SRC_EX</name>
|
||||
<value>$%7BPARENT-5-ORG_PROJ_DIR%7D/src</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>TI_RTOS_DRIVERS_BASE</name>
|
||||
<value>file:/C:/ti/tirtos_cc13xx_cc26xx_2_21_01_08/products/tidrivers_cc13xx_cc26xx_2_21_01_01/packages</value>
|
||||
</variable>
|
||||
<variable>
|
||||
<name>TOOLS_BLE</name>
|
||||
<value>$%7BPARENT-5-ORG_PROJ_DIR%7D/tools</value>
|
||||
</variable>
|
||||
</variableList>
|
||||
</projectDescription>
|
||||
|
||||
+2
-2
@@ -9,6 +9,6 @@
|
||||
<linkerCommandFile value="cc26x0f128.cmd"/>
|
||||
<rts value="libc.a"/>
|
||||
<createSlaveProjects value=""/>
|
||||
<connection value="common/targetdb/connections/TIXDS100v3_Dot7_Connection.xml"/>
|
||||
<isTargetManual value="false"/>
|
||||
<connection value="common/targetdb/connections/TIXDS110_Connection.xml"/>
|
||||
<isTargetManual value="true"/>
|
||||
</projectOptions>
|
||||
|
||||
+1
-1
@@ -9,6 +9,6 @@
|
||||
<linkerCommandFile value="cc26x0f128.cmd"/>
|
||||
<rts value="libc.a"/>
|
||||
<createSlaveProjects value=""/>
|
||||
<connection value="common/targetdb/connections/TIXDS100v3_Dot7_Connection.xml"/>
|
||||
<connection value="common/targetdb/connections/TIXDS110_Connection.xml"/>
|
||||
<isTargetManual value="false"/>
|
||||
</projectOptions>
|
||||
|
||||
+271
-129
@@ -18,140 +18,282 @@
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactExtension="out" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" errorParsers="org.eclipse.rtsc.xdctools.parsers.ErrorParser;com.ti.rtsc.XDCtools.parsers.ErrorParser;com.ti.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser;org.eclipse.cdt.core.GmakeErrorParser" id="com.ti.ccstudio.buildDefinitions.TMS470.Default.67178137" name="FlashROM" parent="com.ti.ccstudio.buildDefinitions.TMS470.Default" postbuildStep="${CG_TOOL_HEX} -order MS --memwidth=8 --romwidth=8 --intel -o ${ProjName}.hex ${ProjName}.out" prebuildStep="">
|
||||
<folderInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Default.67178137." name="/" resourcePath="">
|
||||
<toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain.630386091" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.79296890">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.548534114" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=Cortex M.CC2650F128"/>
|
||||
<listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>
|
||||
<listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
|
||||
<listOptionValue builtIn="false" value="XDC_VERSION=3.32.2.25_core"/>
|
||||
<listOptionValue builtIn="false" value="INACTIVE_REPOS="/>
|
||||
<listOptionValue builtIn="false" value="EXPANDED_REPOS="/>
|
||||
<listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.rtsc.TIRTOSCC13XX_CC26XX:2.21.01.08;"/>
|
||||
<listOptionValue builtIn="false" value="LINKER_COMMAND_FILE="/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
|
||||
<listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.5.0"/>
|
||||
<listOptionValue builtIn="false" value="LINK_ORDER=TOOLS/ccs_linker_defines.cmd;TOOLS/cc26xx_app.cmd;"/>
|
||||
<listOptionValue builtIn="false" value="RTSC_MBS_VERSION=2.2.0"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.47584557" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="18.1.4.LTS" valueType="string"/>
|
||||
<targetPlatform id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug.1062983983" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug"/>
|
||||
<builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug.1700118337" keepEnvironmentInBuildfile="false" name="GNU Make" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug"/>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug.2136445879" name="ARM Compiler" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.1442029135" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.7M3" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.1227543067" name="Designate code state, 16-bit (thumb) or 32-bit (--code_state)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.16" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.983343098" name="Application binary interface. (--abi)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.eabi" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN.915765448" name="Little endian code [See 'General' page to edit] (--little_endian, -me)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.2028717074" name="Optimization level (--opt_level, -O)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.4" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.1765791493" name="Speed vs. size trade-offs (--opt_for_speed, -mf)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.0" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH.355253920" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
<listOptionValue builtIn="false" value="C:\ti\simplelink\ble_sdk_2_02_02_25\src\examples\simple_peripheral\cc26xx\app\headstage"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/examples/simple_peripheral/cc26xx/app"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/icall/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/roles/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/roles"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/dev_info"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/simple_profile/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/simple_profile"/>
|
||||
<toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain.508772074"
|
||||
name="TI Build Tools"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain"
|
||||
targetTool="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.253004641">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.307496426"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=Cortex M.CC2650F128"/>
|
||||
<listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>
|
||||
<listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
|
||||
<listOptionValue builtIn="false" value="XDC_VERSION=3.32.2.25_core"/>
|
||||
<listOptionValue builtIn="false" value="INACTIVE_REPOS="/>
|
||||
<listOptionValue builtIn="false" value="EXPANDED_REPOS="/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="RTSC_PRODUCTS=com.ti.rtsc.TIRTOSCC13XX_CC26XX:2.21.01.08;"/>
|
||||
<listOptionValue builtIn="false" value="LINKER_COMMAND_FILE="/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
|
||||
<listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.5.0"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="LINK_ORDER=TOOLS/ccs_linker_defines.cmd;TOOLS/cc26xx_app.cmd;"/>
|
||||
<listOptionValue builtIn="false" value="RTSC_MBS_VERSION=2.2.0"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1440951273"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION"
|
||||
value="18.1.5.LTS" valueType="string"/>
|
||||
<targetPlatform
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug.1602976043"
|
||||
name="Platform"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug"/>
|
||||
<builder buildPath="${BuildDirectory}"
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug.1636245865"
|
||||
name="GNU Make.FlashROM" parallelBuildOn="true" parallelizationNumber="optimal"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug"/>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug.970988650"
|
||||
name="ARM Compiler"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.1857210705"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.7M3"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.714636443"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.16"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.261228559"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.eabi"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN.1228981473"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN"
|
||||
value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.605071558"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.4"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.108821138"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.0"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH.957532787"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH"
|
||||
valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="C:\ti\simplelink\ble_sdk_2_02_02_25\src\examples\simple_peripheral\cc26xx\app\headstage"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${SRC_EX}/examples/simple_peripheral/cc26xx/app"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/icall/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/roles/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/roles"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/dev_info"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/simple_profile/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/simple_profile"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/common/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/heapmgr"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/controller/cc26xx/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/target/_common"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/target"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/target/_common/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/osal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/sdata"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/saddr"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/icall/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/rom"/>
|
||||
<listOptionValue builtIn="false" value="${CC26XXWARE}"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE.45713043" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE" valueType="definedSymbols">
|
||||
<listOptionValue builtIn="false" value="BOARD_DISPLAY_EXCLUDE_UART"/>
|
||||
<listOptionValue builtIn="false" value="POWER_SAVING"/>
|
||||
<listOptionValue builtIn="false" value="BOOSTXL_CC2650MA"/>
|
||||
<listOptionValue builtIn="false" value="HEADSTAGE_MA_USE_SPI2"/>
|
||||
<listOptionValue builtIn="false" value="CC26XX"/>
|
||||
<listOptionValue builtIn="false" value="GAPROLE_TASK_STACK_SIZE=540"/>
|
||||
<listOptionValue builtIn="false" value="HEAPMGR_SIZE=0"/>
|
||||
<listOptionValue builtIn="false" value="ICALL_MAX_NUM_ENTITIES=6"/>
|
||||
<listOptionValue builtIn="false" value="ICALL_MAX_NUM_TASKS=3"/>
|
||||
<listOptionValue builtIn="false" value="USE_ICALL"/>
|
||||
<listOptionValue builtIn="false" value="xBOARD_DISPLAY_EXCLUDE_LCD"/>
|
||||
<listOptionValue builtIn="false" value="xDisplay_DISABLE_ALL"/>
|
||||
<listOptionValue builtIn="false" value="xdc_runtime_Assert_DISABLE_ALL"/>
|
||||
<listOptionValue builtIn="false" value="xdc_runtime_Log_DISABLE_ALL"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL.188887433" name="Debugging model" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL.SYMDEBUG__DWARF" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.709859007" name="C Dialect" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.C99" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GCC.1303283836" name="Enable support for GCC extensions (DEPRECATED) (--gcc)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GCC" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS.880614544" name="Suppress diagnostic <id> (--diag_suppress, -pds)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="48"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING.787930495" name="Treat diagnostic <id> as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="225"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.2110497797" name="Wrap diagnostic messages (--diag_wrap)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.off" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER.1508735855" name="Emit diagnostic identifier numbers (--display_error_number, -pden)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS.1406670754" name="Place each function in a separate subsection (--gen_func_subsections, -ms)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS.on" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE.1230809079" name="Read options from specified file (--cmd_file, -@)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/config/build_components.opt"/>
|
||||
<listOptionValue builtIn="false" value="${ORG_PROJ_DIR}/build_config.opt"/>
|
||||
<listOptionValue builtIn="false" value="${ORG_PROJ_DIR}/../../ccs/config/ccs_compiler_defines.bcfg"/>
|
||||
</option>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS.497243650" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS.1364217553" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS.39449259" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS.1178170160" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.79296890" name="ARM Linker" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE.891763345" name="Set C system stack size (--stack_size, -stack)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE" value="256" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE.314304138" name="Heap size for C/C++ dynamic memory allocation (--heap_size, -heap)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE" value="0" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE.338495855" name="Link information (map) listed into <file> (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE" value=""${ProjName}.map"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE.1060277100" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE" value="${ProjName}.out" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY.875035059" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY" valueType="libs">
|
||||
<listOptionValue builtIn="false" value="libc.a"/>
|
||||
<listOptionValue builtIn="false" value="${CC26XXWARE}/driverlib/bin/ccs/driverlib.lib"/>
|
||||
<listOptionValue builtIn="false" value="${ROM}/common_rom_releases/03282014/common_rom.symbols"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH.1276978340" name="Add <dir> to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH" valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/lib"/>
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS.336823753" name="Suppress diagnostic <id> (--diag_suppress)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="10247-D"/>
|
||||
<listOptionValue builtIn="false" value="16002-D"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.1219370365" name="Wrap diagnostic messages (--diag_wrap)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.off" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER.703721803" name="Emit diagnostic identifier numbers (--display_error_number)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO.1258348097" name="Detailed link information data-base into <file> (--xml_link_info, -xml_link_info)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO" value=""${ProjName}_linkInfo.xml"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.1063255995" name="Aggressively reduce size of the DWARF information (--compress_dwarf)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.on" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.1912195294" name="Eliminate sections not needed in the executable (--unused_section_elimination)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.on" valueType="enumerated"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS.464172264" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS.1422737841" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS.194007756" name="Generated Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.148133664" name="ARM Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH.1747210980" name="Specify rom width (--romwidth, -romwidth=width)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH" value="8" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH.2120609162" name="Specify memory width (--memwidth, -memwidth=width)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH" value="8" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.147492991" name="Output format" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.INTEL" valueType="enumerated"/>
|
||||
</tool>
|
||||
<tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.2115491595" name="XDCtools" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool">
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH.1165924088" name="Package repositories (--xdcpath)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${COM_TI_RTSC_TIRTOSCC13XX_CC26XX_REPOS}"/>
|
||||
<listOptionValue builtIn="false" value="${TARGET_CONTENT_BASE}"/>
|
||||
</option>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET.231881756" name="Target (-t)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET" value="ti.targets.arm.elf.M3" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.819491801" name="Platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM" value="ti.platforms.simplelink:CC2640F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW.2074274477" name="Platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW" value="ti.platforms.simplelink:CC2640F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.235985274" name="Build-profile (-r)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE" value="release" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.173132565" name="Compiler tools directory (-c)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR" value="${CG_TOOL_ROOT}" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS.582390411" name="Additional compiler options (--compileOptions)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS" value=""${COMPILER_FLAGS}"" valueType="string"/>
|
||||
</tool>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${SRC_COMMON}/hal/src/target/_common/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/osal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/sdata"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/saddr"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/icall/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/rom"/>
|
||||
<listOptionValue builtIn="false" value="${CC26XXWARE}"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE.1105424988"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE"
|
||||
valueType="definedSymbols">
|
||||
<listOptionValue builtIn="false" value="BOARD_DISPLAY_EXCLUDE_UART"/>
|
||||
<listOptionValue builtIn="false" value="HEADSTAGE_NOTIFY_USE_ATT"/>
|
||||
<listOptionValue builtIn="false" value="HEADSTAGE_MA_USE_ADC"/>
|
||||
<listOptionValue builtIn="false" value="HEADSTAGE_RECORD_BATTERY"/>
|
||||
<listOptionValue builtIn="false" value="HEADSTAGE_CIS_VOLT_H"/>
|
||||
<listOptionValue builtIn="false" value="POWER_SAVING"/>
|
||||
<listOptionValue builtIn="false" value="BOOSTXL_CC2650MA"/>
|
||||
<listOptionValue builtIn="false" value="HEADSTAGE_MA_USE_SPI2"/>
|
||||
<listOptionValue builtIn="false" value="CC26XX"/>
|
||||
<listOptionValue builtIn="false" value="GAPROLE_TASK_STACK_SIZE=540"/>
|
||||
<listOptionValue builtIn="false" value="HEAPMGR_SIZE=0"/>
|
||||
<listOptionValue builtIn="false" value="ICALL_MAX_NUM_ENTITIES=6"/>
|
||||
<listOptionValue builtIn="false" value="ICALL_MAX_NUM_TASKS=3"/>
|
||||
<listOptionValue builtIn="false" value="USE_ICALL"/>
|
||||
<listOptionValue builtIn="false" value="xBOARD_DISPLAY_EXCLUDE_LCD"/>
|
||||
<listOptionValue builtIn="false" value="xDisplay_DISABLE_ALL"/>
|
||||
<listOptionValue builtIn="false" value="xdc_runtime_Assert_DISABLE_ALL"/>
|
||||
<listOptionValue builtIn="false" value="xdc_runtime_Log_DISABLE_ALL"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL.1032444705"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL.SYMDEBUG__DWARF"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.1070661718"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.C99"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GCC.476728347"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GCC"
|
||||
value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS.1028582292"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="48"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING.1576358748"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="225"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.839364861"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.off"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER.1520544614"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER"
|
||||
value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS.632756283"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS.on"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE.1953982293"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/config/build_components.opt"/>
|
||||
<listOptionValue builtIn="false" value="${ORG_PROJ_DIR}/build_config.opt"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${ORG_PROJ_DIR}/../../ccs/config/ccs_compiler_defines.bcfg"/>
|
||||
</option>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS.311618182"
|
||||
name="C Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS.1172126406"
|
||||
name="C++ Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS.1875232524"
|
||||
name="Assembly Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS.1021129889"
|
||||
name="Assembly Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.253004641"
|
||||
name="ARM Linker"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE.163894365"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE"
|
||||
value="256" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE.446557062"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE"
|
||||
value="0" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE.1183163963"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE"
|
||||
value=""${ProjName}.map"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE.1489194034"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE"
|
||||
value="${ProjName}.out" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY.83785030"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY"
|
||||
valueType="libs">
|
||||
<listOptionValue builtIn="false" value="libc.a"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${CC26XXWARE}/driverlib/bin/ccs/driverlib.lib"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${ROM}/common_rom_releases/03282014/common_rom.symbols"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH.531184787"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH"
|
||||
valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/lib"/>
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS.1981415630"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="10247-D"/>
|
||||
<listOptionValue builtIn="false" value="16002-D"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.649902168"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.off"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER.1729779528"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER"
|
||||
value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO.1878611611"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO"
|
||||
value=""${ProjName}_linkInfo.xml"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.202293784"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.on"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.320082858"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.on"
|
||||
valueType="enumerated"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS.1085231487"
|
||||
name="Linker Command Files"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS.1108737317"
|
||||
name="Linker Command Files"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS.75789309"
|
||||
name="Generated Linker Command Files"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.1993143283"
|
||||
name="ARM Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH.1082701845"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH" value="8"
|
||||
valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH.1869306517"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH" value="8"
|
||||
valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.823229474"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.INTEL"
|
||||
valueType="enumerated"/>
|
||||
</tool>
|
||||
<tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.91063780" name="XDCtools"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool">
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH.1479641733"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${COM_TI_RTSC_TIRTOSCC13XX_CC26XX_REPOS}"/>
|
||||
<listOptionValue builtIn="false" value="${TARGET_CONTENT_BASE}"/>
|
||||
</option>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET.141072820"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET"
|
||||
value="ti.targets.arm.elf.M3" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.29309402"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM"
|
||||
value="ti.platforms.simplelink:CC2640F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW.655405343"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW"
|
||||
value="ti.platforms.simplelink:CC2640F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.2098255943"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE"
|
||||
value="release" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.1106331477"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR"
|
||||
value="${CG_TOOL_ROOT}" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS.803098937"
|
||||
superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS"
|
||||
value=""${COMPILER_FLAGS}"" valueType="string"/>
|
||||
</tool>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
<sourceEntries>
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
/FlashROM__opt_for_speed__0/
|
||||
/FlashROM__opt_for_speed__1/
|
||||
/FlashROM__opt_for_speed__2/
|
||||
/FlashROM__opt_for_speed__3/
|
||||
/FlashROM__opt_for_speed__4/
|
||||
/FlashROM__opt_for_speed__5/
|
||||
+1
-1
@@ -12,7 +12,7 @@
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_TARGET_CONFIG" value="${target_config_active_default:simple_peripheral_cc2650em_app}"/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.MRU_PROGRAM.C:\ti\simplelink\ble_sdk_2_02_02_25\examples\cc2650em\simple_peripheral\ccs\app\targetConfigs\CC2650F128.ccxml.Texas Instruments XDS100v3 USB Debug Probe_0/Cortex_M3_0" value="C:/ti\simplelink\ble_sdk_2_02_02_25\examples\cc2650em\simple_peripheral\ccs\app\FlashROM\simple_peripheral_cc2650em_app.out"/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.MRU_PROGRAM.C:\ti\simplelink\ble_sdk_2_02_02_25\examples\cc2650em\simple_peripheral\ccs\app\targetConfigs\CC2650F128.ccxml.Texas Instruments XDS110 USB Debug Probe/Cortex_M3_0" value="C:/ti\simplelink\ble_sdk_2_02_02_25\examples\cc2650em\simple_peripheral\ccs\app\FlashROM\simple_peripheral_cc2650em_app.out"/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.MRU_PROGRAM.C:\ti\simplelink\ble_sdk_2_02_02_25\examples\cc2650em\simple_peripheral\ccs\app\targetConfigs\CC2650F128.ccxml.Texas Instruments XDS110 USB Debug Probe_0/Cortex_M3_0" value="C:/ti\ccsv8\ccs_base\emulation\gel\images\cc26xx\cc26x0_rtos_rom_syms.out"/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.MRU_PROGRAM.C:\ti\simplelink\ble_sdk_2_02_02_25\examples\cc2650em\simple_peripheral\ccs\app\targetConfigs\CC2650F128.ccxml.Texas Instruments XDS110 USB Debug Probe_0/Cortex_M3_0" value="C:/ti\simplelink\ble_sdk_2_02_02_25\examples\cc2650em\simple_peripheral\ccs\app\FlashROM\simple_peripheral_cc2650em_app.out"/>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||
<listEntry value="/simple_peripheral_cc2650em_app"/>
|
||||
</listAttribute>
|
||||
|
||||
+186
@@ -29,4 +29,190 @@ encoding//FlashROM/TOOLS/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/TOOLS/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/makefile=UTF-8
|
||||
encoding//FlashROM/objects.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Application/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Application/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/Display/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/Display/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/ECC/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/ECC/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/PIN/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/PIN/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/RF/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/RF/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/SPI/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/SPI/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/TRNG/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/TRNG/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/UART/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/UART/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/UDMA/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Drivers/UDMA/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/ICall/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/ICall/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/ICallBLE/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/ICallBLE/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/PROFILES/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/PROFILES/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Startup/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/Startup/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/TOOLS/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/TOOLS/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/makefile=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/objects.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__0/sources.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Application/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Application/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/Display/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/Display/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/ECC/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/ECC/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/PIN/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/PIN/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/RF/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/RF/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/SPI/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/SPI/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/TRNG/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/TRNG/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/UART/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/UART/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/UDMA/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Drivers/UDMA/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/ICall/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/ICall/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/ICallBLE/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/ICallBLE/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/PROFILES/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/PROFILES/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Startup/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/Startup/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/TOOLS/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/TOOLS/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/makefile=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/objects.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__1/sources.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Application/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Application/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/Display/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/Display/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/ECC/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/ECC/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/PIN/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/PIN/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/RF/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/RF/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/SPI/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/SPI/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/TRNG/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/TRNG/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/UART/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/UART/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/UDMA/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Drivers/UDMA/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/ICall/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/ICall/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/ICallBLE/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/ICallBLE/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/PROFILES/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/PROFILES/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Startup/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/Startup/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/TOOLS/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/TOOLS/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/makefile=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/objects.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__2/sources.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Application/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Application/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/Display/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/Display/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/ECC/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/ECC/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/PIN/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/PIN/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/RF/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/RF/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/SPI/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/SPI/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/TRNG/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/TRNG/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/UART/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/UART/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/UDMA/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Drivers/UDMA/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/ICall/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/ICall/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/ICallBLE/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/ICallBLE/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/PROFILES/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/PROFILES/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Startup/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/Startup/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/TOOLS/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/TOOLS/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/makefile=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/objects.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__3/sources.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Application/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Application/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/Display/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/Display/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/ECC/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/ECC/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/PIN/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/PIN/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/RF/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/RF/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/SPI/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/SPI/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/TRNG/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/TRNG/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/UART/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/UART/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/UDMA/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Drivers/UDMA/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/ICall/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/ICall/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/ICallBLE/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/ICallBLE/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/PROFILES/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/PROFILES/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Startup/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/Startup/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/TOOLS/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/TOOLS/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/makefile=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/objects.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__4/sources.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Application/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Application/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/Display/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/Display/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/ECC/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/ECC/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/PIN/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/PIN/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/RF/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/RF/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/SPI/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/SPI/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/TRNG/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/TRNG/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/UART/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/UART/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/UDMA/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Drivers/UDMA/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/ICall/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/ICall/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/ICallBLE/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/ICallBLE/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/PROFILES/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/PROFILES/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Startup/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/Startup/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/TOOLS/subdir_rules.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/TOOLS/subdir_vars.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/makefile=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/objects.mk=UTF-8
|
||||
encoding//FlashROM/optimizerAssistant/opt_for_speed__5/sources.mk=UTF-8
|
||||
encoding//FlashROM/sources.mk=UTF-8
|
||||
|
||||
+20
-14
@@ -1,19 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<configurations XML_version="1.2" id="configurations_0">
|
||||
<configuration XML_version="1.2" id="Texas Instruments XDS100v3 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" desc="Texas Instruments XDS100v3 USB Debug Probe_0" href="connections/TIXDS100v3_Dot7_Connection.xml" id="Texas Instruments XDS100v3 USB Debug Probe_0" xml="TIXDS100v3_Dot7_Connection.xml" xmlpath="connections"/>
|
||||
<connection XML_version="1.2" id="Texas Instruments XDS100v3 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cs_dap.xml" id="drivers" xml="tixds100v2cs_dap.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cortexM.xml" id="drivers" xml="tixds100v2cortexM.xml" xmlpath="drivers"/>
|
||||
<property Type="choicelist" Value="2" id="The Converter Usage">
|
||||
<choice Name="Generate 1149.7 2-pin advanced modes" value="enable">
|
||||
<property Type="choicelist" Value="1" id="The Converter 1149.7 Frequency">
|
||||
<choice Name="Overclock with user specified value" value="unused">
|
||||
<property Type="choicelist" Value="5" id="-- Choose a value from 1.0MHz to 50.0MHz"/>
|
||||
</choice>
|
||||
</property>
|
||||
<property Type="choicelist" Value="5" id="The Target Scan Format"/>
|
||||
<configuration XML_version="1.2" id="Texas Instruments XDS110 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" desc="Texas Instruments XDS110 USB Debug Probe_0" href="connections/TIXDS110_Connection.xml" id="Texas Instruments XDS110 USB Debug Probe_0" xml="TIXDS110_Connection.xml" xmlpath="connections"/>
|
||||
<connection XML_version="1.2" id="Texas Instruments XDS110 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" href="drivers/tixds510icepick_c.xml" id="drivers" xml="tixds510icepick_c.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds510cs_dap.xml" id="drivers" xml="tixds510cs_dap.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds510cortexM.xml" id="drivers" xml="tixds510cortexM.xml" xmlpath="drivers"/>
|
||||
<property Type="choicelist" Value="1" id="Power Selection">
|
||||
<choice Name="Probe supplied power" value="1">
|
||||
<property Type="stringfield" Value="3.3" id="Voltage Level"/>
|
||||
</choice>
|
||||
</property>
|
||||
<property Type="choicelist" Value="0" id="JTAG Signal Isolation"/>
|
||||
<property Type="choicelist" Value="4" id="SWD Mode Settings">
|
||||
<choice Name="cJTAG (1149.7) 2-pin advanced modes" value="enable">
|
||||
<property Type="choicelist" Value="1" id="XDS110 Aux Port"/>
|
||||
</choice>
|
||||
</property>
|
||||
<property Type="choicelist" Value="1" id="Debug Probe Selection">
|
||||
<choice Name="Select by serial number" value="0">
|
||||
<property Type="stringfield" Value="L1000537" id="-- Enter the serial number"/>
|
||||
</choice>
|
||||
</property>
|
||||
<platform XML_version="1.2" id="platform_0">
|
||||
|
||||
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
+4
-4
@@ -16,11 +16,11 @@ BIOS_INC = -I"C:/ti/tirtos_cc13xx_cc26xx_2_21_01_08/products/bios_6_46_01_38/pa
|
||||
|
||||
TARGET_INC = -I"C:/ti/tirtos_cc13xx_cc26xx_2_21_01_08/products/bios_6_46_01_38/packages/"
|
||||
|
||||
INCS = $(BIOS_INC) $(TARGET_INC) --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.4.LTS/include" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/icall/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/profiles/roles/cc26xx" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/profiles/roles" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/profiles/dev_info" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/profiles/simple_profile/cc26xx" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/profiles/simple_profile" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/common/cc26xx" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/heapmgr" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/controller/cc26xx/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/hal/src/target/_common" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/target" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/hal/src/target/_common/cc26xx" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/hal/src/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/osal/src/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/services/src/sdata" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/services/src/saddr" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/icall/src/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/rom" --include_path="C:/ti/tirtos_cc13xx_cc26xx_2_21_01_08/products/cc26xxware_2_24_03_17272" -IC:/ti/tirtos_cc13xx_cc26xx_2_21_01_08/products/bios_6_46_01_38/packages/
|
||||
INCS = $(BIOS_INC) $(TARGET_INC) --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.5.LTS/include" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/icall/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/profiles/roles/cc26xx" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/profiles/roles" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/profiles/dev_info" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/profiles/simple_profile/cc26xx" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/profiles/simple_profile" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/common/cc26xx" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/heapmgr" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/controller/cc26xx/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/hal/src/target/_common" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/target" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/hal/src/target/_common/cc26xx" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/hal/src/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/osal/src/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/services/src/sdata" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/services/src/saddr" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/components/icall/src/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/inc" --include_path="C:/ti/simplelink/ble_sdk_2_02_02_25/src/rom" --include_path="C:/ti/tirtos_cc13xx_cc26xx_2_21_01_08/products/cc26xxware_2_24_03_17272" -IC:/ti/tirtos_cc13xx_cc26xx_2_21_01_08/products/bios_6_46_01_38/packages/
|
||||
|
||||
CC = C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.4.LTS/bin/armcl -c $(CCOPTS) -I C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.4.LTS/include
|
||||
ASM = C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.4.LTS/bin/armcl -c $(CCOPTS) -I C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.4.LTS/include
|
||||
AR = C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.4.LTS/bin/armar rq
|
||||
CC = C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.5.LTS/bin/armcl -c $(CCOPTS) -I C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.5.LTS/include
|
||||
ASM = C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.5.LTS/bin/armcl -c $(CCOPTS) -I C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.5.LTS/include
|
||||
AR = C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.5.LTS/bin/armar rq
|
||||
|
||||
DEL = C:/ti/xdctools_3_32_02_25_core/packages/../bin/rm -f
|
||||
CP = C:/ti/xdctools_3_32_02_25_core/packages/../bin/cp -f
|
||||
|
||||
BIN
Binary file not shown.
BIN
Binary file not shown.
+1
-1
@@ -9,6 +9,6 @@
|
||||
<linkerCommandFile value="cc26x0f128.cmd"/>
|
||||
<rts value="libc.a"/>
|
||||
<createSlaveProjects value=""/>
|
||||
<connection value="common/targetdb/connections/TIXDS100v3_Dot7_Connection.xml"/>
|
||||
<connection value="common/targetdb/connections/TIXDS110_Connection.xml"/>
|
||||
<isTargetManual value="false"/>
|
||||
</projectOptions>
|
||||
|
||||
+236
-120
@@ -14,130 +14,246 @@
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactExtension="out" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" id="com.ti.ccstudio.buildDefinitions.TMS470.Default.1209999684" name="FlashROM" parent="com.ti.ccstudio.buildDefinitions.TMS470.Default" postannouncebuildStep="" postbuildStep="${CG_TOOL_HEX} -order MS --memwidth=8 --romwidth=8 --intel -o ${ProjName}.hex ${ProjName}.out;${TOOLS_BLE}/frontier/frontier.exe ccs ${PROJECT_LOC}/${ConfigName}/${ProjName}_linkInfo.xml ${ORG_PROJ_DIR}/../../ccs/config/ccs_compiler_defines.bcfg ${ORG_PROJ_DIR}/../../ccs/config/ccs_linker_defines.cmd" preannouncebuildStep="" prebuildStep=""${TOOLS_BLE}/lib_search/lib_search.exe" ${ORG_PROJ_DIR}/build_config.opt "${TOOLS_BLE}/lib_search/params_split_cc2640.xml" ${SRC_BLE_CORE}/../blelib "${ORG_PROJ_DIR}/../../ccs/config/lib_linker.cmd"">
|
||||
<folderInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Default.1209999684." name="/" resourcePath="">
|
||||
<toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain.929750171" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.1008890994">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.1479696404" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=Cortex M.CC2650F128"/>
|
||||
<listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>
|
||||
<listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
|
||||
<listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.5.0"/>
|
||||
<listOptionValue builtIn="false" value="LINK_ORDER=TOOLS/ccs_linker_defines.cmd;TOOLS/cc26xx_ble_stack.cmd;"/>
|
||||
<listOptionValue builtIn="false" value="LINKER_COMMAND_FILE="/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_TYPE=executable"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.201372544" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="18.1.4.LTS" valueType="string"/>
|
||||
<targetPlatform id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug.1951196199" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug"/>
|
||||
<builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug.20903631" keepEnvironmentInBuildfile="false" name="GNU Make" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug"/>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug.1176131016" name="ARM Compiler" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.647279085" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.7M3" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.1443871767" name="Designate code state, 16-bit (thumb) or 32-bit (--code_state)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.16" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.227818129" name="Application binary interface. (--abi)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.eabi" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN.784155377" name="Little endian code [See 'General' page to edit] (--little_endian, -me)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.494285153" name="Optimization level (--opt_level, -O)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.4" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.581550859" name="Speed vs. size trade-offs (--opt_for_speed, -mf)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.0" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH.1288777730" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/examples/simple_peripheral/cc26xx/stack"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/common/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/target/_common"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/target"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/target/_common/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/osal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/nv/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/nv"/>
|
||||
<folderInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Default.1209999684." name="/"
|
||||
resourcePath="">
|
||||
<toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain.1245523372"
|
||||
name="TI Build Tools"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain"
|
||||
targetTool="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.1451981696">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.905558853"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=Cortex M.CC2650F128"/>
|
||||
<listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>
|
||||
<listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
|
||||
<listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.5.0"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="LINK_ORDER=TOOLS/ccs_linker_defines.cmd;TOOLS/cc26xx_ble_stack.cmd;"/>
|
||||
<listOptionValue builtIn="false" value="LINKER_COMMAND_FILE="/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_TYPE=executable"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.690267428"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION"
|
||||
value="18.1.4.LTS" valueType="string"/>
|
||||
<targetPlatform
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug.703901656"
|
||||
name="Platform"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug"/>
|
||||
<builder buildPath="${BuildDirectory}"
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug.578715889"
|
||||
name="GNU Make.FlashROM" parallelBuildOn="true" parallelizationNumber="optimal"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug"/>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug.124004045"
|
||||
name="ARM Compiler"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.1471387206"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.7M3"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.1989883015"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.16"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.26908680"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.eabi"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN.161170469"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN"
|
||||
value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.202178130"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.4"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.477462079"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.0"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH.2135144875"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH"
|
||||
valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${SRC_EX}/examples/simple_peripheral/cc26xx/stack"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/common/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/target/_common"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/target"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${SRC_COMMON}/hal/src/target/_common/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/hal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/osal/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/nv/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/nv"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/saddr"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/icall/src/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/rom"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/controller/cc26xx/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/aes/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/npi/src"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/common/cc26xx/npi/stack"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/icall/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/roles"/>
|
||||
<listOptionValue builtIn="false" value="${CC26XXWARE}"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE.986125825" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE" valueType="definedSymbols">
|
||||
<listOptionValue builtIn="false" value="CC26XX"/>
|
||||
<listOptionValue builtIn="false" value="GATT_NO_CLIENT"/>
|
||||
<listOptionValue builtIn="false" value="HEADSTAGE_NOTIFY_USE_ATT"/>
|
||||
<listOptionValue builtIn="false" value="POWER_SAVING"/>
|
||||
<listOptionValue builtIn="false" value="CC26XXWARE"/>
|
||||
<listOptionValue builtIn="false" value="DATA="/>
|
||||
<listOptionValue builtIn="false" value="EXT_HAL_ASSERT"/>
|
||||
<listOptionValue builtIn="false" value="FLASH_ROM_BUILD"/>
|
||||
<listOptionValue builtIn="false" value="INCLUDE_AES_DECRYPT"/>
|
||||
<listOptionValue builtIn="false" value="NEAR_FUNC="/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/rom"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/controller/cc26xx/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/services/src/aes/cc26xx"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_COMMON}/npi/src"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/common/cc26xx/npi/stack"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/icall/inc"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/profiles/roles"/>
|
||||
<listOptionValue builtIn="false" value="${CC26XXWARE}"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE.1493730349"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE"
|
||||
valueType="definedSymbols">
|
||||
<listOptionValue builtIn="false" value="CC26XX"/>
|
||||
<listOptionValue builtIn="false" value="POWER_SAVING"/>
|
||||
<listOptionValue builtIn="false" value="GATT_NO_CLIENT"/>
|
||||
<listOptionValue builtIn="false" value="HEADSTAGE_NOTIFY_USE_ATT"/>
|
||||
<listOptionValue builtIn="false" value="CC26XXWARE"/>
|
||||
<listOptionValue builtIn="false" value="DATA="/>
|
||||
<listOptionValue builtIn="false" value="EXT_HAL_ASSERT"/>
|
||||
<listOptionValue builtIn="false" value="FLASH_ROM_BUILD"/>
|
||||
<listOptionValue builtIn="false" value="INCLUDE_AES_DECRYPT"/>
|
||||
<listOptionValue builtIn="false" value="NEAR_FUNC="/>
|
||||
<listOptionValue builtIn="false" value="OSAL_CBTIMER_NUM_TASKS=1"/>
|
||||
<listOptionValue builtIn="false" value="OSAL_SNV=1"/>
|
||||
<listOptionValue builtIn="false" value="USE_ICALL"/>
|
||||
<listOptionValue builtIn="false" value="xDEBUG"/>
|
||||
<listOptionValue builtIn="false" value="xDEBUG_ENC"/>
|
||||
<listOptionValue builtIn="false" value="xDEBUG_GPIO"/>
|
||||
<listOptionValue builtIn="false" value="xDEBUG_SW_TRACE"/>
|
||||
<listOptionValue builtIn="false" value="xPM_DISABLE_PWRDOWN"/>
|
||||
<listOptionValue builtIn="false" value="xTESTMODES"/>
|
||||
<listOptionValue builtIn="false" value="xTEST_BLEBOARD"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.372638078" name="C Dialect" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.C99" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS.201347726" name="Suppress diagnostic <id> (--diag_suppress, -pds)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="48"/>
|
||||
<listOptionValue builtIn="false" value="16004"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING.73314177" name="Treat diagnostic <id> as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="225"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.1126279750" name="Wrap diagnostic messages (--diag_wrap)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.off" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER.1492280006" name="Emit diagnostic identifier numbers (--display_error_number, -pden)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE.538453952" name="Read options from specified file (--cmd_file, -@)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/config/build_components.opt"/>
|
||||
<listOptionValue builtIn="false" value="${ORG_PROJ_DIR}/build_config.opt"/>
|
||||
</option>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS.313905687" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS.1129729173" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS.156783227" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS.538375181" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.1008890994" name="ARM Linker" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE.1873600405" name="Set C system stack size (--stack_size, -stack)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE" value="256" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE.1359172875" name="Heap size for C/C++ dynamic memory allocation (--heap_size, -heap)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE" value="0" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE.1355177509" name="Link information (map) listed into <file> (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE" value=""${ProjName}.map"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE.829303802" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE" value="${ProjName}.out" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY.1078356909" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY" valueType="libs">
|
||||
<listOptionValue builtIn="false" value="libc.a"/>
|
||||
<listOptionValue builtIn="false" value="${ORG_PROJ_DIR}/../../ccs/config/lib_linker.cmd"/>
|
||||
<listOptionValue builtIn="false" value="${ROM}/ble_rom_releases/04242014/ble_rom_patch.symbols"/>
|
||||
<listOptionValue builtIn="false" value="${CC26XXWARE}/driverlib/bin/ccs/driverlib.lib"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH.1707930214" name="Add <dir> to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH" valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/lib"/>
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS.59164041" name="Suppress diagnostic <id> (--diag_suppress)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="16002-D"/>
|
||||
<listOptionValue builtIn="false" value="10247-D"/>
|
||||
<listOptionValue builtIn="false" value="10325-D"/>
|
||||
<listOptionValue builtIn="false" value="10229-D"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.11567165" name="Wrap diagnostic messages (--diag_wrap)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.off" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER.1727810233" name="Emit diagnostic identifier numbers (--display_error_number)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO.1385277262" name="Detailed link information data-base into <file> (--xml_link_info, -xml_link_info)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO" value=""${ProjName}_linkInfo.xml"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.ENTRY_POINT.1153340314" name="Specify program entry point for the output module (--entry_point, -e)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.ENTRY_POINT" value="startup_entry" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.450995330" name="Aggressively reduce size of the DWARF information (--compress_dwarf)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.on" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.1827942626" name="Eliminate sections not needed in the executable (--unused_section_elimination)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.on" valueType="enumerated"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS.1279238428" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS.526125450" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS.581803256" name="Generated Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.947560992" name="ARM Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH.1295209583" name="Specify rom width (--romwidth, -romwidth=width)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH" value="8" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH.110293046" name="Specify memory width (--memwidth, -memwidth=width)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH" value="8" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.1122561921" name="Output format" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.INTEL" valueType="enumerated"/>
|
||||
</tool>
|
||||
</toolChain>
|
||||
<listOptionValue builtIn="false" value="OSAL_SNV=1"/>
|
||||
<listOptionValue builtIn="false" value="USE_ICALL"/>
|
||||
<listOptionValue builtIn="false" value="xDEBUG"/>
|
||||
<listOptionValue builtIn="false" value="xDEBUG_ENC"/>
|
||||
<listOptionValue builtIn="false" value="xDEBUG_GPIO"/>
|
||||
<listOptionValue builtIn="false" value="xDEBUG_SW_TRACE"/>
|
||||
<listOptionValue builtIn="false" value="xPM_DISABLE_PWRDOWN"/>
|
||||
<listOptionValue builtIn="false" value="xTESTMODES"/>
|
||||
<listOptionValue builtIn="false" value="xTEST_BLEBOARD"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.1032660795"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.C99"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS.1680463954"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="48"/>
|
||||
<listOptionValue builtIn="false" value="16004"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING.1766518960"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="225"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.1804087261"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.off"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER.733166450"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER"
|
||||
value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE.1033506009"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/config/build_components.opt"/>
|
||||
<listOptionValue builtIn="false" value="${ORG_PROJ_DIR}/build_config.opt"/>
|
||||
</option>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS.1352027396"
|
||||
name="C Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS.1465774058"
|
||||
name="C++ Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS.1739768713"
|
||||
name="Assembly Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS.79045750"
|
||||
name="Assembly Sources"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.1451981696"
|
||||
name="ARM Linker"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE.816733227"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE"
|
||||
value="256" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE.1515084002"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE"
|
||||
value="0" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE.1765940845"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE"
|
||||
value=""${ProjName}.map"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE.272429594"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE"
|
||||
value="${ProjName}.out" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY.2076163355"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY"
|
||||
valueType="libs">
|
||||
<listOptionValue builtIn="false" value="libc.a"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${ORG_PROJ_DIR}/../../ccs/config/lib_linker.cmd"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${ROM}/ble_rom_releases/04242014/ble_rom_patch.symbols"/>
|
||||
<listOptionValue builtIn="false"
|
||||
value="${CC26XXWARE}/driverlib/bin/ccs/driverlib.lib"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH.1967226591"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH"
|
||||
valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/lib"/>
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS.17239932"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS"
|
||||
valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="16002-D"/>
|
||||
<listOptionValue builtIn="false" value="10247-D"/>
|
||||
<listOptionValue builtIn="false" value="10325-D"/>
|
||||
<listOptionValue builtIn="false" value="10229-D"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.773340389"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.off"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER.2126747201"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER"
|
||||
value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO.1785926765"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO"
|
||||
value=""${ProjName}_linkInfo.xml"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.ENTRY_POINT.683577056"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.ENTRY_POINT"
|
||||
value="startup_entry" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.1312810581"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.on"
|
||||
valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.1324674660"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.on"
|
||||
valueType="enumerated"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS.1903606010"
|
||||
name="Linker Command Files"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS.872286488"
|
||||
name="Linker Command Files"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS"/>
|
||||
<inputType
|
||||
id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS.1603687860"
|
||||
name="Generated Linker Command Files"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.1441542763"
|
||||
name="ARM Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH.210948887"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH" value="8"
|
||||
valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH.514543379"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH" value="8"
|
||||
valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.2135898037"
|
||||
superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT"
|
||||
value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.INTEL"
|
||||
valueType="enumerated"/>
|
||||
</tool>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
<sourceEntries>
|
||||
<entry excluding="cc26x0f128.cmd" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
|
||||
|
||||
+15
-14
@@ -1,19 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<configurations XML_version="1.2" id="configurations_0">
|
||||
<configuration XML_version="1.2" id="Texas Instruments XDS100v3 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" desc="Texas Instruments XDS100v3 USB Debug Probe_0" href="connections/TIXDS100v3_Dot7_Connection.xml" id="Texas Instruments XDS100v3 USB Debug Probe_0" xml="TIXDS100v3_Dot7_Connection.xml" xmlpath="connections"/>
|
||||
<connection XML_version="1.2" id="Texas Instruments XDS100v3 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cs_dap.xml" id="drivers" xml="tixds100v2cs_dap.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cortexM.xml" id="drivers" xml="tixds100v2cortexM.xml" xmlpath="drivers"/>
|
||||
<property Type="choicelist" Value="2" id="The Converter Usage">
|
||||
<choice Name="Generate 1149.7 2-pin advanced modes" value="enable">
|
||||
<property Type="choicelist" Value="1" id="The Converter 1149.7 Frequency">
|
||||
<choice Name="Overclock with user specified value" value="unused">
|
||||
<property Type="choicelist" Value="5" id="-- Choose a value from 1.0MHz to 50.0MHz"/>
|
||||
</choice>
|
||||
</property>
|
||||
<property Type="choicelist" Value="5" id="The Target Scan Format"/>
|
||||
<configuration XML_version="1.2" id="Texas Instruments XDS110 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" desc="Texas Instruments XDS110 USB Debug Probe_0" href="connections/TIXDS110_Connection.xml" id="Texas Instruments XDS110 USB Debug Probe_0" xml="TIXDS110_Connection.xml" xmlpath="connections"/>
|
||||
<connection XML_version="1.2" id="Texas Instruments XDS110 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" href="drivers/tixds510icepick_c.xml" id="drivers" xml="tixds510icepick_c.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds510cs_dap.xml" id="drivers" xml="tixds510cs_dap.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds510cortexM.xml" id="drivers" xml="tixds510cortexM.xml" xmlpath="drivers"/>
|
||||
<property Type="choicelist" Value="1" id="Power Selection">
|
||||
<choice Name="Probe supplied power" value="1">
|
||||
<property Type="stringfield" Value="3.3" id="Voltage Level"/>
|
||||
</choice>
|
||||
</property>
|
||||
<property Type="choicelist" Value="0" id="JTAG Signal Isolation"/>
|
||||
<property Type="choicelist" Value="4" id="SWD Mode Settings">
|
||||
<choice Name="cJTAG (1149.7) 2-pin advanced modes" value="enable">
|
||||
<property Type="choicelist" Value="1" id="XDS110 Aux Port"/>
|
||||
</choice>
|
||||
</property>
|
||||
<platform XML_version="1.2" id="platform_0">
|
||||
|
||||
@@ -233,7 +233,7 @@ const SPICC26XXDMA_HWAttrsV1 spiCC26XXDMAHWAttrs[BOOSTXL_CC2650MA_SPICOUNT] = {
|
||||
.mosiPin = Board_SPI0_MOSI,
|
||||
.misoPin = Board_SPI0_MISO,
|
||||
.clkPin = Board_SPI0_CLK,
|
||||
.csnPin = Board_SPI0_CS
|
||||
.csnPin = Board_SPI0_CSN
|
||||
//
|
||||
},
|
||||
#ifdef HEADSTAGE_MA_USE_SPI2
|
||||
@@ -250,7 +250,7 @@ const SPICC26XXDMA_HWAttrsV1 spiCC26XXDMAHWAttrs[BOOSTXL_CC2650MA_SPICOUNT] = {
|
||||
.mosiPin = Board_SPI1_MOSI,
|
||||
.misoPin = Board_SPI1_MISO,
|
||||
.clkPin = Board_SPI1_CLK,
|
||||
.csnPin = Board_SPI1_CS //
|
||||
.csnPin = Board_SPI1_CSN //
|
||||
},
|
||||
#endif
|
||||
};
|
||||
@@ -594,3 +594,131 @@ const I2C_Config I2C_config[] = {
|
||||
/*
|
||||
* ============================= Watchdog end =====================================
|
||||
*/
|
||||
|
||||
/*
|
||||
* ================================ ADC begin ======================================
|
||||
*/
|
||||
#ifdef HEADSTAGE_RECORD_BATTERY
|
||||
|
||||
/* Place into subsections to allow the TI linker to remove items properly */
|
||||
#if defined(__TI_COMPILER_VERSION__)
|
||||
#pragma DATA_SECTION(ADC_config, ".const:ADC_config")
|
||||
#pragma DATA_SECTION(adcCC26xxHWAttrs, ".const:adcCC26xxHWAttrs")
|
||||
#endif
|
||||
|
||||
#include <ti/drivers/ADC.h>
|
||||
#include <ti/drivers/adc/ADCCC26XX.h>
|
||||
|
||||
/* ADC objects */
|
||||
ADCCC26XX_Object adcCC26xxObjects[BOOSTXL_CC2650MA_ADCCOUNT];
|
||||
|
||||
const ADCCC26XX_HWAttrs adcCC26xxHWAttrs[BOOSTXL_CC2650MA_ADCCOUNT] = {
|
||||
{
|
||||
.adcDIO = Board_DIO0_ANALOG,
|
||||
.adcCompBInput = ADC_COMPB_IN_AUXIO7,
|
||||
.refSource = ADCCC26XX_FIXED_REFERENCE,
|
||||
.samplingDuration = ADCCC26XX_SAMPLING_DURATION_2P7_US,
|
||||
.inputScalingEnabled = true,
|
||||
.triggerSource = ADCCC26XX_TRIGGER_MANUAL
|
||||
},
|
||||
{
|
||||
.adcDIO = Board_DIO1_ANALOG,
|
||||
.adcCompBInput = ADC_COMPB_IN_AUXIO6,
|
||||
.refSource = ADCCC26XX_FIXED_REFERENCE,
|
||||
.samplingDuration = ADCCC26XX_SAMPLING_DURATION_2P7_US,
|
||||
.inputScalingEnabled = true,
|
||||
.triggerSource = ADCCC26XX_TRIGGER_MANUAL
|
||||
},
|
||||
{
|
||||
.adcDIO = Board_DIO2_ANALOG,
|
||||
.adcCompBInput = ADC_COMPB_IN_AUXIO5,
|
||||
.refSource = ADCCC26XX_FIXED_REFERENCE,
|
||||
.samplingDuration = ADCCC26XX_SAMPLING_DURATION_2P7_US,
|
||||
.inputScalingEnabled = true,
|
||||
.triggerSource = ADCCC26XX_TRIGGER_MANUAL
|
||||
},
|
||||
{
|
||||
.adcDIO = Board_DIO3_ANALOG,
|
||||
.adcCompBInput = ADC_COMPB_IN_AUXIO4,
|
||||
.refSource = ADCCC26XX_FIXED_REFERENCE,
|
||||
.samplingDuration = ADCCC26XX_SAMPLING_DURATION_2P7_US,
|
||||
.inputScalingEnabled = true,
|
||||
.triggerSource = ADCCC26XX_TRIGGER_MANUAL
|
||||
},
|
||||
{
|
||||
.adcDIO = Board_DIO4_ANALOG,
|
||||
.adcCompBInput = ADC_COMPB_IN_AUXIO3,
|
||||
.refSource = ADCCC26XX_FIXED_REFERENCE,
|
||||
.samplingDuration = ADCCC26XX_SAMPLING_DURATION_2P7_US,
|
||||
.inputScalingEnabled = true,
|
||||
.triggerSource = ADCCC26XX_TRIGGER_MANUAL
|
||||
},
|
||||
{
|
||||
.adcDIO = Board_DIO5_ANALOG,
|
||||
.adcCompBInput = ADC_COMPB_IN_AUXIO2,
|
||||
.refSource = ADCCC26XX_FIXED_REFERENCE,
|
||||
.samplingDuration = ADCCC26XX_SAMPLING_DURATION_2P7_US,
|
||||
.inputScalingEnabled = true,
|
||||
.triggerSource = ADCCC26XX_TRIGGER_MANUAL
|
||||
},
|
||||
{
|
||||
.adcDIO = Board_DIO6_ANALOG,
|
||||
.adcCompBInput = ADC_COMPB_IN_AUXIO1,
|
||||
.refSource = ADCCC26XX_FIXED_REFERENCE,
|
||||
.samplingDuration = ADCCC26XX_SAMPLING_DURATION_2P7_US,
|
||||
.inputScalingEnabled = true,
|
||||
.triggerSource = ADCCC26XX_TRIGGER_MANUAL
|
||||
},
|
||||
{
|
||||
.adcDIO = Board_DIO7_ANALOG,
|
||||
.adcCompBInput = ADC_COMPB_IN_AUXIO0,
|
||||
.refSource = ADCCC26XX_FIXED_REFERENCE,
|
||||
.samplingDuration = ADCCC26XX_SAMPLING_DURATION_10P9_MS,
|
||||
.inputScalingEnabled = true,
|
||||
.triggerSource = ADCCC26XX_TRIGGER_MANUAL
|
||||
},
|
||||
{
|
||||
.adcDIO = PIN_UNASSIGNED,
|
||||
.adcCompBInput = ADC_COMPB_IN_DCOUPL,
|
||||
.refSource = ADCCC26XX_FIXED_REFERENCE,
|
||||
.samplingDuration = ADCCC26XX_SAMPLING_DURATION_2P7_US,
|
||||
.inputScalingEnabled = true,
|
||||
.triggerSource = ADCCC26XX_TRIGGER_MANUAL
|
||||
},
|
||||
{
|
||||
.adcDIO = PIN_UNASSIGNED,
|
||||
.adcCompBInput = ADC_COMPB_IN_VSS,
|
||||
.refSource = ADCCC26XX_FIXED_REFERENCE,
|
||||
.samplingDuration = ADCCC26XX_SAMPLING_DURATION_2P7_US,
|
||||
.inputScalingEnabled = true,
|
||||
.triggerSource = ADCCC26XX_TRIGGER_MANUAL
|
||||
},
|
||||
{
|
||||
.adcDIO = PIN_UNASSIGNED,
|
||||
.adcCompBInput = ADC_COMPB_IN_VDDS,
|
||||
.refSource = ADCCC26XX_FIXED_REFERENCE,
|
||||
.samplingDuration = ADCCC26XX_SAMPLING_DURATION_2P7_US,
|
||||
.inputScalingEnabled = true,
|
||||
.triggerSource = ADCCC26XX_TRIGGER_MANUAL
|
||||
}
|
||||
};
|
||||
|
||||
const ADC_Config ADC_config[] = {
|
||||
{&ADCCC26XX_fxnTable, &adcCC26xxObjects[0], &adcCC26xxHWAttrs[0]},
|
||||
{&ADCCC26XX_fxnTable, &adcCC26xxObjects[1], &adcCC26xxHWAttrs[1]},
|
||||
{&ADCCC26XX_fxnTable, &adcCC26xxObjects[2], &adcCC26xxHWAttrs[2]},
|
||||
{&ADCCC26XX_fxnTable, &adcCC26xxObjects[3], &adcCC26xxHWAttrs[3]},
|
||||
{&ADCCC26XX_fxnTable, &adcCC26xxObjects[4], &adcCC26xxHWAttrs[4]},
|
||||
{&ADCCC26XX_fxnTable, &adcCC26xxObjects[5], &adcCC26xxHWAttrs[5]},
|
||||
{&ADCCC26XX_fxnTable, &adcCC26xxObjects[6], &adcCC26xxHWAttrs[6]},
|
||||
{&ADCCC26XX_fxnTable, &adcCC26xxObjects[7], &adcCC26xxHWAttrs[7]},
|
||||
{&ADCCC26XX_fxnTable, &adcCC26xxObjects[8], &adcCC26xxHWAttrs[8]},
|
||||
{&ADCCC26XX_fxnTable, &adcCC26xxObjects[9], &adcCC26xxHWAttrs[9]},
|
||||
{&ADCCC26XX_fxnTable, &adcCC26xxObjects[10], &adcCC26xxHWAttrs[10]},
|
||||
{NULL, NULL, NULL},
|
||||
};
|
||||
|
||||
/*
|
||||
* ================================ ADC end ========================================
|
||||
*/
|
||||
#endif
|
||||
|
||||
@@ -51,6 +51,12 @@ extern "C" {
|
||||
#include <ti/drivers/PIN.h>
|
||||
#include <driverlib/ioc.h>
|
||||
|
||||
#define HEADSTAGE_UNI_2_0
|
||||
#ifdef HEADSTAGE_UNI_2_0
|
||||
#include "neu/headstage_pin.h"
|
||||
#else
|
||||
#include "uni/headstage_pin.h"
|
||||
#endif
|
||||
/** ============================================================================
|
||||
* Externs
|
||||
* ==========================================================================*/
|
||||
@@ -144,36 +150,36 @@ extern const PIN_Config BoardGpioInitTable[];
|
||||
#define Board_UART_TX Board_BP_UART_Rx /* RXD */
|
||||
#define Board_UART_RX Board_BP_UART_Tx /* TXD */
|
||||
|
||||
/*
|
||||
* SPI0 is LSK interface
|
||||
*/
|
||||
#define Board_SPI0_MISO PIN_UNASSIGNED
|
||||
#define Board_SPI0_MOSI IOID_0
|
||||
#define Board_SPI0_CLK IOID_1
|
||||
#define Board_SPI0_CS IOID_3
|
||||
|
||||
/*
|
||||
* SPI1 is ASK interface
|
||||
*/
|
||||
|
||||
#define Board_SPI1_MISO PIN_UNASSIGNED
|
||||
#define Board_SPI1_MOSI IOID_13
|
||||
#define Board_SPI1_CLK PIN_UNASSIGNED
|
||||
#define Board_SPI1_CS IOID_4
|
||||
|
||||
/* Power Management Board */
|
||||
#define Board_SRDY Board_BP_Pin_J2_19
|
||||
#define Board_MRDY Board_BP_Pin_J1_2
|
||||
|
||||
/* PWM outputs */
|
||||
#define Board_PWMPIN0 IOID_6
|
||||
#define Board_PWMPIN1 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN2 IOID_8
|
||||
#define Board_PWMPIN3 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN4 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN5 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN6 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN7 PIN_UNASSIGNED
|
||||
///*
|
||||
// * SPI0 interface with DBS chip 2.0
|
||||
// */
|
||||
//#define Board_SPI0_MISO PIN_UNASSIGNED
|
||||
//#define Board_SPI0_MOSI PIN_UNASSIGNED
|
||||
//#define Board_SPI0_CLK PIN_UNASSIGNED
|
||||
//#define Board_SPI0_CS PIN_UNASSIGNED
|
||||
//
|
||||
///*
|
||||
// * SPI1 interface work with LED
|
||||
// */
|
||||
//
|
||||
//#define Board_SPI1_MISO PIN_UNASSIGNED
|
||||
//#define Board_SPI1_MOSI PIN_UNASSIGNED
|
||||
//#define Board_SPI1_CLK PIN_UNASSIGNED
|
||||
//#define Board_SPI1_CS PIN_UNASSIGNED
|
||||
//
|
||||
///* Power Management Board */
|
||||
//#define Board_SRDY Board_BP_Pin_J2_19
|
||||
//#define Board_MRDY Board_BP_Pin_J1_2
|
||||
//
|
||||
///* PWM outputs */
|
||||
//#define Board_PWMPIN0 PIN_UNASSIGNED
|
||||
//#define Board_PWMPIN1 PIN_UNASSIGNED
|
||||
//#define Board_PWMPIN2 PIN_UNASSIGNED
|
||||
//#define Board_PWMPIN3 PIN_UNASSIGNED
|
||||
//#define Board_PWMPIN4 PIN_UNASSIGNED
|
||||
//#define Board_PWMPIN5 PIN_UNASSIGNED
|
||||
//#define Board_PWMPIN6 PIN_UNASSIGNED
|
||||
//#define Board_PWMPIN7 PIN_UNASSIGNED
|
||||
|
||||
|
||||
/** ============================================================================
|
||||
@@ -203,6 +209,16 @@ extern const PIN_Config BoardGpioInitTable[];
|
||||
#define Board_GPTIMER3A BOOSTXL_CC2650MA_GPTIMER3A
|
||||
#define Board_GPTIMER3B BOOSTXL_CC2650MA_GPTIMER3B
|
||||
|
||||
/* Generic ADC instance identifiers */
|
||||
#define Board_DIO0_ANALOG IOID_9
|
||||
#define Board_DIO1_ANALOG PIN_UNASSIGNED
|
||||
#define Board_DIO2_ANALOG PIN_UNASSIGNED
|
||||
#define Board_DIO3_ANALOG PIN_UNASSIGNED
|
||||
#define Board_DIO4_ANALOG PIN_UNASSIGNED
|
||||
#define Board_DIO5_ANALOG PIN_UNASSIGNED
|
||||
#define Board_DIO6_ANALOG PIN_UNASSIGNED
|
||||
#define Board_DIO7_ANALOG PIN_UNASSIGNED
|
||||
|
||||
/* Generic PWM instance identifiers */
|
||||
#define Board_PWM0 BOOSTXL_CC2650MA_PWM0
|
||||
#define Board_PWM1 BOOSTXL_CC2650MA_PWM1
|
||||
|
||||
@@ -79,7 +79,7 @@ const PIN_Config BoardGpioInitTable[] = {
|
||||
Board_BTN1 | PIN_INPUT_EN | PIN_PULLUP | PIN_IRQ_BOTHEDGES | PIN_HYSTERESIS, /* Button is active low */
|
||||
Board_BTN2 | PIN_INPUT_EN | PIN_PULLUP | PIN_IRQ_BOTHEDGES | PIN_HYSTERESIS, /* Button is active low */
|
||||
Board_SPI_FLASH_CS | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MIN, /* External flash chip select */
|
||||
Board_UART_RX | PIN_INPUT_EN | PIN_PULLDOWN, /* UART RX via debugger back channel */
|
||||
Board_UART_RX | PIN_INPUT_EN | PIN_PULLUP, /* UART RX via debugger back channel */
|
||||
Board_UART_TX | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL, /* UART TX via debugger back channel */
|
||||
Board_SPI0_MOSI | PIN_INPUT_EN | PIN_PULLDOWN, /* SPI master out - slave in */
|
||||
Board_SPI0_MISO | PIN_INPUT_EN | PIN_PULLDOWN, /* SPI master in - slave out */
|
||||
|
||||
@@ -51,6 +51,8 @@ extern "C" {
|
||||
#include <ti/drivers/PIN.h>
|
||||
#include <driverlib/ioc.h>
|
||||
|
||||
//#include "neu/headstage_pin.h"
|
||||
|
||||
/** ============================================================================
|
||||
* Externs
|
||||
* ==========================================================================*/
|
||||
@@ -78,20 +80,20 @@ extern const PIN_Config BoardGpioInitTable[];
|
||||
#define Board_BTN2 IOID_14
|
||||
|
||||
/* UART Board */
|
||||
#define Board_UART_RX IOID_1 /* RXD */
|
||||
#define Board_UART_TX IOID_2 /* TXD */
|
||||
#define Board_UART_CTS PIN_UNASSIGNED /* CTS */
|
||||
#define Board_UART_RTS PIN_UNASSIGNED /* RTS */
|
||||
#define Board_UART_RX IOID_25 /* RXD */
|
||||
#define Board_UART_TX IOID_26 /* TXD */
|
||||
#define Board_UART_CTS IOID_19 /* CTS */
|
||||
#define Board_UART_RTS IOID_18 /* RTS */
|
||||
|
||||
/* SPI Board */
|
||||
#define Board_SPI0_MISO PIN_UNASSIGNED /* RF1.20 */
|
||||
#define Board_SPI0_MOSI IOID_12 /* RF1.18 */
|
||||
#define Board_SPI0_CLK PIN_UNASSIGNED /* RF1.16 */
|
||||
#define Board_SPI0_CSN IOID_4
|
||||
#define Board_SPI0_MISO IOID_8 /* RF1.20 */
|
||||
#define Board_SPI0_MOSI IOID_9 /* RF1.18 */
|
||||
#define Board_SPI0_CLK IOID_10 /* RF1.16 */
|
||||
#define Board_SPI0_CSN IOID_11
|
||||
#define Board_SPI1_MISO PIN_UNASSIGNED
|
||||
#define Board_SPI1_MOSI IOID_10
|
||||
#define Board_SPI1_CLK IOID_9
|
||||
#define Board_SPI1_CSN IOID_3
|
||||
#define Board_SPI1_MOSI PIN_UNASSIGNED
|
||||
#define Board_SPI1_CLK PIN_UNASSIGNED
|
||||
#define Board_SPI1_CSN PIN_UNASSIGNED
|
||||
|
||||
/* I2C */
|
||||
#define Board_I2C0_SCL0 IOID_4
|
||||
@@ -123,17 +125,17 @@ extern const PIN_Config BoardGpioInitTable[];
|
||||
|
||||
/* Booster pack LCD (430BOOST - Sharp96 Rev 1.1) */
|
||||
#define Board_LCD_CS IOID_24 // SPI chip select
|
||||
#define Board_LCD_EXTCOMIN IOID_12 // External COM inversion
|
||||
#define Board_LCD_EXTCOMIN PIN_UNASSIGNED // External COM inversion
|
||||
#define Board_LCD_ENABLE IOID_22 // LCD enable
|
||||
#define Board_LCD_POWER IOID_23 // LCD power control
|
||||
#define Board_LCD_CS_ON 1
|
||||
#define Board_LCD_CS_OFF 0
|
||||
|
||||
/* PWM outputs */
|
||||
#define Board_PWMPIN0 Board_RLED
|
||||
#define Board_PWMPIN1 Board_GLED
|
||||
#define Board_PWMPIN2 IOID_5
|
||||
#define Board_PWMPIN3 IOID_11
|
||||
#define Board_PWMPIN0 IOID_12
|
||||
#define Board_PWMPIN1 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN2 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN3 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN4 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN5 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN6 PIN_UNASSIGNED
|
||||
|
||||
@@ -100,6 +100,7 @@ if (typeof NO_ROM == 'undefined' || (typeof NO_ROM != 'undefined' && NO_ROM == 0
|
||||
|
||||
/* ================ Clock configuration ================ */
|
||||
var Clock = xdc.useModule('ti.sysbios.knl.Clock');
|
||||
var Timestamp = xdc.useModule('xdc.runtime.Timestamp');
|
||||
/*
|
||||
* When using Power and calibrateRCOSC is set to true, this should be set to 10.
|
||||
* The timer used by the Clock module supports TickMode_DYNAMIC. This enables us
|
||||
@@ -112,6 +113,7 @@ var Clock = xdc.useModule('ti.sysbios.knl.Clock');
|
||||
Clock.tickPeriod = 10;
|
||||
Clock.swiPriority = 5;
|
||||
|
||||
Timestamp.SupportProxy = xdc.useModule('ti.sysbios.family.arm.cc26xx.TimestampProvider');
|
||||
|
||||
/* ================ Types configuration ================ */
|
||||
var Types = xdc.useModule('xdc.runtime.Types');
|
||||
@@ -203,6 +205,7 @@ Error.maxDepth = 2;
|
||||
/* ================ Hwi configuration ================ */
|
||||
var halHwi = xdc.useModule('ti.sysbios.hal.Hwi');
|
||||
var m3Hwi = xdc.useModule('ti.sysbios.family.arm.m3.Hwi');
|
||||
|
||||
/*
|
||||
* Checks for Hwi (system) stack overruns while in the Idle loop.
|
||||
*
|
||||
@@ -216,6 +219,7 @@ var m3Hwi = xdc.useModule('ti.sysbios.family.arm.m3.Hwi');
|
||||
*/
|
||||
//halHwi.checkStackFlag = true;
|
||||
halHwi.checkStackFlag = false;
|
||||
//C:\ti\simplelink\ble_sdk_2_02_02_25\examples\cc2650em\simple_peripheral\ccs\app\.config\xconfig_app_ble
|
||||
|
||||
/*
|
||||
* The following options alter the system's behavior when a hardware exception
|
||||
|
||||
@@ -368,6 +368,9 @@ static void HostTestApp_processAttEvent(gattMsgEvent_t *message) {
|
||||
} else if (method == ATT_HANDLE_VALUE_NOTI) {
|
||||
attHandleValueNoti_t *att_notify = (attHandleValueNoti_t *)(&message->msg);
|
||||
master_handle_notify(att_notify->len, att_notify->pValue);
|
||||
} else if (method == ATT_HANDLE_VALUE_IND) {
|
||||
attHandleValueInd_t *att_indicate = (attHandleValueInd_t *)(&message->msg);
|
||||
master_handle_notify(att_indicate->len, att_indicate->pValue);
|
||||
}
|
||||
|
||||
// Free message. Needed only for ATT Protocol messages
|
||||
|
||||
+2567
File diff suppressed because it is too large
Load Diff
+51
@@ -0,0 +1,51 @@
|
||||
#!/bin/bash
|
||||
|
||||
input="./Elite_test.txt"
|
||||
|
||||
declare -i col_index=0
|
||||
declare -i row_index=0
|
||||
declare -i channel=0
|
||||
declare -i gain=0
|
||||
declare -i current_line=2
|
||||
declare -a value
|
||||
|
||||
MAC="MAC"
|
||||
|
||||
while read -r line; do
|
||||
for word in $line; do
|
||||
# get device MAC
|
||||
if [ $row_index -eq 1 ] && [ $col_index -eq 0 ];then
|
||||
MAC=$word
|
||||
sed -i "${current_line} i \\\n#elif defined(BOARD_${MAC}){" ./test.txt
|
||||
sed -i 's/:/_/g' ./test.txt
|
||||
current_line=$current_line+2
|
||||
|
||||
# if [ $row_index -gt 0 ];then
|
||||
# # row 1~8 is the least gain clai data
|
||||
# channel=`expr $row_index - 1`
|
||||
# channel=`expr $channel % 8`
|
||||
#
|
||||
# gain=`expr $row_index - 1`
|
||||
# gain=`expr $gain / 8`
|
||||
#
|
||||
# if [ $col_index -eq 4 ];then
|
||||
# sed -i "${current_line} i \\\t.Ch[${channel}].Gain[${gain}] = $word," ./test.txt
|
||||
# current_line=$current_line+1
|
||||
# elif [ $col_index -eq 6 ];then
|
||||
# sed -i "${current_line} i \\\t.Ch[${channel}].Offset[${gain}] = $word," ./test.txt
|
||||
# current_line=$current_line+1
|
||||
# fi
|
||||
fi
|
||||
|
||||
#update index
|
||||
if [ $col_index -lt 5 ];then
|
||||
col_index=$col_index+1
|
||||
else
|
||||
col_index=0
|
||||
row_index=$row_index+1
|
||||
fi
|
||||
done
|
||||
done < $input
|
||||
|
||||
#sed -i "${current_line} i }" ./test.txt
|
||||
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
@startuml
|
||||
|
||||
|
||||
start
|
||||
|
||||
while (negedge chip select)
|
||||
if (rxbuf is wrong) then (yes)
|
||||
:modify data until it is correct;
|
||||
else
|
||||
:pass;
|
||||
endif
|
||||
partition headstage_notify_append_data {
|
||||
if (buf offset == INIT) then (yes)
|
||||
:reset timestamp;
|
||||
endif
|
||||
if (buf offset == BUFF_SIZE)
|
||||
:set time delta;
|
||||
endif
|
||||
:append data & return index;
|
||||
}
|
||||
if (buf offset == BUFF_SIZE)
|
||||
:headstage_notify_send(0.676ms);
|
||||
endif
|
||||
:headstage_spi_lsk_transaction (0.528ms);
|
||||
endwhile
|
||||
stop
|
||||
|
||||
@enduml
|
||||
+59
-56
@@ -23,7 +23,7 @@ Instruction Specification
|
||||
|
||||
file defined:
|
||||
|
||||
Bio_Pro_Sci / 研發 / Pi3/DataServer / CC2650 / CC2650通用指令表
|
||||
Bio_Pro_Sci / �� / Pi3/DataServer / CC2650 / CC2650���誘銵�
|
||||
|
||||
```
|
||||
struct instruction {
|
||||
@@ -56,10 +56,10 @@ instruction operator
|
||||
| VIS_INT | 0x60 | interrupt device |
|
||||
| | 0x70 | not used |
|
||||
| | 0x80 | not used |
|
||||
| VIS_FUH | 0x90 | not used |
|
||||
| VIS_STI | 0x90 | en/disable stimulation |
|
||||
| VIS_CAL | 0xA0 | not used |
|
||||
| | 0xB0 | not used |
|
||||
| VIS_STI | 0xC0 | device start working |
|
||||
| VIS_START| 0xC0 | device start working |
|
||||
| | 0xD0 | not used |
|
||||
| | 0xE0 | not used |
|
||||
| VIS_RST | 0xF0 | device reset |
|
||||
@@ -93,6 +93,18 @@ instruction operator
|
||||
#include <ti/sysbios/knl/Semaphore.h>
|
||||
#include "simple_gatt_profile.h"
|
||||
|
||||
/*========================
|
||||
==== Global Variable ====
|
||||
=========================*/
|
||||
|
||||
static bool STI = false;
|
||||
static bool IsFirstData = true;
|
||||
static uint8_t spi_state_counter = 0;
|
||||
static bool ConnectState = false;
|
||||
static bool ErrorRestart = false;
|
||||
static bool turn_off_sti = false;
|
||||
static uint8_t SPICallBack = 0;
|
||||
|
||||
/*======================
|
||||
==== event control ====
|
||||
=====================*/
|
||||
@@ -181,18 +193,27 @@ extern ICall_Semaphore semaphore;
|
||||
#define INS_TYPE_VIS 0xC0
|
||||
#define INS_TYPE_CIS 0x70
|
||||
|
||||
// RIS operator
|
||||
#define RIS_SEND_UART 0x01
|
||||
#define RIS_PREPARE_SEND 0x02
|
||||
|
||||
|
||||
// VIS operator
|
||||
#define VIS_ASK 0x30
|
||||
#define VIS_INT 0x60
|
||||
#define VIS_FUH 0x90
|
||||
#define VIS_CAL 0xA0
|
||||
#define VIS_STI 0xC0
|
||||
#define VIS_RST 0xF0
|
||||
#define VIS_ASK 0x30
|
||||
#define VIS_INT 0x60
|
||||
#define VIS_STI 0x90
|
||||
#define VIS_CAL 0xA0
|
||||
#define VIS_START 0xC0
|
||||
#define VIS_RST 0xF0
|
||||
#define VIS_STOP_STI 0x01
|
||||
|
||||
|
||||
// CIS operator
|
||||
#define CIS_NOP 0x00
|
||||
#define CIS_VOLT 0x10
|
||||
#define CIS_LED 0x20
|
||||
#define CIS_CALI 0x30
|
||||
#define CIS_VERSION 0x40
|
||||
|
||||
// CIS return status code
|
||||
#define CDR_SUCCESS 0x0
|
||||
@@ -206,7 +227,7 @@ extern ICall_Semaphore semaphore;
|
||||
==== utility macro ====
|
||||
=====================*/
|
||||
|
||||
#define _B_4b4b(a, b) ((((a) << 4) & 0xF0) | ((b)&0x0F))
|
||||
#define _B_4b4b(a, b) (((a & 0x0f) << 4) | (b & 0x0f))
|
||||
|
||||
#define _B_flip2(a) \
|
||||
({ \
|
||||
@@ -243,7 +264,6 @@ extern ICall_Semaphore semaphore;
|
||||
* count with cpu tick.
|
||||
*/
|
||||
#define headstage_cpu_delay_ms(ms) CPUdelay(ms * 16000)
|
||||
|
||||
/**
|
||||
* make task sleep in certain [us].
|
||||
* count with cpu tick.
|
||||
@@ -288,6 +308,11 @@ static uint8_t CHIP_ID = 0;
|
||||
*/
|
||||
static uint16_t CONNECT_HANDLE = 0;
|
||||
|
||||
/**
|
||||
* command instruction buffer
|
||||
*/
|
||||
static uint8_t cdr_buf[BLE_CDR_BUFF_SIZE] = {0};
|
||||
|
||||
/*====================
|
||||
==== event table ====
|
||||
====================*/
|
||||
@@ -312,11 +337,11 @@ typedef struct {
|
||||
==== device implement implement header ====
|
||||
=========================================*/
|
||||
|
||||
#include "headstage_uni.h"
|
||||
#include "headstage_neu.h"
|
||||
|
||||
/*======================
|
||||
==== main function ====
|
||||
======================*/
|
||||
/*!
|
||||
* main function
|
||||
*/
|
||||
|
||||
static EventTableEntry EVENT_TABLE[] = { //
|
||||
#ifdef HEADSTAGE_TNI_H
|
||||
@@ -330,6 +355,12 @@ static EventTableEntry EVENT_TABLE[] = { //
|
||||
#endif
|
||||
#ifdef HEADSTAGE_STI_H
|
||||
{EVT_ALL, &headstage_sti_event},
|
||||
#endif
|
||||
#ifdef HEADSTAGE_NEU_H
|
||||
{EVT_ALL, &headstage_neu_event},
|
||||
#endif
|
||||
#ifdef HEADSTAGE_TEST_DATA_H
|
||||
{EVT_ALL, &headstage_test_event},
|
||||
#endif
|
||||
// terminated
|
||||
{0, NULL}};
|
||||
@@ -338,7 +369,7 @@ static EventTableEntry EVENT_TABLE[] = { //
|
||||
* system event handle. It go through [EVENT_TABLE] and invoke event callback
|
||||
* if event_mask bits set.
|
||||
*/
|
||||
static void headstage_event_handle() {
|
||||
void headstage_event_handle() {
|
||||
for (EventTableEntry *entry = EVENT_TABLE; EVENT_MASK && entry->event_mask; entry++) {
|
||||
if (entry->event_callback && flag_mask(entry->event_mask)) {
|
||||
entry->event_callback();
|
||||
@@ -353,8 +384,6 @@ static void headstage_event_handle() {
|
||||
* system handle for instruction input.
|
||||
*/
|
||||
static void headstage_update_instruction(uint8_t *instruction) {
|
||||
static uint8_t cdr_buf[BLE_CDR_BUFF_SIZE] = {0};
|
||||
|
||||
uint8_t ins_type = instruction[0] & 0xF0;
|
||||
CHIP_ID = instruction[0] & 0x0F;
|
||||
uint8_t ins_oper = instruction[1] & 0xF0;
|
||||
@@ -370,45 +399,19 @@ static void headstage_update_instruction(uint8_t *instruction) {
|
||||
break;
|
||||
}
|
||||
case INS_TYPE_CIS: {
|
||||
switch (ins_oper) {
|
||||
case CIS_NOP: {
|
||||
// nothing
|
||||
cdr_buf[0] = _B_4b4b(CIS_NOP, CHIP_ID);
|
||||
cdr_buf[1] = _B_4b4b(CDR_SUCCESS, 0);
|
||||
|
||||
SimpleProfile_SetParameter(BLE_CDR_BUFF_CHAR, 2, cdr_buf);
|
||||
break;
|
||||
}
|
||||
#ifdef HEADSTAGE_CIS_VOLT_H
|
||||
case CIS_VOLT: {
|
||||
uint8_t status = headstage_update_vis_volt(ins_len, instruction + 2, cdr_buf + 2);
|
||||
|
||||
cdr_buf[0] = _B_4b4b(CIS_VOLT, CHIP_ID);
|
||||
cdr_buf[1] = status;
|
||||
|
||||
SimpleProfile_SetParameter(BLE_CDR_BUFF_CHAR, BLE_CDR_BUFF_SIZE, cdr_buf);
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
#ifdef HEADSTAGE_CIS_LED_H
|
||||
case CIS_LED: {
|
||||
uint8_t status = headstage_update_vis_led(ins_len, instruction + 2, cdr_buf + 2);
|
||||
|
||||
cdr_buf[0] = _B_4b4b(CIS_LED, CHIP_ID);
|
||||
cdr_buf[1] = status;
|
||||
|
||||
SimpleProfile_SetParameter(BLE_CDR_BUFF_CHAR, BLE_CDR_BUFF_SIZE, cdr_buf);
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
default: {
|
||||
cdr_buf[0] = _B_4b4b(ins_oper, CHIP_ID);
|
||||
cdr_buf[1] = _B_4b4b(CDR_FAILURE, 0);
|
||||
|
||||
SimpleProfile_SetParameter(BLE_CDR_BUFF_CHAR, BLE_CDR_BUFF_SIZE, cdr_buf);
|
||||
break;
|
||||
}
|
||||
if(ins_oper == CIS_CALI){
|
||||
// CIS has only 20 byte now
|
||||
// need ins[2] to choose return gain or offset
|
||||
SendCaliValue(instruction[2]);
|
||||
}
|
||||
else{
|
||||
headstage_update_cis_instruction(ins_oper);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
default:{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
|
||||
#ifndef BIT_COUNT
|
||||
#define BIT_COUNT
|
||||
|
||||
static uint8_t BitCount(uint8_t u8_value){
|
||||
uint8_t ret = 0;
|
||||
for(int i=0 ; i<8 ; i++){
|
||||
if(u8_value & (1 << i)){
|
||||
ret ++;
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
+1
-2
@@ -3,9 +3,9 @@
|
||||
#ifndef HEADSTAGE_ARM_H
|
||||
#define HEADSTAGE_ARM_H
|
||||
|
||||
static uint16_t headstage_ramp_data_counter = 0;
|
||||
|
||||
static void headstage_arm_append_ramp_data(uint8_t *buff) {
|
||||
static uint16_t headstage_ramp_data_counter = 0;
|
||||
|
||||
uint16_t v = headstage_ramp_data_counter++;
|
||||
|
||||
@@ -13,5 +13,4 @@ static void headstage_arm_append_ramp_data(uint8_t *buff) {
|
||||
buff[1] = (uint8_t)(v << 2);
|
||||
}
|
||||
|
||||
|
||||
#endif // HEADSTAGE_ARM_H
|
||||
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
#ifndef HEADSTAGE_BATT_H
|
||||
#define HEADSTAGE_BATT_H
|
||||
|
||||
#include <driverlib/aon_batmon.h>
|
||||
#define MAX_BATTERY_CAPACITY 4200
|
||||
static uint8_t battery_percent = 100;
|
||||
|
||||
static uint8_t headstage_battery_percent() {
|
||||
uint8_t internal_battery_percent;
|
||||
uint32_t internal_batt_sense = AONBatMonBatteryVoltageGet();
|
||||
internal_batt_sense = (internal_batt_sense * 125) >> 5;
|
||||
internal_batt_sense = (internal_batt_sense * 100) / MAX_BATTERY_CAPACITY;
|
||||
internal_battery_percent = internal_batt_sense & 0xFF;
|
||||
if (internal_battery_percent < battery_percent) battery_percent = internal_battery_percent;
|
||||
return battery_percent;
|
||||
}
|
||||
|
||||
|
||||
static uint8_t battery_volt;
|
||||
static uint8_t headstage_battery_volt1() {
|
||||
uint8_t internal_battery_percent;
|
||||
uint32_t internal_batt_sense = AONBatMonBatteryVoltageGet();
|
||||
// internal_batt_sense = (internal_batt_sense * 125) >> 5;
|
||||
// internal_batt_sense = (internal_batt_sense * 100) / MAX_BATTERY_CAPACITY;
|
||||
internal_battery_percent = internal_batt_sense & 0xFF;
|
||||
battery_volt = internal_battery_percent;
|
||||
return battery_volt;
|
||||
}
|
||||
|
||||
static uint8_t headstage_battery_volt2() {
|
||||
uint8_t internal_battery_percent;
|
||||
uint32_t internal_batt_sense = AONBatMonBatteryVoltageGet();
|
||||
// internal_batt_sense = (internal_batt_sense * 125) >> 5;
|
||||
// internal_batt_sense = (internal_batt_sense * 100) / MAX_BATTERY_CAPACITY;
|
||||
internal_battery_percent = (internal_batt_sense >> 8) & 0xFF;
|
||||
battery_volt = internal_battery_percent;
|
||||
return battery_volt;
|
||||
}
|
||||
|
||||
#endif // HEADSTAGE_BATT_H
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
|
||||
#ifndef NEU_CALI_FXN
|
||||
#define NEU_CALI_FXN
|
||||
|
||||
#include "headstage_cali_table.h"
|
||||
|
||||
static void CaliTable2u8(uint8_t* cali){
|
||||
for(int i=0 ; i<12 ; i++){
|
||||
for(int j=0 ; j<3 ; j++){
|
||||
*(cali + 12*i + 2*j) = (uint8_t) (CaliTable.Ch[i].Gain[j] | 0xFF00) >> 8;
|
||||
*(cali + 12*i + 2*j+1) = (uint8_t) (CaliTable.Ch[i].Gain[j] | 0x00FF);
|
||||
*(cali + 12*i + 2*j+6) = (uint8_t) (CaliTable.Ch[i].Offset[j] | 0xFF00) >> 8;
|
||||
*(cali + 12*i + 2*j+7) = (uint8_t) (CaliTable.Ch[i].Offset[j] | 0x00FF);
|
||||
}
|
||||
}
|
||||
}
|
||||
/*
|
||||
* SendCaliValue
|
||||
* CaliNumber : 0~23
|
||||
* - 0: ch1 gain value
|
||||
* - 1: ch1 offset value
|
||||
* - 2: ch2 gain
|
||||
* - .......
|
||||
*/
|
||||
static void SendCaliValue(uint8_t CaliNumber){
|
||||
uint8_t ch, cdr_buf[10];
|
||||
|
||||
ch = 2 * (CaliNumber % 4);
|
||||
uint8_t gain_level = CaliNumber / 4; // 0:gain, 1:offset
|
||||
|
||||
cdr_buf[0] = CHIP_ID;
|
||||
|
||||
cdr_buf[1] = (uint8_t) (CaliTable.Ch[ch].Gain[gain_level] >> 8) & 0xFF;
|
||||
cdr_buf[2] = (uint8_t) CaliTable.Ch[ch].Gain[gain_level] & 0x00FF;
|
||||
cdr_buf[3] = (uint8_t) (CaliTable.Ch[ch].Offset[gain_level] >> 8) & 0xFF;
|
||||
cdr_buf[4] = (uint8_t) CaliTable.Ch[ch].Offset[gain_level] & 0x00FF;
|
||||
cdr_buf[5] = (uint8_t) (CaliTable.Ch[ch+1].Gain[gain_level] >> 8) & 0xFF;
|
||||
cdr_buf[6] = (uint8_t) CaliTable.Ch[ch+1].Gain[gain_level] & 0x00FF;
|
||||
cdr_buf[7] = (uint8_t) (CaliTable.Ch[ch+1].Offset[gain_level] >> 8) & 0xFF;
|
||||
cdr_buf[8] = (uint8_t) CaliTable.Ch[ch+1].Offset[gain_level] & 0x00FF;
|
||||
|
||||
cdr_buf[9] = 0; // don't care
|
||||
|
||||
SimpleProfile_SetParameter(BLE_CDR_BUFF_CHAR, BLE_CDR_BUFF_SIZE, cdr_buf);
|
||||
}
|
||||
|
||||
#endif
|
||||
+195
@@ -0,0 +1,195 @@
|
||||
|
||||
#ifndef NEU_CALI_STI_H
|
||||
#define NEU_CALI_STI_H
|
||||
|
||||
#include "headstage_cali_table.h"
|
||||
|
||||
typedef struct _StiCali{
|
||||
uint16_t coefficient;
|
||||
int16_t offset;
|
||||
}StiCali;
|
||||
|
||||
struct _StiCaliStiTable{
|
||||
StiCali p_ch;
|
||||
StiCali n_ch;
|
||||
}StiCaliTable =
|
||||
|
||||
#ifdef BOARD_TEST
|
||||
{
|
||||
.p_ch.coefficient = 10000,
|
||||
.p_ch.offset = 0,
|
||||
.n_ch.coefficient = 10000,
|
||||
.n_ch.offset = 0
|
||||
};
|
||||
|
||||
#elif defined(BOARD_00_81_F9_E4_8C_D0)
|
||||
{
|
||||
.p_ch.coefficient = 2199,
|
||||
.p_ch.offset = -4615,
|
||||
.n_ch.coefficient = 2162,
|
||||
.n_ch.offset = -16395
|
||||
};
|
||||
|
||||
#elif defined(BOARD_18_04_ED_37_C6_BE)
|
||||
{
|
||||
.p_ch.coefficient = 2270,
|
||||
.p_ch.offset = -7039,
|
||||
.n_ch.coefficient = 2259,
|
||||
.n_ch.offset = -14128
|
||||
};
|
||||
|
||||
#elif defined(BOARD_18_04_ED_37_C6_41)
|
||||
{
|
||||
.p_ch.coefficient = 2090,
|
||||
.p_ch.offset = 4616,
|
||||
.n_ch.coefficient = 1997,
|
||||
.n_ch.offset = -40664
|
||||
};
|
||||
|
||||
#elif defined(BOARD_18_04_ED_37_C6_DF)
|
||||
{
|
||||
.p_ch.coefficient = 2132,
|
||||
.p_ch.offset = -3843,
|
||||
.n_ch.coefficient = 2054,
|
||||
.n_ch.offset = -21544
|
||||
};
|
||||
|
||||
#elif defined(BOARD_18_04_ED_37_C6_C7)
|
||||
{
|
||||
.p_ch.coefficient = 2199,
|
||||
.p_ch.offset = -7237,
|
||||
.n_ch.coefficient = 2221,
|
||||
.n_ch.offset = -15701
|
||||
};
|
||||
|
||||
#elif defined(BOARD_00_81_F9_E4_8B_50)
|
||||
{
|
||||
.p_ch.coefficient = 2369,
|
||||
.p_ch.offset = -11004,
|
||||
.n_ch.coefficient = 2360,
|
||||
.n_ch.offset = -11796
|
||||
};
|
||||
|
||||
#elif defined(BOARD_00_81_F9_E4_9B_97)
|
||||
{
|
||||
.p_ch.coefficient = 2227,
|
||||
.p_ch.offset = -9845,
|
||||
.n_ch.coefficient = 2151,
|
||||
.n_ch.offset = -26608
|
||||
};
|
||||
|
||||
#elif defined(BOARD_18_04_ED_37_C6_52)
|
||||
{
|
||||
.p_ch.coefficient = 2024,
|
||||
.p_ch.offset = -7686,
|
||||
.n_ch.coefficient = 2086,
|
||||
.n_ch.offset = -11282
|
||||
};
|
||||
|
||||
#elif defined(BOARD_00_81_F9_E4_9B_EF)
|
||||
{
|
||||
.p_ch.coefficient = 2383,
|
||||
.p_ch.offset = -8584,
|
||||
.n_ch.coefficient = 2415,
|
||||
.n_ch.offset = -20346
|
||||
};
|
||||
|
||||
#elif defined(BOARD_A4_DA_32_D4_E8_E6)
|
||||
{
|
||||
.p_ch.coefficient = 2306,
|
||||
.p_ch.offset = -88454,
|
||||
.n_ch.coefficient = 2418,
|
||||
.n_ch.offset = -15140
|
||||
};
|
||||
|
||||
#elif defined(BOARD_A4_DA_32_D4_E7_3B)
|
||||
{
|
||||
.p_ch.coefficient = 2262,
|
||||
.p_ch.offset = -564,
|
||||
.n_ch.coefficient = 2298,
|
||||
.n_ch.offset = 44746
|
||||
};
|
||||
|
||||
#elif defined(BOARD_A4_DA_32_D4_EE_E2)
|
||||
{
|
||||
.p_ch.coefficient = 2057,
|
||||
.p_ch.offset = 5980,
|
||||
.n_ch.coefficient = 2096,
|
||||
.n_ch.offset = -21411
|
||||
};
|
||||
|
||||
#elif defined(BOARD_A4_DA_32_D4_E8_71)
|
||||
{
|
||||
.p_ch.coefficient = 2175,
|
||||
.p_ch.offset = -4549,
|
||||
.n_ch.coefficient = 2220,
|
||||
.n_ch.offset = 31468
|
||||
};
|
||||
|
||||
#elif defined(BOARD_A4_DA_32_D4_EF_C4)
|
||||
{
|
||||
.p_ch.coefficient = 2348,
|
||||
.p_ch.offset = -5830,
|
||||
.n_ch.coefficient = 2374,
|
||||
.n_ch.offset = -26403
|
||||
};
|
||||
|
||||
#elif defined(BOARD_A4_DA_32_D4_EF_85)
|
||||
{
|
||||
.p_ch.coefficient = 2136,
|
||||
.p_ch.offset = -3339,
|
||||
.n_ch.coefficient = 2189,
|
||||
.n_ch.offset = -30040
|
||||
};
|
||||
|
||||
#elif defined(BOARD_A4_DA_32_D4_E7_DA)
|
||||
{
|
||||
.p_ch.coefficient = 2081,
|
||||
.p_ch.offset = -3015,
|
||||
.n_ch.coefficient = 2122,
|
||||
.n_ch.offset = -21543
|
||||
};
|
||||
|
||||
#elif defined(BOARD_A4_DA_32_D4_E6_EA)
|
||||
{
|
||||
.p_ch.coefficient = 2039,
|
||||
.p_ch.offset = -262,
|
||||
.n_ch.coefficient = 2127,
|
||||
.n_ch.offset = -47259
|
||||
};
|
||||
|
||||
#elif defined(BOARD_A4_DA_32_D4_EE_DB)
|
||||
{
|
||||
.p_ch.coefficient = 2214,
|
||||
.p_ch.offset = -1170,
|
||||
.n_ch.coefficient = 2351,
|
||||
.n_ch.offset = -24636
|
||||
};
|
||||
|
||||
#elif defined(BOARD_A4_DA_32_D4_E7_3A)
|
||||
{
|
||||
.p_ch.coefficient = 2210,
|
||||
.p_ch.offset = -4855,
|
||||
.n_ch.coefficient = 2339,
|
||||
.n_ch.offset = -16434
|
||||
};
|
||||
|
||||
#elif defined(BOARD_A4_DA_32_D4_E6_CF)
|
||||
{
|
||||
.p_ch.coefficient = 2135,
|
||||
.p_ch.offset = -5206,
|
||||
.n_ch.coefficient = 2193,
|
||||
.n_ch.offset = -30885
|
||||
};
|
||||
|
||||
#else
|
||||
{
|
||||
.p_ch.coefficient = 10000,
|
||||
.p_ch.offset = 0,
|
||||
.n_ch.coefficient = 10000,
|
||||
.n_ch.offset = 0
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
+2021
File diff suppressed because it is too large
Load Diff
+50
@@ -0,0 +1,50 @@
|
||||
|
||||
#ifndef NEU_CHECK_INSTRUCTION
|
||||
#define NEU_CHECK_INSTRUCTION
|
||||
#include "headstage_instruction.h"
|
||||
#include "neu/headstage_spi.h"
|
||||
#include "neu/headstage_reset.h"
|
||||
|
||||
static uint8_t check_ins(uint16_t trans_ins){
|
||||
uint16_t recv_ins;
|
||||
recv_ins = spi_rxbuf[1] << 8 | spi_rxbuf[2];
|
||||
|
||||
return (trans_ins == recv_ins);
|
||||
}
|
||||
|
||||
static void check_register(uint8_t register_to_check, uint16_t instruction_to_fit, uint8_t next_state){
|
||||
if(spi_state_counter < 6){
|
||||
SPICallBack = CONTINUOUS_TRANS;
|
||||
spi_txbuf[0] = register_to_check;
|
||||
spi_txbuf[1] = register_to_check;
|
||||
spi_txbuf[2] = register_to_check;
|
||||
|
||||
spi_state_counter ++;
|
||||
headstage_spi_transaction(3);
|
||||
}
|
||||
else{
|
||||
spi_state_counter = 0;
|
||||
if(check_ins(instruction_to_fit)){
|
||||
NEULIVE_STATE.state = next_state;
|
||||
SPICallBack = ONE_SHOT_SPI;
|
||||
}
|
||||
else{
|
||||
// resend instruction
|
||||
SPI_close(headstage_spi_handle);
|
||||
DBSReset();
|
||||
NEULIVE_STATE.state = NEU_WRITE_INSTRUCTION;
|
||||
NEULIVE_STATE.config_type = NEU_SET_STI_CUR;
|
||||
if(STI){
|
||||
INSTRUCTION.ins_opcode = T_ZE;
|
||||
}
|
||||
else{
|
||||
INSTRUCTION.ins_opcode = BIAS_ONE;
|
||||
}
|
||||
SPICallBack = ONE_SHOT_SPI;
|
||||
ReopenSPI();
|
||||
}
|
||||
headstage_spi_transaction(3);
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
+2
-2
@@ -25,8 +25,8 @@ static void headstage_cis_led_enable(uint8_t enable);
|
||||
static uint8_t headstage_cis_led_set_pattern(uint8_t pattern);
|
||||
|
||||
/**
|
||||
* @para pattern: pattern number
|
||||
* @para parameter: led parameter, NULL to unset
|
||||
* @param pattern: pattern number
|
||||
* @param parameter: led parameter, NULL to unset
|
||||
* @return: CDR_SUCCESS
|
||||
*/
|
||||
static uint8_t headstage_cis_led_set_value(uint8_t pattern, //
|
||||
|
||||
+3
-3
@@ -97,9 +97,9 @@ static void headstage_@REPLACE@_event() {
|
||||
==== function implement ====
|
||||
==========================*/
|
||||
|
||||
static void headstage_init() {
|
||||
// TODO
|
||||
}
|
||||
//static void headstage_init() {
|
||||
// // TODO
|
||||
//}
|
||||
|
||||
static void headstage_update_ris_instruction(uint8_t ins_len, uint8_t *instruction) {
|
||||
// TODO
|
||||
|
||||
+2
-2
@@ -27,7 +27,7 @@ static void headstage_gptimer_callback(GPTimerCC26XX_Handle handle, GPTimerCC26X
|
||||
params.width = GPT_CONFIG_16BIT; \
|
||||
params.mode = GPT_MODE_PERIODIC_DOWN; \
|
||||
params.debugStallMode = GPTimerCC26XX_DEBUG_STALL_OFF; \
|
||||
gptimer_handle = GPTimerCC26XX_open(Board_GPTIMER0A, ¶ms); \
|
||||
gptimer_handle = GPTimerCC26XX_open(Board_GPTIMER3A, ¶ms); \
|
||||
GPTimerCC26XX_setLoadValue(gptimer_handle, 0xFFFFFF); \
|
||||
GPTimerCC26XX_registerInterrupt(gptimer_handle, headstage_gptimer_callback, GPT_INT_TIMEOUT); \
|
||||
} while (0)
|
||||
@@ -42,4 +42,4 @@ static void headstage_gptimer_callback(GPTimerCC26XX_Handle handle, GPTimerCC26X
|
||||
GPTimerCC26XX_setLoadValue(gptimer_handle, _load); \
|
||||
} while (0)
|
||||
|
||||
#endif // HEADSTAGE_GPTIMER_H
|
||||
#endif // HEADSTAGE_GPTIMER_H
|
||||
|
||||
+84
@@ -0,0 +1,84 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
|
||||
/*
|
||||
|
||||
Headstage indicate utility
|
||||
==========================
|
||||
|
||||
reference code :
|
||||
root:
|
||||
glucose.c
|
||||
glucserive.c
|
||||
|
||||
code need modifying:
|
||||
headstage_indicate.h
|
||||
simple_gatt_profile.c : WriteAtterCB -> add case "indication" to support indicate
|
||||
|
||||
sipmle_peripheral.c : find another service callback
|
||||
|
||||
use this website to construct software structure : http://plantuml.com/zh/
|
||||
|
||||
reference document:
|
||||
bluetooth Core5.1 Vol 3, Part F, Section 3.4.6
|
||||
The Prepare Write Request is used to request the server to prepare to write the
|
||||
value of an attribute. The server will respond to this request with a Prepare Write
|
||||
Response, so that the client can verify that the value was received correctly.
|
||||
|
||||
host-test can ask simple-peripheral to prepare the queue to write attribute
|
||||
|
||||
5.3.4.3 Queued Writes
|
||||
Prepare Write commands allows a GATT server to send more payload data by queuing up multiple write
|
||||
requests. The default queue size is 5. With a default MTU of 23 and payload of 18 bytes, up to 90 bytes of
|
||||
payload can be sent. Refer to Core_v4.2 specification (Vol 3, Part F, Section 3.4.6) for more information
|
||||
on queued writes.
|
||||
Adjust the Prepare Write queue with GATTServApp_SetParameter with parameter
|
||||
GATT_PARAM_NUM_PREPARE_WRITES. There is no specified limit, but it is bounded by the available
|
||||
HEAPMGR space. Refer to the API definition in gattservapp.h.
|
||||
|
||||
GATT_PARAM_NUM_PREPARE_WRITES
|
||||
|
||||
*/
|
||||
|
||||
#ifndef HEADSTAGE_INDICATE_H
|
||||
#define HEADSTAGE_INDICATE_H
|
||||
|
||||
#include <xdc/runtime/Timestamp.h>
|
||||
|
||||
#define headstage_time_stamp() Timestamp_get32()
|
||||
|
||||
/*==========================
|
||||
==== indicate function ====
|
||||
=========================*/
|
||||
|
||||
/*
|
||||
* send indicate
|
||||
* connHandle -> where to assign this parameter
|
||||
*/
|
||||
|
||||
static bStatus_t headstage_indicate() {
|
||||
uint16_t buffer_size = BLE_NOT_BUFF_SIZE;
|
||||
uint8_t *value = (uint8_t *)GATT_bm_alloc(CONNECT_HANDLE, ATT_HANDLE_VALUE_IND, GATT_MAX_MTU,&buffer_size);
|
||||
|
||||
if (value != NULL) {
|
||||
memcpy(value, headstage_notify_buffer, buffer_size);
|
||||
}
|
||||
|
||||
attHandleValueInd_t indicate = {
|
||||
// clang-format off
|
||||
.handle = 0x1E,
|
||||
.len = buffer_size,
|
||||
.pValue = value
|
||||
// clang-format on
|
||||
};
|
||||
|
||||
if (GATT_Indication(CONNECT_HANDLE, &indicate, 0, ICall_getEntityId()) != SUCCESS) {
|
||||
GATT_bm_free((gattMsg_t *)&indicate, ATT_HANDLE_VALUE_IND);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
+91
@@ -0,0 +1,91 @@
|
||||
|
||||
#ifndef NEU_INSTRUCTION
|
||||
#define NEU_INSTRUCTION
|
||||
|
||||
/** amounts of channel */
|
||||
#define NEU_STI_CHANNEL_COUNTS 9 // channel 0~7 is current sti; channel 8 = voltage sti
|
||||
#define NEU_REC_CHANNEL_COUNTS 16 /**< recording channel counts */
|
||||
|
||||
struct HEADSTAGE_PARAMETER_TABLE {
|
||||
uint8_t current_sti_cycle[NEU_STI_CHANNEL_COUNTS]; /** stimulation times will be executed. */
|
||||
|
||||
// sti_tx[0~7] is current stimulate
|
||||
// sti_tx[8] assign to voltage mode channel. */
|
||||
uint16_t sti_t1[NEU_STI_CHANNEL_COUNTS]; /**< first stimulation pulse duration, it can't be 0. */
|
||||
uint16_t sti_t2[NEU_STI_CHANNEL_COUNTS]; /**< interval between biphasic pulses. */
|
||||
uint16_t sti_t3[NEU_STI_CHANNEL_COUNTS]; /**< second stimulation pulse duration. */
|
||||
uint32_t sti_t4[NEU_STI_CHANNEL_COUNTS]; /**< discharge time per stimulation. */
|
||||
uint16_t sti_t5[NEU_STI_CHANNEL_COUNTS]; /**< discharge time after final stimulation. */
|
||||
bool sti_mode; /**< if true: continuous mode, else limited mode. */
|
||||
bool sti_h_bridge; /**< if true: enable h bridge, else single ended. */
|
||||
bool sti_ref; /**< if true: reference cell body to gnd, else single ended is used. */
|
||||
|
||||
uint16_t current_sti_polarity; /**<
|
||||
* default : low side.
|
||||
* define which channel is high side or low side.
|
||||
*/
|
||||
uint8_t voltage_sti_channel; /**<
|
||||
* voltage_channel[7:4] represent pmos channel,
|
||||
* voltage_channel[3:0] represent nmos channel
|
||||
*/
|
||||
|
||||
uint8_t amplifier_gain; /**<
|
||||
* parameter table to represent actual amplifier gain
|
||||
* ----------
|
||||
* | bit |mean|
|
||||
* ----------
|
||||
* |0b00 | 100|
|
||||
* ----------
|
||||
* |0b01 | 400|
|
||||
* ----------
|
||||
* |0b10 | 800|
|
||||
* -----------
|
||||
* |0b11 | 25 |
|
||||
* -----------
|
||||
*/
|
||||
/**< these parameter define the bias voltage of amplifier. */
|
||||
uint8_t vgrp;
|
||||
uint8_t vgrn;
|
||||
uint8_t vgr_int_old;
|
||||
uint8_t vgr_intp;
|
||||
uint8_t vgr_intn;
|
||||
|
||||
uint8_t ins_opcode; /**< check instruction opcode which is transmitted to DBS. */
|
||||
|
||||
uint8_t voltage_sti_amplitude; /**< voltage mode stimulation amplitude control. */
|
||||
|
||||
uint16_t arbitrary_index; /**< this index to keep address of arbitrary data we have already stored. */
|
||||
|
||||
uint16_t arbitrary_en; /**< if true: enable arbitrary mode stimulation. */
|
||||
uint16_t recording_channel; /**< recording_channel[17] represent enabling channel 17. */
|
||||
|
||||
uint16_t sti_amplitude_h; /**< positive side amplitude. */
|
||||
uint16_t sti_amplitude_l; /**< negative side amplitude. */
|
||||
|
||||
uint16_t sys_clk_ratio; /**< frequency divider ratio for digital core clock. */
|
||||
uint16_t adc_clock_ratio; /**< frequency divider ratio for adc clock. */
|
||||
uint16_t sti_clock_ratio; /**< frequency divider ratio for stimulation clock. */
|
||||
uint16_t chopper_ratio; /**< freqeuncy divider for chopper. */
|
||||
|
||||
uint16_t sti_channel; /**<
|
||||
* if stimulation[7] == true, stimulation channel 7 is enabled .
|
||||
* if stimulation[4] == true. stimulation channel 4 is enabled .
|
||||
*/
|
||||
|
||||
uint8_t sti_ch_config_done; // number of stimulate channel which is config done
|
||||
|
||||
} INSTRUCTION = {0};
|
||||
|
||||
/**
|
||||
* @brief:
|
||||
* manage which operation to be conducted
|
||||
*/
|
||||
struct HEADSTAGE_STATE {
|
||||
uint16_t state;
|
||||
|
||||
uint8_t config_type;
|
||||
|
||||
uint8_t index;
|
||||
} NEULIVE_STATE = {0};
|
||||
|
||||
#endif
|
||||
+17
-15
@@ -82,6 +82,7 @@ static uint16_t headstage_led_set_buffer(uint16_t *ins_buf, uint8_t repeat, LEDP
|
||||
#define COLOR_BLUE 5
|
||||
#define COLOR_CYAN 6
|
||||
#define COLOR_MAGENTA 7
|
||||
#define COLOR_PURPLE 8
|
||||
#define COLOR_WHITE 9
|
||||
// clang-format on
|
||||
|
||||
@@ -93,7 +94,7 @@ static uint8_t headstage_led_set_color(uint16_t *ins_buf, uint8_t repeat, uint8_
|
||||
parameter = (LEDParameter){.luminance = 0xE1, .red = 0xFF, .green = 0x00, .blue = 0x00};
|
||||
break;
|
||||
case COLOR_ORANGE:
|
||||
parameter = (LEDParameter){.luminance = 0xE1, .red = 0xFF, .green = 0x03, .blue = 0x00};
|
||||
parameter = (LEDParameter){.luminance = 0xE1, .red = 0xFF, .green = 0x98, .blue = 0x00};
|
||||
break;
|
||||
case COLOR_YELLOW:
|
||||
parameter = (LEDParameter){.luminance = 0xE1, .red = 0x0F, .green = 0x0F, .blue = 0x00};
|
||||
@@ -113,6 +114,9 @@ static uint8_t headstage_led_set_color(uint16_t *ins_buf, uint8_t repeat, uint8_
|
||||
case COLOR_WHITE:
|
||||
parameter = (LEDParameter){.luminance = 0xE1, .red = 0x0F, .green = 0x7F, .blue = 0x1F};
|
||||
break;
|
||||
case COLOR_PURPLE:
|
||||
parameter = (LEDParameter){.luminance = 0xE1, .red = 0x7F, .green = 0x0F, .blue = 0x7F};
|
||||
break;
|
||||
default:
|
||||
case COLOR_BLACK:
|
||||
parameter = (LEDParameter){.luminance = 0x00, .red = 0x00, .green = 0x00, .blue = 0x00};
|
||||
@@ -192,38 +196,36 @@ static void headstage_led_color(uint8_t color) {
|
||||
==== LED implement (GPIO) ====
|
||||
============================*/
|
||||
|
||||
#ifdef BOOSTXL_CC2650MA
|
||||
#ifdef HEADSTAGE_UNI_H
|
||||
#define HEADSTAGE_LED_USE_GPIO
|
||||
#endif
|
||||
|
||||
#ifdef HEADSTAGE_LED_USE_GPIO
|
||||
#include "headstage_pin.h"
|
||||
#include "headstage_pin.h"
|
||||
/*
|
||||
every 400us to transmit spi data
|
||||
*/
|
||||
|
||||
static void headstage_led_spi_transmit (){
|
||||
for(int8_t i = 0; i < 8; i++) {
|
||||
static void headstage_led_spi_transmit() {
|
||||
for (int8_t i = 0; i < 8; i++) {
|
||||
uint16_t d = headstage_spi_led_txbuf[i];
|
||||
for(int8_t j = 15; j >= 0; j--){
|
||||
int16_t v = (d & (1 << j)); // why check > 0 or not
|
||||
bool SET_LED = (v > 0) ? 1 : 0;
|
||||
headstage_pin_output(PIN_LED_CLK,1);
|
||||
CPUdelay( 16*400 );// 2500hz
|
||||
headstage_pin_output(PIN_LED_OUT, SET_LED);
|
||||
for (int8_t j = 15; j >= 0; j--) {
|
||||
int16_t v = (d & (1 << j)); // why check > 0 or not
|
||||
bool SET_LED = (v > 0) ? 1 : 0;
|
||||
headstage_pin_output(PIN_LED_CLK, 0);
|
||||
CPUdelay( 16*400 );// 2500hz
|
||||
CPUdelay(16 * 400); // 2500hz
|
||||
headstage_pin_output(PIN_LED_OUT, SET_LED);
|
||||
headstage_pin_output(PIN_LED_CLK, 1);
|
||||
CPUdelay(16 * 400); // 2500hz
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void headstage_led_spi_color (uint8_t color){
|
||||
static void headstage_led_spi_color(uint8_t color) {
|
||||
headstage_led_set_color(headstage_spi_led_txbuf, SPI_LED_REPEAT, color);
|
||||
headstage_led_spi_transmit();
|
||||
}
|
||||
|
||||
|
||||
#endif // HEADSTAGE_LED_USE_GPIO
|
||||
|
||||
#endif // HEADSTAGE_LED_H
|
||||
|
||||
|
||||
+281
@@ -0,0 +1,281 @@
|
||||
|
||||
|
||||
#ifndef HEADSTAGE_H
|
||||
#error "headstage.h not include"
|
||||
#endif
|
||||
|
||||
#ifndef HEADSTAGE_NEU_H
|
||||
#define HEADSTAGE_NEU_H
|
||||
|
||||
/**
|
||||
* @file headstage_neu.h
|
||||
*
|
||||
* Copyright (c) 2019. BioPro. Scientific.
|
||||
*
|
||||
* NEULIVE 2.0 firmware structure:
|
||||
* ==============================
|
||||
* variable:
|
||||
* ---------
|
||||
* headstage_parameter_table;
|
||||
* headstage_state;
|
||||
*
|
||||
* instruction procedure:
|
||||
* ----------------------
|
||||
* address 46 for enabling stimulation
|
||||
* only one stimulation channel can be enabled
|
||||
*
|
||||
* Real Instruction Set (RIS) format : RIS + NULL + ID + LENGTH + [DATA] * length
|
||||
*
|
||||
* There are three types of Real Instruction Set : 1. stimulation parameter 2. recording parameter 3. arbitrary waveform parameter
|
||||
*
|
||||
* NEU_STI_PARAM :
|
||||
* Data : length = 107bits + 3bits header -> 14bytes
|
||||
*
|
||||
* | 1bit| 1bit| 1bit| 1bit| 4bits| 4bits|
|
||||
* | volt mode / curr mode | conti / limited | h bridge| ref_mode| p_ch| n_ch|
|
||||
*
|
||||
* | 8bits| 10bits| 10bits| 10bits| 10bits| 10bits| 10bits| 10bits| 16bits|
|
||||
* | sti_cycles| high side amplitude| low side amplitude| sti_t1| sti_t2| sti_t3| sti_t4| sti_t5| sti_clock_ratio|
|
||||
*
|
||||
* NEU_REC_PARAM :
|
||||
* Data : length = 75bits + 3bits header -> 10bytes
|
||||
*
|
||||
* | 5bits| 5bits| 5bits| 5bits| 5bits| 16bits| 16bits| 16bits| 2bits| 2bits| 16bits|
|
||||
* | vgrp| vgrn| vgr_int_old| vgr_intp| vgr_intn| recording_channel| sampling rate| sys_clk_ratio| amp gain|don't care| chopper ration|
|
||||
*
|
||||
* NEU_ARB_PARAM :
|
||||
* if arbitrary is enabled, write arbitrary data into register tables in DBS chip
|
||||
* Data : length = 8 * 10 points data
|
||||
*
|
||||
* | 8bits| 8bits| 8bits| 8bits| 8bits| 8bits| 8bits| 8bits| 8bits| 8bits|
|
||||
* | p1| p2| p3| p4| p5| p6| p7| p8| p9| p10|
|
||||
*
|
||||
*
|
||||
* system control flow :
|
||||
* ---------------------
|
||||
* 1. Write parameter into register table :
|
||||
* Real Instruction Set(NEU_STI_PARAM) -> decode instruction -> assign to corresponding variable -> spi transaction -> write into register table -> done and begin to sample data
|
||||
* assign used parameter or all the parameter
|
||||
*
|
||||
* 2. Write arbitrary waveform into register table :
|
||||
* Real Instruction Set(NEU_ARB_PARAM) -> decode instruction -> assign to corresponding variable -> spi transaction -> write into register table -> done and return
|
||||
*
|
||||
* 3. Read parameter by index : (development mode)
|
||||
* solution 1: return raw data to website and checked by engineer.
|
||||
* solution 2: check by a specific function.
|
||||
*
|
||||
* step : interrupt -> state back to IDLE -> CDR -> spi transaction -> read corresponding variable
|
||||
* Command Instruction Set(CDR) -> decode instruction -> read from register table -> check return value with corresponding variable
|
||||
* -> correct: return to recording and stimulation ; false: return variable and check with UI
|
||||
*
|
||||
* 4. Read Battery power : should be a periodic event to sense battery life. todo: how to estimate the remain power of battery
|
||||
* Controller Instruction Set(CIS_VOLT) -> using cc2650 adc driver to sample battery voltage -> convert it and write into charateristic value 2
|
||||
*
|
||||
*
|
||||
*
|
||||
* function:
|
||||
* ---------
|
||||
* headstage_init():
|
||||
* Initial spi, gpio, pwm, etc.
|
||||
*
|
||||
* headstage_neu_event():
|
||||
* main event to deal with the data from DBS and data to control box
|
||||
*
|
||||
* headstage_update_vis_instruction():
|
||||
* decode virtual instruction and dispatch
|
||||
*
|
||||
* headstage_update_ris_instruction():
|
||||
* decode real instruction and dispatch
|
||||
*
|
||||
* headstage_spi_callback():
|
||||
* Once spi transation is done, this function will be called and it will post a semaphore
|
||||
*
|
||||
* headstage_neu_state_spi():
|
||||
* after a semaphore is posted, it will execute different operation.
|
||||
*
|
||||
* headstage_data_append_notify_buffer():
|
||||
* fill the amplifier recording data into bluetooth transmission buffer
|
||||
*
|
||||
* build_neu_ins_config():
|
||||
* build the instruction and assign into spi transmission buffer
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
#define DEVICE_NAME "PesudoCon"
|
||||
#define MAJOR_PRODUCT_NUMBER 1 // neulive, 0 is Elite
|
||||
#define MINOR_PRODUCT_NUMBER 1 //
|
||||
#define MAJOR_VERSION_NUMBER 2 // neulive 2.0
|
||||
#define MINOR_VERSION_NUMBER 0
|
||||
|
||||
static void FlushNotify();
|
||||
|
||||
/***********************************
|
||||
* instruction building macro *
|
||||
***********************************/
|
||||
|
||||
/**
|
||||
* @fn build_instruction
|
||||
*/
|
||||
|
||||
#define build_instruction(read_write, type, value) \
|
||||
({ \
|
||||
uint32_t __r__w = (read_write) ? 0x80000000 : 0x00000000; \
|
||||
uint32_t __t = type; \
|
||||
})
|
||||
/**
|
||||
* @fn tx_put_u24
|
||||
*/
|
||||
|
||||
#define tx_put_u24(index, value) \
|
||||
do { \
|
||||
uint32_t __i = (uint32_t)(index); \
|
||||
uint32_t __v = (uint32_t)(value); \
|
||||
spi_txbuf[__i++] = (__v >> 16) & 0xff; \
|
||||
spi_txbuf[__i++] = (__v >> 8) & 0xff; \
|
||||
spi_txbuf[__i++] = (__v)&0xff; \
|
||||
} while (0)
|
||||
|
||||
/**
|
||||
* @fn rx_get_u24
|
||||
*/
|
||||
#define rx_get_u24(index) \
|
||||
({ \
|
||||
uint32_t __i = index; \
|
||||
uint8_t __a = spi_rxbuf[__i++]; \
|
||||
uint8_t __b = spi_rxbuf[__i++]; \
|
||||
uint8_t __c = spi_rxbuf[__i++]; \
|
||||
(__a << 16) | (__b << 8) | __c; \
|
||||
})
|
||||
|
||||
/***************
|
||||
* MACRO *
|
||||
***************/
|
||||
|
||||
/** define cis */
|
||||
//#define CIS_READ_PARAM 0x30
|
||||
|
||||
/** event */
|
||||
#define EVT_NEU_SPI 0x0001 /**< spi transaction event */
|
||||
#define EVT_NEU_LED 0x0002 /**< set led event */
|
||||
#define EVT_NEU_CHECK 0x0004 /**< check neulive single instruction */
|
||||
#define EVT_NEU_REG_SPI 0x0008 /** register spi event */
|
||||
|
||||
// clang-format on
|
||||
|
||||
/*****************
|
||||
* include *
|
||||
*****************/
|
||||
#include "time.h"
|
||||
#include "headstage_instruction.h"
|
||||
#include "neu/headstage_pin.h"
|
||||
#include "headstage_arm.h"
|
||||
#include "headstage_swi.h"
|
||||
#include "headstage_watchdog.h"
|
||||
#include "neu/headstage_adc.h" /**< to be implemented to monitor battery voltage */
|
||||
//#include "neu/headstage_reset.h"
|
||||
#include "headstage_batt.h"
|
||||
#include "headstage_BitCount.h"
|
||||
#include "headstage_cali_CIS.h"
|
||||
#include "headstage_version.h"
|
||||
#include "headstage_power.h"
|
||||
#include "string.h"
|
||||
#include "pesudo_controller/pesudo_pi_uart.h"
|
||||
|
||||
/**
|
||||
* @fn headstage_init
|
||||
*
|
||||
* description: initial all the object we need to build
|
||||
*/
|
||||
|
||||
static void headstage_init(){
|
||||
headstage_pin_open();
|
||||
pesudo_pi_uart_init();
|
||||
|
||||
headstage_pin_output(Board_GLED, Board_LED_ON);
|
||||
// turn off neulive if battery too low
|
||||
// #define THREE_POINT_THREE_VOLT 845
|
||||
// if (AONBatMonBatteryVoltageGet() < THREE_POINT_THREE_VOLT){
|
||||
// headstage_led_color(COLOR_BLACK);
|
||||
// headstage_power_shutdown();
|
||||
// }
|
||||
// #undef THREE_POINT_THREE_VOLT
|
||||
}
|
||||
|
||||
/**
|
||||
* @fn headstage_neu_event
|
||||
*
|
||||
* description: event dispatcher to corresponding function
|
||||
*/
|
||||
|
||||
static void headstage_neu_event() {
|
||||
if (flag_mask(EVT_NEU_SPI)) {
|
||||
flag_disable(EVT_NEU_SPI);
|
||||
// headstage_neu_state_spi();
|
||||
}
|
||||
|
||||
if (flag_mask(EVT_NEU_LED)) {
|
||||
flag_disable(EVT_NEU_LED); /** reserved to set led power and set color manually */
|
||||
}
|
||||
|
||||
if (EVENT_MASK == 0) {
|
||||
// fast return
|
||||
}
|
||||
|
||||
if (flag_mask(EVT_DISCONNECTED)) {
|
||||
ConnectState = false;
|
||||
headstage_update_vis_instruction(VIS_INT);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @fn headstage_update_ris_instruction
|
||||
*
|
||||
* description: decode real instruction to set corresponding parameter
|
||||
*/
|
||||
static void headstage_update_ris_instruction(uint8_t ins_len, uint8_t* instruction) {
|
||||
switch (instruction[0]) {
|
||||
case RIS_PREPARE_SEND:{
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
case RIS_SEND_UART:{
|
||||
send_uart(instruction+1, 10);
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @fn headstage_update_vis_instruction
|
||||
*
|
||||
* description: decode virtual instruction to start, stop, reset, etc.
|
||||
*/
|
||||
|
||||
static void headstage_update_vis_instruction(uint8_t vis_oper) {
|
||||
switch (vis_oper) {
|
||||
default: {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @fn headstage_update_cis_instruction
|
||||
*/
|
||||
static void headstage_update_cis_instruction(uint8_t cis_oper) {
|
||||
switch (cis_oper) {
|
||||
|
||||
default: {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
+54
-26
@@ -31,8 +31,7 @@ optional implement
|
||||
|
||||
#include <xdc/runtime/Timestamp.h>
|
||||
|
||||
#define headstage_time_stamp_us() (32 * Timestamp_get32())
|
||||
#define headstage_time_stamp_ms() (Timestamp_get32() / 32)
|
||||
#define headstage_time_stamp_us() (Timestamp_get32() / 2)
|
||||
|
||||
/*========================
|
||||
==== notify function ====
|
||||
@@ -45,32 +44,61 @@ static uint8_t headstage_notify_buffer[BLE_NOT_BUFF_SIZE] = {0};
|
||||
*
|
||||
*/
|
||||
static void headstage_notify_send() {
|
||||
#ifdef HEADSTAGE_NOTIFY_USE_ATT
|
||||
uint16_t buffer_size = BLE_NOT_BUFF_SIZE;
|
||||
uint8_t *value = (uint8 *)GATT_bm_alloc(CONNECT_HANDLE, ATT_HANDLE_VALUE_NOTI, GATT_MAX_MTU, &buffer_size);
|
||||
|
||||
if (value != NULL) {
|
||||
memcpy(value, headstage_notify_buffer, buffer_size);
|
||||
|
||||
attHandleValueNoti_t notify =
|
||||
// clang-format off
|
||||
.handle = 0x1E,
|
||||
.len = buffer_size,
|
||||
.pValue = value
|
||||
// clang-format on
|
||||
};
|
||||
|
||||
if (GATT_Notification(CONNECT_HANDLE, ¬ify, 0) != SUCCESS) {
|
||||
// notify not send
|
||||
GATT_bm_free((gattMsg_t *)¬ify, ATT_HANDLE_VALUE_NOTI);
|
||||
}
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
//#ifdef HEADSTAGE_NOTIFY_USE_ATT
|
||||
// uint16_t buffer_size = BLE_NOT_BUFF_SIZE;
|
||||
// uint8_t *value = (uint8 *)GATT_bm_alloc(CONNECT_HANDLE, ATT_HANDLE_VALUE_NOTI, GATT_MAX_MTU, &buffer_size);
|
||||
//
|
||||
// if (value != NULL) {
|
||||
// memcpy(value, headstage_notify_buffer, buffer_size);
|
||||
//
|
||||
// attHandleValueNoti_t notify = {
|
||||
// // clang-format off
|
||||
// .handle = 0x1E,
|
||||
// .len = buffer_size,
|
||||
// .pValue = value
|
||||
// // clang-format on
|
||||
// };
|
||||
//
|
||||
// if (GATT_Notification(CONNECT_HANDLE, ¬ify, 0) != SUCCESS) {
|
||||
// // notify not send
|
||||
// GATT_bm_free((gattMsg_t *)¬ify, ATT_HANDLE_VALUE_NOTI);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
//#else
|
||||
SimpleProfile_SetParameter(BLE_NOT_BUFF_CHAR, BLE_NOT_BUFF_SIZE, headstage_notify_buffer);
|
||||
|
||||
#endif
|
||||
//#endif
|
||||
}
|
||||
|
||||
/*
|
||||
// | | 1 | 2 | 3 |
|
||||
// 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2
|
||||
// -----------------------------------------------------------------
|
||||
// | header | length = N |
|
||||
// | timestamp |
|
||||
// | time delta |
|
||||
// | data [0] | data[1] |
|
||||
// | ............................ | data[15] |
|
||||
*/
|
||||
static void FlushNotify(){
|
||||
// headstage_notify_buffer[0] = INSTRUCTION.chip_id;
|
||||
headstage_notify_buffer[0] = CHIP_ID;
|
||||
headstage_notify_buffer[1] = 1; // data length = 1 when flushing notify
|
||||
|
||||
for (int i = 2; i < BLE_NOT_BUFF_SIZE ; i++) {
|
||||
headstage_notify_buffer[i] = 0;
|
||||
}
|
||||
|
||||
// 1 Timestamp = 32 usec; 31 Timestamp ~= 1 msec
|
||||
uint32_t flush_time_stamp = 0; // msec
|
||||
|
||||
headstage_notify_buffer[2] = flush_time_stamp & 0xFF;
|
||||
headstage_notify_buffer[3] = (flush_time_stamp >> 8) & 0xFF;
|
||||
headstage_notify_buffer[4] = (flush_time_stamp >> 16) & 0xFF;
|
||||
headstage_notify_buffer[5] = (flush_time_stamp >> 24) & 0xFF;
|
||||
|
||||
SimpleProfile_SetParameter(BLE_NOT_BUFF_CHAR, BLE_NOT_BUFF_SIZE, headstage_notify_buffer);
|
||||
}
|
||||
|
||||
#endif // HEADSTAGE_NOTIFY_H
|
||||
|
||||
+4
@@ -14,6 +14,10 @@
|
||||
#include "zm/headstage_pin.h"
|
||||
#elif defined(HEADSTAGE_STI_H)
|
||||
#include "sti/headstage_pin.h"
|
||||
#elif defined(HEADSTAGE_NEU_H)
|
||||
#include "neu/headstage_pin.h"
|
||||
#elif defined(HEADSTAGE_TEST_DATA_H)
|
||||
#include "uni/headstage_pin.h"
|
||||
#else
|
||||
|
||||
#error "headstage_pin headstage_pin_configuration not defined"
|
||||
|
||||
+1
-1
@@ -4,6 +4,6 @@
|
||||
#include <ti/drivers/Power.h>
|
||||
#include <ti/drivers/power/PowerCC26XX.h>
|
||||
|
||||
#define headstage_power_shutdown() Power_shutdown(0, 0)
|
||||
#define headstage_power_shutdown() Power_shutdown(NULL, 0)
|
||||
|
||||
#endif // HEADSTAGE_POWER_H
|
||||
|
||||
+12
-1
@@ -11,6 +11,9 @@
|
||||
/*
|
||||
* SPI parameter and function declaration
|
||||
*/
|
||||
|
||||
static uint8_t spi_rxbuf[120] = {0};
|
||||
|
||||
static SPI_Handle spi_handle = NULL;
|
||||
static SPI_Transaction spi_transaction;
|
||||
|
||||
@@ -28,7 +31,7 @@ static SPI_Transaction spi_transaction;
|
||||
spi_parameter.bitRate = 12000000; \
|
||||
spi_parameter.transferTimeout = 1000; \
|
||||
spi_parameter.dataSize = 8; \
|
||||
spi_parameter.frameFormat = SPI_POL0_PHA0; \
|
||||
spi_parameter.frameFormat = SPI_POL0_PHA1; \
|
||||
spi_handle = SPI_open(Board_SPI0, &spi_parameter); \
|
||||
} while (0)
|
||||
|
||||
@@ -40,4 +43,12 @@ static SPI_Transaction spi_transaction;
|
||||
SPI_transfer(spi_handle, &spi_transaction); \
|
||||
})
|
||||
|
||||
#define headstage_spi_test_transaction(len) \
|
||||
({ \
|
||||
spi_transaction.txBuf = NULL; \
|
||||
spi_transaction.rxBuf = (spi_rxbuf); \
|
||||
spi_transaction.count = (len); \
|
||||
SPI_transfer(spi_handle, &spi_transaction); \
|
||||
})
|
||||
|
||||
#endif // HEADSTAGE_SPI_H
|
||||
|
||||
+18
-18
@@ -199,24 +199,24 @@ static void headstage_sti_event() {
|
||||
==== function implement ====
|
||||
==========================*/
|
||||
|
||||
static void headstage_init() {
|
||||
headstage_pin_open();
|
||||
|
||||
// init global stable value
|
||||
Types_FreqHz cpu_freq;
|
||||
BIOS_getCpuFreq(&cpu_freq);
|
||||
cpu_frequency = cpu_freq.lo;
|
||||
|
||||
headstage_gptimer_open();
|
||||
|
||||
headstage_pwm_open();
|
||||
|
||||
headstage_pin_output(PIN_POL0, 0);
|
||||
headstage_pin_output(PIN_POL1, 0);
|
||||
headstage_pin_output(PIN_PON0, 0);
|
||||
headstage_pin_output(PIN_PON1, 0);
|
||||
headstage_pin_output(PIN_TPS, 1);
|
||||
}
|
||||
//static void headstage_init() {
|
||||
// headstage_pin_open();
|
||||
//
|
||||
// // init global stable value
|
||||
// Types_FreqHz cpu_freq;
|
||||
// BIOS_getCpuFreq(&cpu_freq);
|
||||
// cpu_frequency = cpu_freq.lo;
|
||||
//
|
||||
// headstage_gptimer_open();
|
||||
//
|
||||
// headstage_pwm_open();
|
||||
//
|
||||
// headstage_pin_output(PIN_POL0, 0);
|
||||
// headstage_pin_output(PIN_POL1, 0);
|
||||
// headstage_pin_output(PIN_PON0, 0);
|
||||
// headstage_pin_output(PIN_PON1, 0);
|
||||
// headstage_pin_output(PIN_TPS, 1);
|
||||
//}
|
||||
|
||||
static void headstage_update_ris_instruction(uint8_t ins_len, uint8_t *instruction) {
|
||||
uint8_t ins_oper = instruction[0] & 0xE0;
|
||||
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
|
||||
#ifndef STI_CALI_H
|
||||
#define STI_CALI_H
|
||||
|
||||
#include "headstage_cali_sti.h"
|
||||
|
||||
static uint16_t UserCode2StiCode(uint16_t amp, uint8_t positive_ch){
|
||||
// get real current value (uA)
|
||||
uint32_t sti_code, real_amp = amp * 5;
|
||||
|
||||
if(StiCaliTable.p_ch.coefficient == 10000 && StiCaliTable.p_ch.offset == 0){
|
||||
return amp;
|
||||
}
|
||||
if(StiCaliTable.n_ch.coefficient == 10000 && StiCaliTable.n_ch.offset == 0){
|
||||
return amp;
|
||||
}
|
||||
|
||||
// trans into sti code
|
||||
if(positive_ch){
|
||||
sti_code = StiCaliTable.p_ch.coefficient * real_amp + StiCaliTable.p_ch.offset;
|
||||
}
|
||||
else{
|
||||
sti_code = StiCaliTable.n_ch.coefficient * real_amp + StiCaliTable.n_ch.offset;
|
||||
}
|
||||
|
||||
sti_code = sti_code / 10000;
|
||||
return (uint16_t) (sti_code);
|
||||
}
|
||||
|
||||
#endif
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
|
||||
/**
|
||||
\file headstage_swi.h
|
||||
In order to enable interrupt, hookset function need declaring.
|
||||
reference:ti/tirtos_cc13xx_cc26xx_2_21_01_08/products/bios_6_46_01_38/docs/Bios_User_Guide.pdf
|
||||
*/
|
||||
|
||||
#ifndef HEADSTAGE_SWI_H
|
||||
#define HEADSTAGE_SWI_H
|
||||
|
||||
#include <ti/sysbios/knl/Swi.h>
|
||||
#include <xdc/runtime/Error.h>
|
||||
|
||||
/*
|
||||
software interrupt
|
||||
*/
|
||||
Swi_Handle headstage_swi;
|
||||
|
||||
typedef void (*headstage_swiFxn)(UArg arg0, UArg arg1);
|
||||
|
||||
void headstage_swi_init(headstage_swiFxn callback) {
|
||||
Error_Block eb;
|
||||
Error_init(&eb);
|
||||
headstage_swiFxn my_swi = callback;
|
||||
headstage_swi = Swi_create(my_swi, NULL, &eb);
|
||||
}
|
||||
|
||||
#endif
|
||||
+119
@@ -0,0 +1,119 @@
|
||||
#ifndef HEADSTAGE_H
|
||||
#error "headstage_test_data.h not include"
|
||||
#endif
|
||||
|
||||
#ifndef HEADSTAGE_TEST_DATA_H
|
||||
#define HEADSTAGE_TEST_DATA_H
|
||||
|
||||
/**
|
||||
* @file headstage_test_data.h
|
||||
*
|
||||
* Copyright (c) 2019. BioPro. Scientific
|
||||
*
|
||||
* NEULIVE test structure:
|
||||
*
|
||||
* headstage_init()
|
||||
* headstage_test_event()
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
#define DEVICE_NAME "Neulive-v1.3"
|
||||
#define MAJOR_PRODUCT_NUMBER 1
|
||||
#define MINOR_PRODUCT_NUMBER 1
|
||||
#define MAJOR_VERSION_NUMBER 1
|
||||
#define MINOR_VERSION_NUMBER 3
|
||||
|
||||
|
||||
#include "time.h"
|
||||
#include "headstage_pin.h"
|
||||
#include "headstage_led.h"
|
||||
#include "headstage_notify.h"
|
||||
#include "headstage_batt.h"
|
||||
#include "headstage_gptimer.h"
|
||||
#include "headstage_spi.h"
|
||||
#include "tni/headstage_notify.h"
|
||||
|
||||
static void headstage_test_periodic();
|
||||
|
||||
//static void headstage_init() {
|
||||
// headstage_pin_open();
|
||||
// headstage_spi_open();
|
||||
// headstage_gptimer_open();
|
||||
// headstage_gptimer_set_frequency(1000);
|
||||
//}
|
||||
|
||||
static void headstage_update_ris_instruction(uint8_t ins_len, uint8_t* instruction) {
|
||||
}
|
||||
|
||||
static void headstage_update_vis_instruction(uint8_t ins_oper) {
|
||||
switch (ins_oper) {
|
||||
case VIS_STI:
|
||||
headstage_gptimer_start();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
static void headstage_update_cis_instruction(uint8_t ins_oper) {
|
||||
}
|
||||
|
||||
static void headstage_test_event() {
|
||||
if (flag_mask(EVT_PERIODIC_GPTIMER)) {
|
||||
flag_disable(EVT_PERIODIC_GPTIMER);
|
||||
headstage_test_periodic();
|
||||
}
|
||||
|
||||
if (EVENT_MASK == 0) {
|
||||
// fast return
|
||||
}
|
||||
|
||||
if (flag_mask(EVT_DISCONNECTED)) {
|
||||
headstage_update_vis_instruction(VIS_INT);
|
||||
}
|
||||
}
|
||||
|
||||
static void headstage_append_data( uint8_t* dat_buf) {
|
||||
for (uint8_t i = 0; i < 1 ; i++) {
|
||||
dat_buf[3*i] = ( 0x0f << 4 ) | ( dat_buf[3*i+1] );
|
||||
dat_buf[3*i+1] = dat_buf[3*i+2] ;
|
||||
}
|
||||
}
|
||||
|
||||
static uint8_t headstage_append_notify_data(uint8_t* data_value) {
|
||||
if ( not_buf_offset <= NOT_BUF_OFFSET_INIT) {
|
||||
headstage_notify_set_timestamp();
|
||||
not_buf_offset = NOT_BUF_OFFSET_INIT;
|
||||
}
|
||||
for (uint8_t i = 0; i < 1 ; i++) {
|
||||
headstage_notify_buffer[2*i + not_buf_offset] = data_value[3*i];
|
||||
headstage_notify_buffer[2*i + 1 + not_buf_offset] = data_value[3*i + 1];
|
||||
}
|
||||
not_buf_offset = not_buf_offset + 2;
|
||||
if (not_buf_offset == 200) {
|
||||
uint32_t current = headstage_time_stamp_us();
|
||||
uint32_t time_delta = ((current - not_time_stamp)) & 0xFFFF;
|
||||
|
||||
headstage_notify_buffer[6] = time_delta & 0xFF;
|
||||
headstage_notify_buffer[7] = (time_delta >> 8) & 0xFF;
|
||||
}
|
||||
return not_buf_offset;
|
||||
}
|
||||
|
||||
/**
|
||||
* @fn headstage_test_periodic
|
||||
* description : every 100us sample adc data
|
||||
*/
|
||||
|
||||
static void headstage_test_periodic() {
|
||||
headstage_spi_test_transaction(3);
|
||||
headstage_append_data(spi_rxbuf);
|
||||
uint8_t index = headstage_append_notify_data(spi_rxbuf);
|
||||
if ( index >= 200 ) {
|
||||
headstage_notify_flip_buffer();
|
||||
headstage_notify_send();
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
+8
-8
@@ -196,14 +196,14 @@ static void headstage_tni_event() {
|
||||
==== function implement ====
|
||||
==========================*/
|
||||
|
||||
static void headstage_init() {
|
||||
headstage_pin_open();
|
||||
headstage_spi_open();
|
||||
headstage_gptimer_open();
|
||||
|
||||
headstage_pin_output(PIN_S2P_RST, 0);
|
||||
headstage_pin_output(PIN_P2S_RST, 0);
|
||||
}
|
||||
//static void headstage_init() {
|
||||
// headstage_pin_open();
|
||||
// headstage_spi_open();
|
||||
// headstage_gptimer_open();
|
||||
//
|
||||
// headstage_pin_output(PIN_S2P_RST, 0);
|
||||
// headstage_pin_output(PIN_P2S_RST, 0);
|
||||
//}
|
||||
|
||||
static void headstage_update_ris_instruction(uint8_t ins_len, uint8_t *instruction) {
|
||||
uint8_t header = instruction[0] & 0xE0;
|
||||
|
||||
+519
-447
File diff suppressed because it is too large
Load Diff
+44
@@ -0,0 +1,44 @@
|
||||
|
||||
#ifndef VERSION_DATE
|
||||
#define VERSION_DATE
|
||||
|
||||
#define VERSION_DATE_YEAR 20
|
||||
#define VERSION_DATE_MONTH 5
|
||||
#define VERSION_DATE_DAY 20
|
||||
#define VERSION_DATE_HOUR 17
|
||||
#define VERSION_DATE_MINUTE 27
|
||||
|
||||
// this is NOT the version hash !!
|
||||
// it's the last version hash
|
||||
#define VERSION_HASH eb4b14af59afe8af309a843a93f87cacc8c68072
|
||||
#define VERSION_GIT_BRANCH central_pseudo_controller
|
||||
|
||||
static void get_board_name(char *board_name_ch, uint8 *board_name_int, uint8 name_size){
|
||||
uint8 name_offset = 18;
|
||||
|
||||
for(int i=0, k=0; i<name_size+1 ; i++){
|
||||
if('0' <= board_name_ch[name_offset + i] && board_name_ch[name_offset + i] <= '9'){
|
||||
board_name_int[k++] = board_name_ch[name_offset + i] - '0';
|
||||
}
|
||||
else if('A' <= board_name_ch[name_offset + i] && board_name_ch[name_offset + i] <= 'F'){
|
||||
board_name_int[k++] = board_name_ch[name_offset + i] - 'A' + 10;
|
||||
}
|
||||
else if(board_name_ch[name_offset + i] == '_'){
|
||||
continue;
|
||||
}
|
||||
else{
|
||||
// error occur
|
||||
for(int j=0 ; j<name_size/2 ; j++){
|
||||
board_name_int[j] = 0xFF;
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
for(int i=0 ; i<name_size/2 ; i++){
|
||||
board_name_int[i] = (board_name_int[2*i] << 4) | (board_name_int[2*i + 1]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
+17
-17
@@ -221,23 +221,23 @@ static void headstage_dac_send(uint8_t command, uint8_t p1, uint8_t p2) {
|
||||
==== function implement ====
|
||||
==========================*/
|
||||
|
||||
static void headstage_init() {
|
||||
headstage_pin_open();
|
||||
headstage_led_open();
|
||||
headstage_spi_open();
|
||||
|
||||
PIN_registerIntCb(headstage_pins_handle, &headstage_zm_pin_callback);
|
||||
PIN_setInterrupt(headstage_pins_handle, PIN_SWITCH_ON | PIN_IRQ_NEGEDGE);
|
||||
|
||||
headstage_pin_output(PIN_SHUTDOWN_6994, 1);
|
||||
headstage_pin_output(PIN_ENABLE_V05, 1);
|
||||
headstage_pin_output(PIN_ENABLE_V10, 1);
|
||||
|
||||
headstage_pin_output(PIN_ADC_CS, 1);
|
||||
headstage_pin_output(PIN_DAC_CS, 1);
|
||||
|
||||
INSTRUCTION.mode = MODE_POWER_ON;
|
||||
}
|
||||
//static void headstage_init() {
|
||||
// headstage_pin_open();
|
||||
// headstage_led_open();
|
||||
// headstage_spi_open();
|
||||
//
|
||||
// PIN_registerIntCb(headstage_pins_handle, &headstage_zm_pin_callback);
|
||||
// PIN_setInterrupt(headstage_pins_handle, PIN_SWITCH_ON | PIN_IRQ_NEGEDGE);
|
||||
//
|
||||
// headstage_pin_output(PIN_SHUTDOWN_6994, 1);
|
||||
// headstage_pin_output(PIN_ENABLE_V05, 1);
|
||||
// headstage_pin_output(PIN_ENABLE_V10, 1);
|
||||
//
|
||||
// headstage_pin_output(PIN_ADC_CS, 1);
|
||||
// headstage_pin_output(PIN_DAC_CS, 1);
|
||||
//
|
||||
// INSTRUCTION.mode = MODE_POWER_ON;
|
||||
//}
|
||||
|
||||
static void headstage_zm_turn(uint8_t on_off) {
|
||||
if (on_off) {
|
||||
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
#ifndef HEADSTAGE_ADC_H
|
||||
#define HEADSTAGE_ADC_H
|
||||
#endif
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
|
||||
#ifndef CHECK_MOSI
|
||||
#define CHECK_MOSI
|
||||
|
||||
#include "headstage_led.h"
|
||||
/*
|
||||
* MOSI channel meet with INSTRUCTION.recording_channel ?
|
||||
*/
|
||||
static uint8_t CheckMOSI(uint8_t* MOSI){
|
||||
uint8_t ch = MOSI[0];
|
||||
uint16_t selectCh = 0x0001 << ch;
|
||||
|
||||
if(selectCh & INSTRUCTION.recording_channel){
|
||||
return 1;
|
||||
}
|
||||
else{
|
||||
// headstage_led_color(COLOR_RED);
|
||||
// headstage_led_color(COLOR_GREEN);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
#ifndef NEULIVE_2P0
|
||||
#define NEULIVE_2P0
|
||||
|
||||
/*============================
|
||||
==== product information ====
|
||||
===========================*/
|
||||
|
||||
#define DEVICE_NAME "Neulive-v2.0"
|
||||
#define MAJOR_PRODUCT_NUMBER 1
|
||||
#define MINOR_PRODUCT_NUMBER 1
|
||||
#define MAJOR_VERSION_NUMBER 2
|
||||
#define MINOR_VERSION_NUMBER 0
|
||||
|
||||
#endif
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
|
||||
#ifndef HEADSTAGE_NOTIFY_TDC4VC_H
|
||||
#define HEADSTAGE_NOTIFY_TDC4VC_H
|
||||
|
||||
#ifndef HEADSTAGE_NOTIFY_H
|
||||
#error "headstage/headstage_notify.h not included"
|
||||
#endif
|
||||
|
||||
#define NOT_BUF_OFFSET_INIT 8
|
||||
|
||||
static uint8_t not_buf_offset = NOT_BUF_OFFSET_INIT;
|
||||
static uint32_t not_time_stamp = 0;
|
||||
|
||||
static void headstage_notify_set_timestamp() {
|
||||
not_time_stamp = headstage_time_stamp_us();
|
||||
|
||||
headstage_notify_buffer[2] = not_time_stamp & 0xFF;
|
||||
headstage_notify_buffer[3] = (not_time_stamp >> 8) & 0xFF;
|
||||
headstage_notify_buffer[4] = (not_time_stamp >> 16) & 0xFF;
|
||||
headstage_notify_buffer[5] = (not_time_stamp >> 24) & 0xFF;
|
||||
}
|
||||
|
||||
static void headstage_notify_flip_buffer() {
|
||||
uint8_t data_count = (not_buf_offset - NOT_BUF_OFFSET_INIT) / 3;
|
||||
|
||||
headstage_notify_buffer[0] = CHIP_ID;
|
||||
headstage_notify_buffer[1] = data_count;
|
||||
|
||||
not_buf_offset = NOT_BUF_OFFSET_INIT;
|
||||
}
|
||||
|
||||
static uint8_t headstage_notify_append_data(uint8_t *data_value) {
|
||||
if (not_buf_offset <= NOT_BUF_OFFSET_INIT) {
|
||||
headstage_notify_set_timestamp();
|
||||
not_buf_offset = NOT_BUF_OFFSET_INIT;
|
||||
}
|
||||
|
||||
if (data_value == NULL) {
|
||||
headstage_notify_buffer[not_buf_offset++] = 0x00;
|
||||
headstage_notify_buffer[not_buf_offset++] = 0x00;
|
||||
headstage_notify_buffer[not_buf_offset++] = 0x00;
|
||||
} else {
|
||||
headstage_notify_buffer[not_buf_offset++] = data_value[0];
|
||||
headstage_notify_buffer[not_buf_offset++] = data_value[1];
|
||||
headstage_notify_buffer[not_buf_offset++] = data_value[2];
|
||||
}
|
||||
|
||||
if (not_buf_offset >= BLE_NOT_BUFF_SIZE - 1) {
|
||||
uint32_t current = headstage_time_stamp_us();
|
||||
uint32_t time_delta = ((current - not_time_stamp)) & 0xFFFF;
|
||||
|
||||
headstage_notify_buffer[6] = time_delta & 0xFF;
|
||||
headstage_notify_buffer[7] = (time_delta >> 8) & 0xFF;
|
||||
}
|
||||
|
||||
uint8_t ret = not_buf_offset;
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
#endif // HEADSTAGE_NOTIFY_TDC4VAF2_H
|
||||
+86
@@ -0,0 +1,86 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
#ifndef HEADSTAGE_PIN_NEU_H
|
||||
#define HEADSTAGE_PIN_NEU_H
|
||||
|
||||
#if defined(CC2650_LAUNCHXL)
|
||||
|
||||
// clang-format off
|
||||
#define Board_RLED IOID_6
|
||||
#define Board_GLED IOID_7
|
||||
#define Board_WAKE_CENTRAL IOID_8
|
||||
|
||||
// clang-format on
|
||||
|
||||
#elif defined(BOOSTXL_CC2650MA)
|
||||
|
||||
// clang-format off
|
||||
|
||||
#define PIN_LED_SDI IOID_0 // SPI1 to receive LSK
|
||||
#define PIN_LED_CLK IOID_1 // SPI1 clock
|
||||
#define PIN_DC_DC IOID_2 // STI select need
|
||||
#define PIN_EN_ADC_SPI_CLK IOID_3 //
|
||||
#define PIN_BATT_HALF IOID_4 //
|
||||
#define PIN_SPI_MISO IOID_7 //
|
||||
#define PIN_SPI_MOSI IOID_8 //
|
||||
#define PIN_SPI_CS IOID_9 //
|
||||
#define PIN_SPI_CLK IOID_10 //
|
||||
#define PIN_SYS_CLK IOID_11 //
|
||||
#define PIN_RESET IOID_12 //
|
||||
#define PIN_AMP_VCK IOID_13 //
|
||||
#define PIN_STI_CLK IOID_14 //
|
||||
|
||||
// clang-format on
|
||||
#endif
|
||||
/*
|
||||
* SPI0 interface with DBS chip 2.0
|
||||
*/
|
||||
#define Board_SPI0_MISO PIN_SPI_MISO
|
||||
#define Board_SPI0_MOSI PIN_SPI_MOSI
|
||||
#define Board_SPI0_CLK PIN_SPI_CLK
|
||||
//#define Board_SPI0_CSN PIN_SPI_CS
|
||||
#define Board_SPI0_CSN PIN_UNASSIGNED
|
||||
|
||||
/*
|
||||
* SPI1 interface work with LED
|
||||
*/
|
||||
|
||||
#define Board_SPI1_MISO PIN_UNASSIGNED
|
||||
#define Board_SPI1_MOSI PIN_LED_SDI
|
||||
#define Board_SPI1_CLK PIN_LED_CLK
|
||||
#define Board_SPI1_CSN PIN_UNASSIGNED
|
||||
|
||||
/* Power Management Board */
|
||||
#define Board_SRDY Board_BP_Pin_J2_19
|
||||
#define Board_MRDY Board_BP_Pin_J1_2
|
||||
|
||||
/* PWM outputs */
|
||||
#define Board_PWMPIN0 PIN_AMP_VCK
|
||||
#define Board_PWMPIN1 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN2 PIN_SYS_CLK
|
||||
#define Board_PWMPIN3 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN4 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN5 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN6 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN7 PIN_UNASSIGNED
|
||||
|
||||
static PIN_Config pesudo_pi_pin_configuration[] = { //
|
||||
Board_RLED | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
Board_GLED | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
Board_WAKE_CENTRAL | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
//
|
||||
PIN_TERMINATE
|
||||
};
|
||||
|
||||
|
||||
static PIN_State pesudo_pi_pins_state;
|
||||
static PIN_Handle pesudo_pi_pins_handle;
|
||||
|
||||
#define headstage_pin_open() \
|
||||
do { \
|
||||
pesudo_pi_pins_handle = PIN_open(&pesudo_pi_pins_state, pesudo_pi_pin_configuration); \
|
||||
} while (0)
|
||||
|
||||
#define headstage_pin_output(pin, value) PIN_setOutputValue(pesudo_pi_pins_handle, PIN_ID(pin), (value))
|
||||
|
||||
#endif // HEADSTAGE_PIN_UNI_H
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
#ifndef HEADSTAGE_PWM_H
|
||||
#define HEADSTAGE_PWM_H
|
||||
|
||||
#include <Board.h>
|
||||
#include <ti/drivers/PWM.h>
|
||||
|
||||
static PWM_Handle headstage_system_pwm_handle = NULL;
|
||||
static PWM_Handle headstage_poly_r_pwm_handle = NULL; // poly-R adjustment clock
|
||||
|
||||
#define headstage_pwm_open() \
|
||||
do { \
|
||||
PWM_init(); \
|
||||
PWM_Params headstage_system_pwm_params; \
|
||||
PWM_Params_init(&headstage_system_pwm_params); \
|
||||
headstage_system_pwm_params.idleLevel = PWM_IDLE_LOW; \
|
||||
headstage_system_pwm_params.periodUnits = PWM_PERIOD_HZ; \
|
||||
headstage_system_pwm_params.periodValue = NEU_SYS_CLK; \
|
||||
headstage_system_pwm_params.dutyUnits = PWM_DUTY_FRACTION; \
|
||||
headstage_system_pwm_params.dutyValue = PWM_DUTY_FRACTION_MAX / 2; \
|
||||
headstage_system_pwm_handle = PWM_open(Board_PWM2, &headstage_system_pwm_params); \
|
||||
PWM_Params headstage_poly_r_pwm_params; \
|
||||
PWM_Params_init(&headstage_poly_r_pwm_params); \
|
||||
headstage_poly_r_pwm_params.idleLevel = PWM_IDLE_LOW; \
|
||||
headstage_poly_r_pwm_params.periodUnits = PWM_PERIOD_HZ; \
|
||||
headstage_poly_r_pwm_params.periodValue = NEU_POLY_R_CLK; \
|
||||
headstage_poly_r_pwm_params.dutyUnits = PWM_DUTY_FRACTION; \
|
||||
headstage_poly_r_pwm_params.dutyValue = PWM_DUTY_FRACTION_MAX / 2; \
|
||||
headstage_poly_r_pwm_handle = PWM_open(Board_PWM0, &headstage_poly_r_pwm_params); \
|
||||
} while (0)
|
||||
|
||||
#define headstage_pwm_start(handle) PWM_start(handle)
|
||||
#define headstage_pwm_stop(handle) PWM_stop(handle)
|
||||
#define headstage_pwm_close(handle) PWM_close(handle)
|
||||
|
||||
#endif // HEADSTAGE_PWM_H
|
||||
+114
@@ -0,0 +1,114 @@
|
||||
|
||||
#ifndef NEU_2_RST
|
||||
#define NEU_2_RST
|
||||
|
||||
#include "headstage_instruction.h"
|
||||
#include "neu/headstage_spi.h"
|
||||
|
||||
static void ResetINSTRUCTION();
|
||||
|
||||
static void MCUReset(){
|
||||
// Reset INSTRUCTION & NEULIVE_STATE
|
||||
ResetINSTRUCTION();
|
||||
|
||||
// global variable reset
|
||||
STI = false;
|
||||
turn_off_sti = false;
|
||||
IsFirstData = true;
|
||||
|
||||
// SPI reset
|
||||
SPI_close(headstage_spi_handle);
|
||||
spi_state_counter = 0;
|
||||
for(int i=0 ; i<SPI_BUFFER_SIZE ; i++ ){
|
||||
spi_txbuf[i] = 0;
|
||||
spi_rxbuf[i] = 0;
|
||||
}
|
||||
SPICallBack = ONE_SHOT_SPI;
|
||||
ReopenSPI();
|
||||
|
||||
for(int i=0 ; i<SPI_LED_BUFF_SIZE ; i++){
|
||||
headstage_spi_led_txbuf[i] = 0;
|
||||
}
|
||||
|
||||
// CIS buffer reset
|
||||
for(int i=0 ; i<BLE_CDR_BUFF_SIZE ; i++){
|
||||
cdr_buf[i] = 0;
|
||||
}
|
||||
|
||||
// Notify Buffer reset
|
||||
for(int i=0 ; i<BLE_NOT_BUFF_SIZE ; i++){
|
||||
headstage_notify_buffer[i] = 0;
|
||||
}
|
||||
not_buf_offset = NOT_BUF_OFFSET_INIT;
|
||||
not_time_stamp = 0;
|
||||
|
||||
|
||||
if(ErrorRestart){
|
||||
headstage_led_color(COLOR_RED);
|
||||
}
|
||||
else if(ConnectState){
|
||||
headstage_led_color(COLOR_CYAN);
|
||||
}
|
||||
else{
|
||||
headstage_led_color(COLOR_GREEN); // color green
|
||||
}
|
||||
|
||||
// this flag is set by SimpleBLEPeripheral_processStateChangeEvt() in simple_peripheral.c
|
||||
// ConnectState = false;
|
||||
}
|
||||
|
||||
static void DBSReset(){
|
||||
headstage_pin_output(PIN_RESET, 0);
|
||||
headstage_cpu_delay_ms(10);
|
||||
headstage_pin_output(PIN_DC_DC, 1);
|
||||
headstage_pin_output(PIN_EN_ADC_SPI_CLK, 1);
|
||||
headstage_pin_output(PIN_RESET, 1);
|
||||
}
|
||||
|
||||
static void Neu2Reset(){
|
||||
DBSReset();
|
||||
MCUReset();
|
||||
}
|
||||
|
||||
static void ResetINSTRUCTION(){
|
||||
INSTRUCTION.vgrp = 16;
|
||||
INSTRUCTION.vgrn = 16;
|
||||
INSTRUCTION.vgr_intp = 16;
|
||||
INSTRUCTION.vgr_intn = 16;
|
||||
INSTRUCTION.vgr_int_old = 16;
|
||||
INSTRUCTION.recording_channel = 0b0000000000000000;
|
||||
INSTRUCTION.adc_clock_ratio = 100;
|
||||
INSTRUCTION.sys_clk_ratio = 10;
|
||||
INSTRUCTION.sti_clock_ratio = 10;
|
||||
INSTRUCTION.amplifier_gain = 0;
|
||||
INSTRUCTION.chopper_ratio = 2;
|
||||
INSTRUCTION.sti_t1[1] = 1;
|
||||
INSTRUCTION.sti_t2[1] = 0;
|
||||
INSTRUCTION.sti_t3[1] = 0;
|
||||
INSTRUCTION.sti_t4[1] = 0;
|
||||
INSTRUCTION.sti_t5[1] = 0;
|
||||
INSTRUCTION.sti_channel = 2;
|
||||
INSTRUCTION.arbitrary_en = 0;
|
||||
INSTRUCTION.arbitrary_index = 0;
|
||||
INSTRUCTION.sti_h_bridge = 0;
|
||||
INSTRUCTION.sti_mode = 0;
|
||||
INSTRUCTION.sti_ref = 0;
|
||||
INSTRUCTION.current_sti_polarity = 2;
|
||||
INSTRUCTION.sti_amplitude_h = 0;
|
||||
INSTRUCTION.sti_amplitude_l = 0;
|
||||
INSTRUCTION.ins_opcode = BIAS_ONE;
|
||||
INSTRUCTION.sti_ch_config_done = 0;
|
||||
|
||||
// uint8_t voltage_sti_channel = 0;
|
||||
// uint8_t voltage_sti_amplitude = 0;
|
||||
|
||||
for(int i=0 ; i<NEU_STI_CHANNEL_COUNTS ; i++){
|
||||
INSTRUCTION.current_sti_cycle[i] = 0;
|
||||
}
|
||||
|
||||
NEULIVE_STATE.state = NEU_IDLE;
|
||||
NEULIVE_STATE.config_type = 0;
|
||||
NEULIVE_STATE.index = 0;
|
||||
}
|
||||
|
||||
#endif
|
||||
+123
@@ -0,0 +1,123 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
#ifndef HEADSTAGE_SPI_H
|
||||
#define HEADSTAGE_SPI_H
|
||||
|
||||
#if defined(BOOSTXL_CC2650MA) && !defined(HEADSTAGE_MA_USE_SPI2)
|
||||
#error "put HEADSTAGE_MA_USE_SPI2 in predefined"
|
||||
#endif
|
||||
|
||||
#include <Board.h>
|
||||
#include <ti/drivers/SPI.h>
|
||||
#include <ti/drivers/dma/UDMACC26XX.h>
|
||||
#include <ti/drivers/spi/SPICC26XXDMA.h>
|
||||
|
||||
#define SPI_BUFFER_SIZE 3
|
||||
|
||||
static uint8_t spi_txbuf[SPI_BUFFER_SIZE] = {0};
|
||||
static uint8_t spi_rxbuf[SPI_BUFFER_SIZE] = {0};
|
||||
|
||||
static SPI_Handle headstage_spi_handle = NULL;
|
||||
|
||||
static SPI_Transaction headstage_spi_transaction;
|
||||
|
||||
static void headstage_spi_callback(SPI_Handle handle, SPI_Transaction* transaction);
|
||||
|
||||
// SPI parameters initialize
|
||||
#define headstage_spi_open() \
|
||||
do { \
|
||||
SPI_init(); \
|
||||
SPI_Params spi_parameter; \
|
||||
SPI_Params_init(&spi_parameter); \
|
||||
spi_parameter.transferMode = SPI_MODE_CALLBACK; \
|
||||
spi_parameter.mode = SPI_SLAVE; \
|
||||
spi_parameter.bitRate = NEU_SPI_FREQ; \
|
||||
spi_parameter.dataSize = 8; \
|
||||
spi_parameter.frameFormat = SPI_POL0_PHA1; \
|
||||
spi_parameter.transferCallbackFxn = headstage_spi_callback; \
|
||||
headstage_spi_handle = SPI_open(Board_SPI0, &spi_parameter); \
|
||||
} while (0)
|
||||
|
||||
//#define headstage_spi_transaction(handle, length, tx, rx) \
|
||||
// ({ \
|
||||
// SPI_Transaction transaction = headstage_spi_transaction ; \
|
||||
// transaction.count = (length); \
|
||||
// transaction.txBuf = (tx); \
|
||||
// transaction.rxBuf = (rx); \
|
||||
// SPI_transfer(handle, &transaction); \
|
||||
// })
|
||||
|
||||
#define headstage_spi_transaction(length) \
|
||||
({ \
|
||||
headstage_spi_transaction.count = (length); \
|
||||
headstage_spi_transaction.txBuf = (spi_txbuf); \
|
||||
headstage_spi_transaction.rxBuf = (spi_rxbuf); \
|
||||
SPI_transfer(headstage_spi_handle, &headstage_spi_transaction); \
|
||||
})
|
||||
|
||||
#define headstage_spi_close(spi_handle) \
|
||||
do { \
|
||||
if (spi_handle != NULL) { \
|
||||
SPI_close(spi_handle); \
|
||||
spi_handle = NULL; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define headstage_spi_transaction_cancel(spi_handle) \
|
||||
do { \
|
||||
if (spi_handle != NULL) { \
|
||||
SPI_transferCancel(spi_handle); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
static void ReopenSPI(){
|
||||
SPI_init();
|
||||
SPI_Params spi_parameter;
|
||||
SPI_Params_init(&spi_parameter);
|
||||
spi_parameter.transferMode = SPI_MODE_CALLBACK;
|
||||
spi_parameter.mode = SPI_SLAVE;
|
||||
spi_parameter.bitRate = NEU_SPI_FREQ;
|
||||
spi_parameter.dataSize = 8;
|
||||
spi_parameter.frameFormat = SPI_POL0_PHA1;
|
||||
spi_parameter.transferCallbackFxn = headstage_spi_callback;
|
||||
headstage_spi_handle = SPI_open(Board_SPI0, &spi_parameter);
|
||||
}
|
||||
|
||||
//static void WriteSPI(uint8_t length){
|
||||
// if(OpenSPI){
|
||||
// ReopenSPI();
|
||||
// }
|
||||
//
|
||||
// for(int i=length ; i<SPI_BUFFER_SIZE ; i++){
|
||||
// spi_rxbuf[i] = 0x00;
|
||||
// }
|
||||
//
|
||||
// SPICallBack = FLUSH_BUFFER;
|
||||
// headstage_spi_transaction.count = 3;
|
||||
// headstage_spi_transaction.txBuf = spi_txbuf;
|
||||
// headstage_spi_transaction.rxBuf = spi_rxbuf;
|
||||
//
|
||||
// SPI_transfer(headstage_spi_handle, &headstage_spi_transaction);
|
||||
//}
|
||||
|
||||
//static void ReadSPI(){
|
||||
// if(OpenSPI){
|
||||
// ReopenSPI();
|
||||
// }
|
||||
//
|
||||
// SPICallBack = READ_REG;
|
||||
// headstage_spi_transaction.count = 3;
|
||||
// headstage_spi_transaction.txBuf = spi_txbuf;
|
||||
// headstage_spi_transaction.rxBuf = spi_rxbuf;
|
||||
//
|
||||
// SPI_transfer(headstage_spi_handle, &headstage_spi_transaction);
|
||||
//}
|
||||
|
||||
static void AppendSPITX(uint8_t index, uint32_t value){
|
||||
tx_put_u24(index, value);
|
||||
for(int i=3 ; i<SPI_BUFFER_SIZE ; i++){
|
||||
spi_txbuf[i] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
+305
@@ -0,0 +1,305 @@
|
||||
{
|
||||
"name": "Neulive",
|
||||
"version": "2.0",
|
||||
"match_rule": {
|
||||
"local_name_pattern": "Neulive.*",
|
||||
"major_product_number": 1,
|
||||
"minor_product_number": 1,
|
||||
"major_version_number": 2,
|
||||
"minor_version_number": 0
|
||||
},
|
||||
"constant": {
|
||||
"REC_CHANNEL_COUNT": 16,
|
||||
"STI_VOLT_CHANNEL_COUNT": 16,
|
||||
"STI_AMP_CHANNEL_COUNT": 8
|
||||
},
|
||||
"parameters": {
|
||||
"CHANNEL": {
|
||||
"description": "record channels",
|
||||
"record_meta": true,
|
||||
"domain": {
|
||||
"set": [
|
||||
"REC_CHANNEL_COUNT"
|
||||
]
|
||||
}
|
||||
},
|
||||
"STI_VOLT_PCHANNEL": {
|
||||
"description": "stimulation voltage mode channels",
|
||||
"record_meta": true,
|
||||
"domain": {
|
||||
"set": [
|
||||
"STI_VOLT_CHANNEL_COUNT"
|
||||
]
|
||||
},
|
||||
"guard": "STI_VOLT_PCHANNEL != STI_VOLT_NCHANNEL"
|
||||
},
|
||||
"STI_VOLT_NCHANNEL": {
|
||||
"description": "stimulation voltage mode channels",
|
||||
"record_meta": true,
|
||||
"domain": {
|
||||
"set": [
|
||||
"STI_VOLT_CHANNEL_COUNT"
|
||||
]
|
||||
},
|
||||
"guard": "STI_VOLT_PCHANNEL != STI_VOLT_NCHANNEL"
|
||||
},
|
||||
"STI_AMP_PCHANNEL": {
|
||||
"description": "stimulation ampere mode p channel",
|
||||
"record_meta": true,
|
||||
"domain": {
|
||||
"set": [
|
||||
"STI_AMP_CHANNEL_COUNT"
|
||||
]
|
||||
},
|
||||
"guard": "STI_AMP_PCHANNEL != STI_AMP_NCHANNEL"
|
||||
},
|
||||
"STI_AMP_NCHANNEL": {
|
||||
"description": "stimulation ampere mode n channel",
|
||||
"record_meta": true,
|
||||
"domain": {
|
||||
"set": [
|
||||
"STI_AMP_CHANNEL_COUNT"
|
||||
]
|
||||
},
|
||||
"guard": "STI_AMP_PCHANNEL != STI_AMP_NCHANNEL"
|
||||
},
|
||||
"STI_TIME_DURATION_ONE": {
|
||||
"description": "stimulation pattern",
|
||||
"record_meta": false,
|
||||
"domain": [
|
||||
1024
|
||||
],
|
||||
"guard": "STI_TIME_DURATION_ONE < 1"
|
||||
},
|
||||
"STI_TIME_DURATION_TWO": {
|
||||
"description": "stimulation pattern",
|
||||
"record_meta": false,
|
||||
"domain": [
|
||||
1024
|
||||
]
|
||||
},
|
||||
"STI_TIME_DURATION_THREE": {
|
||||
"description": "stimulation pattern",
|
||||
"record_meta": false,
|
||||
"domain": [
|
||||
1024
|
||||
]
|
||||
},
|
||||
"STI_TIME_DURATION_FOUR": {
|
||||
"description": "stimulation pattern",
|
||||
"record_meta": false,
|
||||
"domain": [
|
||||
65536
|
||||
]
|
||||
},
|
||||
"STI_TIME_DURATION_FIVE": {
|
||||
"description": "stimulation pattern",
|
||||
"record_meta": false,
|
||||
"domain": [
|
||||
2048
|
||||
]
|
||||
},
|
||||
"AMP_GAIN": {
|
||||
"description": "amplifier gain setting",
|
||||
"record_meta": true,
|
||||
"value": [
|
||||
25,
|
||||
100,
|
||||
400,
|
||||
800
|
||||
]
|
||||
},
|
||||
"STI_MODE": {
|
||||
"description": "how to execute stimulus",
|
||||
"value": [
|
||||
"DISABLE",
|
||||
"LIMITED",
|
||||
"CONTINUOUS"
|
||||
]
|
||||
},
|
||||
"STI_AMPERE_HIGH_SIDE": {
|
||||
"description": "stimulation ampere for pmos, unit: uA ",
|
||||
"type": "int",
|
||||
"domain": [
|
||||
1024
|
||||
],
|
||||
"value": "VALUE * 4"
|
||||
},
|
||||
"STI_AMPERE_LOW_SIDE": {
|
||||
"description": "stimulation ampere for nmos, unit: uA",
|
||||
"type": "int",
|
||||
"domain": [
|
||||
1024
|
||||
],
|
||||
"value": "VALUE * 4"
|
||||
},
|
||||
"STI_VOLTAGE_AMPLITUDE": {
|
||||
"description": "stimulation voltage mode, unit: Volt ",
|
||||
"type": "float",
|
||||
"domain": [
|
||||
32
|
||||
],
|
||||
"value": " 2 + VALUE / 31"
|
||||
},
|
||||
"STI_TIMES": {
|
||||
"description": "how many times will be executed",
|
||||
"domain": [
|
||||
256
|
||||
]
|
||||
},
|
||||
"SYSTEM_CLOCK_RATIO": {
|
||||
"description": "frequency of system clock, unit: khz",
|
||||
"type": "float",
|
||||
"domain": [
|
||||
65536
|
||||
],
|
||||
"value": " 8000 / VALUE",
|
||||
"guard": "SYSTEM_CLOCK_RATIO < 2"
|
||||
},
|
||||
"ADC_CLOCK_RATIO": {
|
||||
"description": "adc sampling rate, unit: khz",
|
||||
"type": "float",
|
||||
"domain": [
|
||||
65536
|
||||
],
|
||||
"value": " SYSTEM_CLOCK_RATIO / VALUE ",
|
||||
"guard": "ADC_CLOCK_RATIO < 28"
|
||||
},
|
||||
"STI_CLOCK_RATIO": {
|
||||
"description": "stimulation rate",
|
||||
"type": "float",
|
||||
"domain": [
|
||||
65536
|
||||
],
|
||||
"value": "SYSTEM_CLOCK_RATIO / VALUE",
|
||||
"guard": "STI_CLOCK_RATIO < 2"
|
||||
},
|
||||
"ARBITRARY_EN": {
|
||||
"description": "arbitrary stimulation enable",
|
||||
"domain": "bool"
|
||||
},
|
||||
"ARBITRARY_CH": {
|
||||
"description": "arbitrary stimulation enable channels",
|
||||
"domain": "int",
|
||||
"value": " ( 1 << STI_AMP_PCHANNEL ) if (ARBITRARY_EN) else 0 "
|
||||
},
|
||||
"ARBITRARY_INDEX": {
|
||||
"description": "define the last point of arbitrary data, from zero to arbitrary_index. ",
|
||||
"domain": "INT",
|
||||
"guard": "VALUE > 499"
|
||||
},
|
||||
"H_BRIDGE": {
|
||||
"description": "whether to contruct a h bridge execute a stimulation",
|
||||
"domain": "bool"
|
||||
},
|
||||
"STI_REF": {
|
||||
"description": "bipolar or monopolar",
|
||||
"domain": "bool"
|
||||
},
|
||||
"FAST_SETTLE": {
|
||||
"description": "protect amplifier input when stimulation is executed",
|
||||
"domain": "bool"
|
||||
},
|
||||
"UMC_TEST": {
|
||||
"description": "start umc test mode",
|
||||
"domain": "action",
|
||||
"on_change": "umc_default"
|
||||
},
|
||||
"UMC_RESET": {
|
||||
"description": "reset headstage to perform another setting",
|
||||
"domain": "action",
|
||||
"on_change": "reset"
|
||||
},
|
||||
"UMC_TRIGGER": {
|
||||
"description": "trigger stimulation when device is in trigger mode",
|
||||
"domain": "action",
|
||||
"on_change": "STIMULUS"
|
||||
}
|
||||
},
|
||||
"instruction": {
|
||||
"start": [
|
||||
{
|
||||
"expression": "len(CHANNEL) > 0",
|
||||
"raise": "no recording channel"
|
||||
},
|
||||
"data_format",
|
||||
"_notify(True)",
|
||||
"start_recording",
|
||||
"umc_parameter",
|
||||
"_sync(True)",
|
||||
"VIS_STI"
|
||||
],
|
||||
"trigger stimulation": [
|
||||
"umc_sti_trigger0"
|
||||
],
|
||||
"umc_reset": [
|
||||
"VIS_RST"
|
||||
],
|
||||
"data_format": [
|
||||
"_data_format('TDC4VAF2')"
|
||||
],
|
||||
"start_recording": {
|
||||
"type": "RIS",
|
||||
"data": [
|
||||
"3b101#direct header;2b0#don't care;3b>LOW_FREQ_BAND",
|
||||
"2b0#don't care;1bCHOPPER;1bFAST_SETTLE;3b>STI_WAVEFORM",
|
||||
"5b>STI_AMPERE;4b>STI_PMOS",
|
||||
"4b>STI_NMOS;4b>SAMPLE_RATE"
|
||||
]
|
||||
},
|
||||
"umc_parameter": {
|
||||
"type": "RIS",
|
||||
"foreach-parameter": {
|
||||
"parameter": "CHANNEL",
|
||||
"variable": [
|
||||
"a",
|
||||
"b",
|
||||
"c",
|
||||
"d"
|
||||
]
|
||||
},
|
||||
"data": [
|
||||
"3b001#umc parameter header;3b>AMP_GAIN",
|
||||
"4b>PULSE_WIDTH;6b>STI_TIMES",
|
||||
"2b>STI_MODE;6b>STI_FREQ",
|
||||
"1ba?;1bb?;1bc?;1bd?",
|
||||
"4b>a?:0;4b>b?:0",
|
||||
"4b>c?:0;4b>d?:0"
|
||||
]
|
||||
},
|
||||
"umc_default": [
|
||||
"_set('CHANNEL', 0)",
|
||||
"_set('SAMPLE_RATE', 0)",
|
||||
"_set('AMP_GAIN', 5)",
|
||||
"_set('STI_WAVEFORM', 1)",
|
||||
"_set('STI_MODE', 1)",
|
||||
"_set('STI_NMOS', 0)",
|
||||
"_set('STI_PMOS', 1)",
|
||||
"_set('STI_AMPERE', 0)",
|
||||
"_set('STI_FREQ', 0)",
|
||||
"_set('STI_TIMES', 0)",
|
||||
"_set('PULSE_WIDTH', 0)",
|
||||
"_set('FAST_SETTLE', 1)",
|
||||
"_set('CHOPPER', 0)",
|
||||
"data_format",
|
||||
"_notify(True)",
|
||||
"umc_default0",
|
||||
"_sync(True)",
|
||||
"VIS_STI"
|
||||
],
|
||||
"umc_default0": {
|
||||
"type": "RIS",
|
||||
"data": [
|
||||
"1B0#load umc default parameter into uni"
|
||||
]
|
||||
},
|
||||
"umc_sti_trigger0": {
|
||||
"type": "RIS",
|
||||
"description": "this function is perform only in trigger mode",
|
||||
"data": [
|
||||
"1BC0# trigger stimulation when recording is performed"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
@startuml
|
||||
start
|
||||
:stimulation select;
|
||||
if (continuous) then (yes)
|
||||
if(current mode / voltage mode) then (current mode)
|
||||
:sti parameter setup;
|
||||
else (voltage mode)
|
||||
:sti parameter setup;
|
||||
endif
|
||||
else if (limited)
|
||||
if(current mode / voltage mode) then (current mode)
|
||||
:sti parameter setup;
|
||||
else (voltage mode)
|
||||
:sti parameter setup;
|
||||
endif
|
||||
else (disable)
|
||||
endif
|
||||
stop
|
||||
@enduml
|
||||
+75
@@ -0,0 +1,75 @@
|
||||
|
||||
#ifndef PESUDO_PI_UART_H
|
||||
#define PESUDO_PI_UART_H
|
||||
|
||||
/*
|
||||
* http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/tirtos/
|
||||
* 2_20_00_06/exports/tirtos_full_2_20_00_06/products/tidrivers_cc13xx_cc26xx_2_20_00_08/
|
||||
* docs/doxygen/html/_u_a_r_t_c_c26_x_x_8h.html
|
||||
*/
|
||||
|
||||
#include <ti/drivers/UART.h>
|
||||
#include <ti/drivers/uart/UARTCC26XX.h>
|
||||
|
||||
#include <ti/sysbios/knl/Clock.h>
|
||||
#include "../neu/headstage_pin.h"
|
||||
|
||||
// Clock object used to timeout connection
|
||||
static Clock_Struct SendUARTClock;
|
||||
|
||||
// Scan duration in ms
|
||||
#define SEND_UART_DURATION 1000
|
||||
|
||||
#define UART_TX_BUF_SIZE 10
|
||||
#define UART_RX_BUF_SIZE 10
|
||||
|
||||
static UART_Handle handle;
|
||||
static UART_Params params;
|
||||
|
||||
static uint8_t UART_txBuf[UART_TX_BUF_SIZE];
|
||||
static uint8_t UART_rxBuf[UART_RX_BUF_SIZE];
|
||||
|
||||
static void _send_uart(UArg arg0);
|
||||
|
||||
static void pesudo_pi_uart_init(){
|
||||
|
||||
uint32_t timeoutUs = 5000; // 5ms timeout, default timeout is no timeout (BIOS_WAIT_FOREVER)
|
||||
|
||||
// Init UART and specify non-default parameters
|
||||
UART_Params_init(¶ms);
|
||||
params.baudRate = 9600;
|
||||
params.writeDataMode = UART_DATA_BINARY;
|
||||
// params.readTimeout = timeoutUs / Clock_tickPeriod; // Default tick period is 10us
|
||||
params.readTimeout = ti_sysbios_BIOS_WAIT_FOREVER;
|
||||
|
||||
// Open the UART and do the read
|
||||
handle = UART_open(Board_UART, ¶ms);
|
||||
// int rxBytes = UART_read(handle, rxBuf, 100);
|
||||
|
||||
Util_constructClock(&SendUARTClock, _send_uart,
|
||||
SEND_UART_DURATION, 0, false, 0);
|
||||
return;
|
||||
}
|
||||
|
||||
static void send_uart(uint8_t *txbuf, uint8_t size) {
|
||||
headstage_pin_output(Board_WAKE_CENTRAL, Board_LED_ON);
|
||||
headstage_pin_output(Board_RLED, Board_LED_ON);
|
||||
for(int i=0 ; i<size && i<UART_TX_BUF_SIZE ; i++){
|
||||
UART_txBuf[i] = txbuf[i];
|
||||
}
|
||||
|
||||
// Util_startClock(&SendUARTClock);
|
||||
CPUdelay(16000000);
|
||||
|
||||
UART_write(handle, UART_txBuf, UART_TX_BUF_SIZE);
|
||||
headstage_pin_output(Board_RLED, Board_LED_OFF);
|
||||
headstage_pin_output(Board_WAKE_CENTRAL, Board_LED_OFF);
|
||||
}
|
||||
|
||||
static void _send_uart(UArg arg0){
|
||||
UART_write(handle, UART_txBuf, UART_TX_BUF_SIZE);
|
||||
headstage_pin_output(Board_RLED, Board_LED_OFF);
|
||||
headstage_pin_output(Board_WAKE_CENTRAL, Board_LED_OFF);
|
||||
}
|
||||
|
||||
#endif
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
#ifndef HEADSTAGE_ADC_H
|
||||
#define HEADSTAGE_ADC_H
|
||||
#ifndef HEADSTAGE_STI_ADC_H
|
||||
#define HEADSTAGE_STI_ADC_H
|
||||
|
||||
#if defined(BOOSTXL_CC2650MA) && !defined(HEADSTAGE_MA_USE_ADC)
|
||||
#error "put HEADSTAGE_MA_USE_ADC in predefined"
|
||||
@@ -37,4 +37,4 @@ static ADC_Handle headstage_adc_handle_2;
|
||||
headstage_adc_handle_2 = ADC_open(CC2650_ADC2, ¶m); \
|
||||
} while (0)
|
||||
|
||||
#endif // HEADSTAGE_ADC_H
|
||||
#endif // HEADSTAGE_STI_ADC_H
|
||||
+10
-18
@@ -10,11 +10,11 @@
|
||||
|
||||
#define NOT_BUF_OFFSET_INIT 8
|
||||
|
||||
static uint32_t not_buf_offset = NOT_BUF_OFFSET_INIT;
|
||||
static uint8_t not_buf_offset = NOT_BUF_OFFSET_INIT;
|
||||
static uint32_t not_time_stamp = 0;
|
||||
|
||||
static void headstage_notify_set_timestamp() {
|
||||
not_time_stamp = headstage_time_stamp_us() ;
|
||||
not_time_stamp = headstage_time_stamp_us();
|
||||
|
||||
headstage_notify_buffer[2] = not_time_stamp & 0xFF;
|
||||
headstage_notify_buffer[3] = (not_time_stamp >> 8) & 0xFF;
|
||||
@@ -34,22 +34,9 @@ static void headstage_notify_flip_buffer() {
|
||||
static uint8_t headstage_notify_append_data(uint8_t channel, uint8_t *data_value) {
|
||||
if (not_buf_offset <= NOT_BUF_OFFSET_INIT) {
|
||||
headstage_notify_set_timestamp();
|
||||
|
||||
not_buf_offset = NOT_BUF_OFFSET_INIT;
|
||||
}
|
||||
|
||||
if (not_buf_offset == NOT_BUF_OFFSET_INIT + 2) {
|
||||
uint32_t current = headstage_time_stamp_us();
|
||||
uint32_t time_delta = ((current - not_time_stamp) >> 1) & 0xFFFF;
|
||||
|
||||
headstage_notify_buffer[6] = time_delta & 0xFF;
|
||||
headstage_notify_buffer[7] = (time_delta >> 8) & 0xFF;
|
||||
}
|
||||
|
||||
if (not_buf_offset >= BLE_NOT_BUFF_SIZE) {
|
||||
return not_buf_offset;
|
||||
}
|
||||
|
||||
if (data_value == NULL) {
|
||||
headstage_notify_buffer[not_buf_offset++] = ((channel & 0x0F) << 4);
|
||||
headstage_notify_buffer[not_buf_offset++] = 0x03;
|
||||
@@ -58,13 +45,18 @@ static uint8_t headstage_notify_append_data(uint8_t channel, uint8_t *data_value
|
||||
headstage_notify_buffer[not_buf_offset++] = data_value[2] & 0xFC;
|
||||
}
|
||||
|
||||
uint8_t ret = not_buf_offset;
|
||||
if (not_buf_offset == BLE_NOT_BUFF_SIZE) {
|
||||
uint32_t current = headstage_time_stamp_us();
|
||||
uint32_t time_delta = ((current - not_time_stamp)) & 0xFFFF;
|
||||
|
||||
if (not_buf_offset >= BLE_NOT_BUFF_SIZE) {
|
||||
headstage_notify_flip_buffer();
|
||||
headstage_notify_buffer[6] = time_delta & 0xFF;
|
||||
headstage_notify_buffer[7] = (time_delta >> 8) & 0xFF;
|
||||
}
|
||||
|
||||
uint8_t ret = not_buf_offset;
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
#endif // HEADSTAGE_NOTIFY_TDC4VAF2_H
|
||||
|
||||
+118
@@ -0,0 +1,118 @@
|
||||
#Neulive 1.3
|
||||
|
||||
|
||||
##include files
|
||||
|
||||
|
||||
######time.h
|
||||
This part is used for getting the time information.
|
||||
Such as year and month.
|
||||
|
||||
For example:
|
||||
|
||||
static void headstage_init_device_info() {
|
||||
uint8_t year = 10 * (date[9] - '0') + (date[10] - '0');
|
||||
uint8_t month = 0;
|
||||
|
||||
switch (date[0]) {
|
||||
case 'J':
|
||||
// Jan, January
|
||||
// Jun, June
|
||||
// Jul, July
|
||||
if (date[1] == 'a') {
|
||||
month = 1;
|
||||
} else if (date[2] == 'n') {
|
||||
month = 6;
|
||||
} else {
|
||||
month = 7;
|
||||
}
|
||||
break;
|
||||
case 'F':
|
||||
// Feb, February
|
||||
month = 2;
|
||||
break;
|
||||
case 'M':
|
||||
// Mar, March
|
||||
// May, May
|
||||
if (date[2] == 'r') {
|
||||
month = 3;
|
||||
} else {
|
||||
month = 5;
|
||||
}
|
||||
break;
|
||||
case 'A':
|
||||
// Apr, April
|
||||
// Ang, August
|
||||
if (date[1] == 'p') {
|
||||
month = 4;
|
||||
} else {
|
||||
month = 8;
|
||||
}
|
||||
break;
|
||||
case 'S':
|
||||
// Sep, September
|
||||
month = 9;
|
||||
break;
|
||||
case 'O':
|
||||
// Oct, October
|
||||
month = 10;
|
||||
break;
|
||||
case 'N':
|
||||
// Nov, November
|
||||
month = 11;
|
||||
break;
|
||||
case 'D':
|
||||
// Dec, December
|
||||
month = 12;
|
||||
break;
|
||||
}
|
||||
......
|
||||
|
||||
*p++ = year;
|
||||
*p++ = month;
|
||||
|
||||
......
|
||||
}
|
||||
|
||||
|
||||
######population.h
|
||||
This is used for checking each digit of data is 1 or 0.
|
||||
|
||||
It will return how many 1 are included in the value.
|
||||
|
||||
static uint32_t pop_count(uint32_t value) {
|
||||
value -= ((value >> 1) & 0x55555555);
|
||||
value = (((value >> 2) & 0x33333333) + (value & 0x33333333));
|
||||
value = (((value >> 4) + value) & 0x0f0f0f0f);
|
||||
value += (value >> 8);
|
||||
value += (value >> 16);
|
||||
return (value & 0x0000003f);
|
||||
}
|
||||
|
||||
######headstage_arm.h
|
||||
This part is used for generating arbitrary data to test data rate.
|
||||
|
||||
######headstage_debug.h
|
||||
|
||||
######headstage_pin.h
|
||||
|
||||
######headstage_led.h
|
||||
|
||||
######headstage_watchdog.h
|
||||
|
||||
######headstage_notify.h
|
||||
|
||||
######headstage_indicate.h
|
||||
|
||||
######headstage_batt.h
|
||||
|
||||
######tni/headstage_notify.h
|
||||
|
||||
######uni/headstage_spi.h
|
||||
|
||||
######uni/headstage_pwm.h
|
||||
|
||||
######uni/uni1.3_parameter.h
|
||||
|
||||
-------------
|
||||
|
||||
+24
-3
@@ -1,5 +1,26 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
#ifndef HEADSTAGE_ADC_H
|
||||
#define HEADSTAGE_ADC_H
|
||||
#endif // HEADSTAGE_ADC_H
|
||||
#ifndef HEADSTAGE_UNI_ADC_H
|
||||
#define HEADSTAGE_UNI_ADC_H
|
||||
|
||||
#include <Board.h>
|
||||
#include <ti/drivers/ADC.h>
|
||||
|
||||
static ADC_Handle headstage_adc;
|
||||
|
||||
#define headstage_adc_open() \
|
||||
do { \
|
||||
ADC_init(); \
|
||||
ADC_Params headstage_adc_params; \
|
||||
ADC_Params_init(&headstage_adc_params); \
|
||||
headstage_adc = ADC_open(BOOSTXL_CC2650MA_ADC0, &headstage_adc_params); \
|
||||
} while (0)
|
||||
|
||||
#define headstage_adc_convert() \
|
||||
({ \
|
||||
uint16_t adc_value; \
|
||||
ADC_convert(headstage_adc, &adc_value); \
|
||||
ADC_convertRawToMicroVolts(headstage_adc , adc_value); \
|
||||
})
|
||||
|
||||
#endif // HEADSTAGE_UNI_ADC_H
|
||||
|
||||
+41
-9
@@ -42,16 +42,48 @@
|
||||
|
||||
// clang-format on
|
||||
|
||||
/*
|
||||
* SPI0 interface with DBS chip 2.0
|
||||
*/
|
||||
#define Board_SPI0_MISO PIN_UNASSIGNED
|
||||
#define Board_SPI0_MOSI PIN_LSK_MOSI
|
||||
#define Board_SPI0_CLK PIN_LSK_CLK
|
||||
#define Board_SPI0_CSN PIN_LSK_CS
|
||||
|
||||
/*
|
||||
* SPI1 interface work with LED
|
||||
*/
|
||||
|
||||
#define Board_SPI1_MISO PIN_UNASSIGNED
|
||||
#define Board_SPI1_MOSI PIN_ASK_MOSI
|
||||
#define Board_SPI1_CLK PIN_UNASSIGNED
|
||||
#define Board_SPI1_CSN PIN_ASK_CS
|
||||
|
||||
/* Power Management Board */
|
||||
#define Board_SRDY Board_BP_Pin_J2_19
|
||||
#define Board_MRDY Board_BP_Pin_J1_2
|
||||
|
||||
/* PWM outputs */
|
||||
#define Board_PWMPIN0 PIN_AMP_VCK
|
||||
#define Board_PWMPIN1 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN2 PIN_CLOCK_8M
|
||||
#define Board_PWMPIN3 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN4 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN5 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN6 PIN_UNASSIGNED
|
||||
#define Board_PWMPIN7 PIN_UNASSIGNED
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
static PIN_Config headstage_pin_configuration[] = { //
|
||||
PIN_STI_SEL | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
PIN_RESET | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
PIN_VGRP | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
PIN_FASTSET | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
PIN_LED_CLK | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
PIN_LED_OUT | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
//
|
||||
PIN_TERMINATE};
|
||||
//static PIN_Config headstage_pin_configuration[] = { //
|
||||
// PIN_STI_SEL | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
// PIN_RESET | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
// PIN_VGRP | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
// PIN_FASTSET | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
// PIN_LED_CLK | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
// PIN_LED_OUT | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
|
||||
// //
|
||||
// PIN_TERMINATE};
|
||||
|
||||
#endif // HEADSTAGE_PIN_UNI_H
|
||||
|
||||
+83
-66
@@ -5,60 +5,60 @@
|
||||
"local_name_pattern": "Neulive.*",
|
||||
"major_product_number": 1,
|
||||
"minor_product_number": 1,
|
||||
"major_version_number": 0,
|
||||
"major_version_number": 1,
|
||||
"minor_version_number": 2
|
||||
},
|
||||
"constant": {
|
||||
"REC_CHANNEL_COUNT": 13,
|
||||
"STI_CHANNEL_COUNT": 4,
|
||||
"ADC_SAMPLE_RATE_LIST": [
|
||||
10000,
|
||||
19000,
|
||||
38000,
|
||||
76000,
|
||||
152000
|
||||
2000,
|
||||
3800,
|
||||
7600,
|
||||
15200,
|
||||
30400
|
||||
],
|
||||
"STI_FREQ_LIST": [
|
||||
6,
|
||||
8,
|
||||
10,
|
||||
12,
|
||||
14,
|
||||
16,
|
||||
18,
|
||||
20,
|
||||
22,
|
||||
24,
|
||||
26,
|
||||
28,
|
||||
30,
|
||||
32,
|
||||
34,
|
||||
36,
|
||||
38,
|
||||
40,
|
||||
50,
|
||||
60,
|
||||
70,
|
||||
80,
|
||||
90,
|
||||
100,
|
||||
110,
|
||||
120,
|
||||
130,
|
||||
140,
|
||||
150,
|
||||
160,
|
||||
170,
|
||||
180,
|
||||
190,
|
||||
200,
|
||||
400,
|
||||
600,
|
||||
800,
|
||||
1000,
|
||||
2000,
|
||||
3000,
|
||||
4000,
|
||||
5000,
|
||||
6000,
|
||||
7000,
|
||||
8000,
|
||||
9000,
|
||||
10000
|
||||
1200,
|
||||
1400,
|
||||
1600,
|
||||
1800,
|
||||
2000
|
||||
],
|
||||
"STI_PULSE_WIDTH": [
|
||||
40,
|
||||
90,
|
||||
140,
|
||||
190,
|
||||
240,
|
||||
290,
|
||||
340,
|
||||
390,
|
||||
440,
|
||||
490
|
||||
80,
|
||||
180,
|
||||
280,
|
||||
380,
|
||||
480,
|
||||
580,
|
||||
680,
|
||||
780,
|
||||
880,
|
||||
980
|
||||
]
|
||||
},
|
||||
"parameters": {
|
||||
@@ -84,12 +84,12 @@
|
||||
"description": "amp gain",
|
||||
"record_meta": true,
|
||||
"value": [
|
||||
2,
|
||||
5,
|
||||
10,
|
||||
200,
|
||||
500,
|
||||
1000
|
||||
3,
|
||||
40,
|
||||
70,
|
||||
30,
|
||||
400,
|
||||
700
|
||||
]
|
||||
},
|
||||
"LOW_FREQ_BAND": {
|
||||
@@ -99,7 +99,7 @@
|
||||
8
|
||||
]
|
||||
},
|
||||
"STI_BEHAVIOR": {
|
||||
"STI_MODE": {
|
||||
"description": "how to execute stimulus",
|
||||
"value": [
|
||||
"DISABLE",
|
||||
@@ -108,8 +108,8 @@
|
||||
"CONTINUOUS"
|
||||
]
|
||||
},
|
||||
"STI_MODE": {
|
||||
"description": "stimulation mode",
|
||||
"STI_WAVEFORM": {
|
||||
"description": "describe the waveform of stimulation",
|
||||
"value": [
|
||||
"Positive Pulse",
|
||||
"Negative Pulse",
|
||||
@@ -119,12 +119,12 @@
|
||||
]
|
||||
},
|
||||
"STI_VOLT": {
|
||||
"description": "stimulation voltage",
|
||||
"description": "stimulation volt, unit: V ",
|
||||
"type": "float",
|
||||
"domain": [
|
||||
32
|
||||
],
|
||||
"value": "2 + 3 * VALUE / 31"
|
||||
"value": " 2 + 3 * VALUE / 31"
|
||||
},
|
||||
"STI_TIMES": {
|
||||
"description": "how many times will be executed",
|
||||
@@ -162,17 +162,27 @@
|
||||
"value": "STI_PULSE_WIDTH[VALUE]"
|
||||
},
|
||||
"CHOPPER": {
|
||||
"description": "",
|
||||
"description": "default_disable",
|
||||
"domain": "bool"
|
||||
},
|
||||
"FAST_SETTLE": {
|
||||
"description": "",
|
||||
"description": "protect amplifier input when stimulation is executed",
|
||||
"domain": "bool"
|
||||
},
|
||||
"UMC_TEST": {
|
||||
"description": "start umc test mode",
|
||||
"domain": "action",
|
||||
"on_change": "umc_default"
|
||||
},
|
||||
"UMC_RESET": {
|
||||
"description": "reset headstage to perform another setting",
|
||||
"domain": "action",
|
||||
"on_change": "reset"
|
||||
},
|
||||
"UMC_TRIGGER": {
|
||||
"description": "trigger stimulation when device is in trigger mode",
|
||||
"domain": "action",
|
||||
"on_change": "STIMULUS"
|
||||
}
|
||||
},
|
||||
"instruction": {
|
||||
@@ -188,10 +198,10 @@
|
||||
"_sync(True)",
|
||||
"VIS_STI"
|
||||
],
|
||||
"stop": [
|
||||
"VIS_INT"
|
||||
"trigger stimulation": [
|
||||
"umc_sti_trigger0"
|
||||
],
|
||||
"restart": [
|
||||
"umc_reset": [
|
||||
"VIS_RST"
|
||||
],
|
||||
"data_format": [
|
||||
@@ -201,7 +211,7 @@
|
||||
"type": "RIS",
|
||||
"data": [
|
||||
"3b101#direct header;2b0#don't care;3b>LOW_FREQ_BAND",
|
||||
"2b0#don't care;1bCHOPPER;1bFAST_SETTLE;3b>STI_MODE",
|
||||
"2b0#don't care;1bCHOPPER;1bFAST_SETTLE;3b>STI_WAVEFORM",
|
||||
"5b>STI_VOLT;4b>STI_PMOS",
|
||||
"4b>STI_NMOS;4b>SAMPLE_RATE"
|
||||
]
|
||||
@@ -220,27 +230,26 @@
|
||||
"data": [
|
||||
"3b001#umc parameter header;3b>AMP_GAIN",
|
||||
"4b>PULSE_WIDTH;6b>STI_TIMES",
|
||||
"2b>STI_BEHAVIOR;6b>STI_FREQ",
|
||||
"2b>STI_MODE;6b>STI_FREQ",
|
||||
"1ba?;1bb?;1bc?;1bd?",
|
||||
"4b>a?:0;4b>b?:0",
|
||||
"4b>c?:0;4b>d?:0"
|
||||
]
|
||||
},
|
||||
"umc_default": [
|
||||
"_set('CHANNEL', 1)",
|
||||
"_set('CHANNEL', 0)",
|
||||
"_set('SAMPLE_RATE', 0)",
|
||||
"_set('AMP_GAIN', 5)",
|
||||
"_set('STI_BEHAVIOR', 1)",
|
||||
"_set('STI_MODE', 0)",
|
||||
"_set('STI_NMOS', STI_PMOS + 1)",
|
||||
"_set('STI_PMOS', 0)",
|
||||
"_set('STI_NMOS', 1)",
|
||||
"_set('STI_WAVEFORM', 1)",
|
||||
"_set('STI_MODE', 1)",
|
||||
"_set('STI_NMOS', 0)",
|
||||
"_set('STI_PMOS', 1)",
|
||||
"_set('STI_VOLT', 0)",
|
||||
"_set('STI_FREQ', 0)",
|
||||
"_set('STI_TIMES', 0)",
|
||||
"_set('PULSE_WIDTH', 0)",
|
||||
"_set('FAST_SETTLE', 0)",
|
||||
"_set('CHOPPER', 1)",
|
||||
"_set('FAST_SETTLE', 1)",
|
||||
"_set('CHOPPER', 0)",
|
||||
"data_format",
|
||||
"_notify(True)",
|
||||
"umc_default0",
|
||||
@@ -252,6 +261,14 @@
|
||||
"data": [
|
||||
"1B0#load umc default parameter into uni"
|
||||
]
|
||||
},
|
||||
"umc_sti_trigger0": {
|
||||
"type": "RIS",
|
||||
"description": "this function is perform only in trigger mode",
|
||||
"data": [
|
||||
"1BC0# trigger stimulation when recording is performed"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
+109
-86
@@ -1,64 +1,64 @@
|
||||
{
|
||||
"name": "Neulive",
|
||||
"version": "0.2",
|
||||
"version": "1.3",
|
||||
"match_rule": {
|
||||
"local_name_pattern": "Neulive.*",
|
||||
"major_product_number": 1,
|
||||
"minor_product_number": 1,
|
||||
"major_version_number": 0,
|
||||
"minor_version_number": 2
|
||||
"major_version_number": 1,
|
||||
"minor_version_number": 3
|
||||
},
|
||||
"constant": {
|
||||
"REC_CHANNEL_COUNT": 13,
|
||||
"REC_CHANNEL_COUNT": 12,
|
||||
"STI_CHANNEL_COUNT": 4,
|
||||
"ADC_SAMPLE_RATE_LIST": [
|
||||
10000,
|
||||
19000,
|
||||
38000,
|
||||
76000,
|
||||
152000
|
||||
1000,
|
||||
1900,
|
||||
3800,
|
||||
7600,
|
||||
15200
|
||||
],
|
||||
"STI_FREQ_LIST": [
|
||||
30,
|
||||
40,
|
||||
50,
|
||||
60,
|
||||
70,
|
||||
80,
|
||||
90,
|
||||
3,
|
||||
4,
|
||||
5,
|
||||
6,
|
||||
7,
|
||||
8,
|
||||
9,
|
||||
10,
|
||||
11,
|
||||
12,
|
||||
13,
|
||||
14,
|
||||
15,
|
||||
16,
|
||||
17,
|
||||
18,
|
||||
19,
|
||||
20,
|
||||
100,
|
||||
110,
|
||||
120,
|
||||
130,
|
||||
140,
|
||||
150,
|
||||
160,
|
||||
170,
|
||||
180,
|
||||
190,
|
||||
200,
|
||||
1000,
|
||||
2000,
|
||||
3000,
|
||||
4000,
|
||||
5000,
|
||||
6000,
|
||||
7000,
|
||||
8000,
|
||||
9000,
|
||||
10000
|
||||
300,
|
||||
400,
|
||||
500,
|
||||
600,
|
||||
700,
|
||||
800,
|
||||
900,
|
||||
1000
|
||||
],
|
||||
"STI_PULSE_WIDTH": [
|
||||
40,
|
||||
90,
|
||||
140,
|
||||
190,
|
||||
240,
|
||||
290,
|
||||
340,
|
||||
390,
|
||||
440,
|
||||
490
|
||||
400,
|
||||
900,
|
||||
1400,
|
||||
1900,
|
||||
2400,
|
||||
2900,
|
||||
3400,
|
||||
3900,
|
||||
4400,
|
||||
4900
|
||||
]
|
||||
},
|
||||
"parameters": {
|
||||
@@ -84,22 +84,19 @@
|
||||
"description": "amp gain",
|
||||
"record_meta": true,
|
||||
"value": [
|
||||
2,
|
||||
5,
|
||||
10,
|
||||
200,
|
||||
500,
|
||||
1000
|
||||
60,
|
||||
280,
|
||||
540
|
||||
]
|
||||
},
|
||||
"LOW_FREQ_BAND": {
|
||||
"description": "",
|
||||
"description": "low pass filter",
|
||||
"record_meta": true,
|
||||
"domain": [
|
||||
8
|
||||
]
|
||||
},
|
||||
"STI_BEHAVIOR": {
|
||||
"STI_MODE": {
|
||||
"description": "how to execute stimulus",
|
||||
"value": [
|
||||
"DISABLE",
|
||||
@@ -108,8 +105,8 @@
|
||||
"CONTINUOUS"
|
||||
]
|
||||
},
|
||||
"STI_MODE": {
|
||||
"description": "stimulation mode",
|
||||
"STI_WAVEFORM": {
|
||||
"description": "describe the waveform of stimulation",
|
||||
"value": [
|
||||
"Positive Pulse",
|
||||
"Negative Pulse",
|
||||
@@ -118,13 +115,13 @@
|
||||
"Arbitrary Waveform"
|
||||
]
|
||||
},
|
||||
"STI_VOLT": {
|
||||
"description": "stimulation voltage",
|
||||
"STI_AMPERE": {
|
||||
"description": "stimulation ampere, unit: uA ",
|
||||
"type": "float",
|
||||
"domain": [
|
||||
32
|
||||
],
|
||||
"value": "2 + 3 * VALUE / 31"
|
||||
"value": " 31 * VALUE "
|
||||
},
|
||||
"STI_TIMES": {
|
||||
"description": "how many times will be executed",
|
||||
@@ -162,31 +159,44 @@
|
||||
"value": "STI_PULSE_WIDTH[VALUE]"
|
||||
},
|
||||
"CHOPPER": {
|
||||
"description": "",
|
||||
"description": "default_disable",
|
||||
"domain": "bool"
|
||||
},
|
||||
"FAST_SETTLE": {
|
||||
"description": "",
|
||||
"description": "protect amplifier input when stimulation is executed",
|
||||
"domain": "bool"
|
||||
},
|
||||
"UMC_TEST": {
|
||||
"description": "start umc test mode",
|
||||
"domain": "action",
|
||||
"on_change": "umc_default"
|
||||
},
|
||||
"UMC_RESET": {
|
||||
"description": "reset headstage to perform another setting",
|
||||
"domain": "action",
|
||||
"on_change": "reset"
|
||||
},
|
||||
"UMC_TRIGGER": {
|
||||
"description": "trigger stimulation when device is in trigger mode",
|
||||
"domain": "action",
|
||||
"on_change": "STIMULUS"
|
||||
}
|
||||
},
|
||||
"instruction": {
|
||||
"start": [
|
||||
{
|
||||
"expression": "len(CHANNEL) > 0",
|
||||
"raise": "no recording channel"
|
||||
},
|
||||
"data_format",
|
||||
"_notify(True)",
|
||||
"start_recording",
|
||||
"umc_parameter",
|
||||
"_sync(True)",
|
||||
"VIS_STI"
|
||||
],
|
||||
"trigger stimulation": [
|
||||
"umc_sti_trigger0"
|
||||
],
|
||||
"umc_reset": [
|
||||
"VIS_RST"
|
||||
],
|
||||
"data_format": [
|
||||
"_data_format('TDC4VAF2')"
|
||||
],
|
||||
@@ -194,40 +204,45 @@
|
||||
"type": "RIS",
|
||||
"data": [
|
||||
"3b101#direct header;2b0#don't care;3b>LOW_FREQ_BAND",
|
||||
"4b0#don't care;1bCHOPPER;1bFAST_SETTLE",
|
||||
"5b>STI_VOLT;4b>STI_PMOS",
|
||||
"2b0#don't care;1bCHOPPER;1bFAST_SETTLE;3b>STI_WAVEFORM",
|
||||
"5b>STI_AMPERE;4b>STI_PMOS",
|
||||
"4b>STI_NMOS;4b>SAMPLE_RATE"
|
||||
]
|
||||
},
|
||||
"umc_parameter": {
|
||||
"type": "RIS",
|
||||
"foreach-parameter": {
|
||||
"parameter": "CHANNEL",
|
||||
"variable": [
|
||||
"a",
|
||||
"b",
|
||||
"c",
|
||||
"d"
|
||||
]
|
||||
},
|
||||
"data": [
|
||||
"3b001#umc parameter header",
|
||||
"3b>AMP_GAIN;4b>PULSE_WIDTH",
|
||||
"6b>STI_TIMES;2b>STI_BEHAVIOR",
|
||||
"6b>STI_FREQ"
|
||||
"3b001#umc parameter header;3b>AMP_GAIN",
|
||||
"4b>PULSE_WIDTH;6b>STI_TIMES",
|
||||
"2b>STI_MODE;6b>STI_FREQ",
|
||||
"1ba?;1bb?;1bc?;1bd?",
|
||||
"4b>a?:0;4b>b?:0",
|
||||
"4b>c?:0;4b>d?:0"
|
||||
]
|
||||
},
|
||||
"umc_default": [
|
||||
"_set('CHANNEL', 3)",
|
||||
"_set('CHANNEL', 4)",
|
||||
"_set('CHANNEL', 5)",
|
||||
"_set('CHANNEL', 6)",
|
||||
"_set('CHANNEL', 7)",
|
||||
"_set('CHANNEL', 8)",
|
||||
"_set('SAMPLE_RATE', 9)",
|
||||
"_set('AMP_GAIN', 3)",
|
||||
"_set('STI_BEHAVIOR', 1)",
|
||||
"_set('STI_MODE', 0)",
|
||||
"_set('STI_NMOS', STI_PMOS + 1)",
|
||||
"_set('STI_PMOS', 0)",
|
||||
"_set('STI_NMOS', 1)",
|
||||
"_set('STI_VOLT', 0)",
|
||||
"_set('CHANNEL', 0)",
|
||||
"_set('SAMPLE_RATE', 0)",
|
||||
"_set('AMP_GAIN', 5)",
|
||||
"_set('STI_WAVEFORM', 1)",
|
||||
"_set('STI_MODE', 1)",
|
||||
"_set('STI_NMOS', 0)",
|
||||
"_set('STI_PMOS', 1)",
|
||||
"_set('STI_AMPERE', 0)",
|
||||
"_set('STI_FREQ', 0)",
|
||||
"_set('STI_TIMES', 0)",
|
||||
"_set('PULSE_WIDTH', 0)",
|
||||
"_set('FAST_SETTLE', 0)",
|
||||
"_set('CHOPPER', 1)",
|
||||
"_set('FAST_SETTLE', 1)",
|
||||
"_set('CHOPPER', 0)",
|
||||
"data_format",
|
||||
"_notify(True)",
|
||||
"umc_default0",
|
||||
@@ -239,6 +254,14 @@
|
||||
"data": [
|
||||
"1B0#load umc default parameter into uni"
|
||||
]
|
||||
},
|
||||
"umc_sti_trigger0": {
|
||||
"type": "RIS",
|
||||
"description": "this function is perform only in trigger mode",
|
||||
"data": [
|
||||
"1BC0# trigger stimulation when recording is performed"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
+64
@@ -0,0 +1,64 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
#ifndef NEULIVE_1P2
|
||||
#define NEULIVE_1P2
|
||||
|
||||
/*============================
|
||||
==== product information ====
|
||||
===========================*/
|
||||
|
||||
#define DEVICE_NAME "Neulive-v1.2"
|
||||
#define MAJOR_PRODUCT_NUMBER 1
|
||||
#define MINOR_PRODUCT_NUMBER 1
|
||||
#define MAJOR_VERSION_NUMBER 1 // need to modify
|
||||
#define MINOR_VERSION_NUMBER 2
|
||||
|
||||
static uint16_t sti_channel_table[4] = {
|
||||
{0b000001}, // 2
|
||||
{0b000111}, // 8
|
||||
{0b001011}, // 12
|
||||
{0b001111} // 16
|
||||
};
|
||||
|
||||
static uint16_t reverse_channel[16] = {{0x0A}, // 1
|
||||
{0x0B},
|
||||
{0x00},
|
||||
{0x01},
|
||||
{0x02},
|
||||
{0x07},
|
||||
{0x06},
|
||||
{0x03},
|
||||
{0x05},
|
||||
{0x04},
|
||||
{0x08},
|
||||
{0xff},
|
||||
{0x0c},
|
||||
{0x09},
|
||||
{0xff},
|
||||
{0xff}};
|
||||
|
||||
static uint16_t amp_channel_table[13] = { //
|
||||
{0x03},
|
||||
{0x04},
|
||||
{0x05},
|
||||
{0x08},
|
||||
{0x0A},
|
||||
{0x09},
|
||||
{0x07},
|
||||
{0x06},
|
||||
{0x0B},
|
||||
{0x0E},
|
||||
{0x01},
|
||||
{0x02},
|
||||
{0x0D}};
|
||||
|
||||
static uint16_t amp_gain_table[] = {
|
||||
0b100011, // 3
|
||||
0b000011, // 30
|
||||
0b101100, // 40
|
||||
0b101001, // 70
|
||||
0b001100, // 400
|
||||
0b001001, // 700
|
||||
};
|
||||
|
||||
#endif
|
||||
+60
@@ -0,0 +1,60 @@
|
||||
/* Copyright (c) 2019. BioPro. Scientific.
|
||||
*/
|
||||
#ifndef NEULIVE_1P3
|
||||
#define NEULIVE_1P3
|
||||
|
||||
/*============================
|
||||
==== product information ====
|
||||
===========================*/
|
||||
|
||||
#define DEVICE_NAME "Neulive-v1.3"
|
||||
#define MAJOR_PRODUCT_NUMBER 1
|
||||
#define MINOR_PRODUCT_NUMBER 1
|
||||
#define MAJOR_VERSION_NUMBER 1
|
||||
#define MINOR_VERSION_NUMBER 3
|
||||
|
||||
static uint16_t sti_channel_table[4] = {
|
||||
{0b000010}, // 3
|
||||
{0b000011}, // 4
|
||||
{0b000100}, // 5
|
||||
{0b000101} // 6
|
||||
};
|
||||
|
||||
static uint16_t reverse_channel[16] = {{0x0A}, // 1
|
||||
{0x00},
|
||||
{0x01},
|
||||
{0x02},
|
||||
{0x03},
|
||||
{0x08},
|
||||
{0x07},
|
||||
{0x06},
|
||||
{0x05},
|
||||
{0x04},
|
||||
{0x09},
|
||||
{0x0B},
|
||||
{0xFF},
|
||||
{0xFF},
|
||||
{0xff},
|
||||
{0xff}};
|
||||
|
||||
static uint16_t amp_channel_table[12] = { //
|
||||
{0x02},
|
||||
{0x03},
|
||||
{0x04},
|
||||
{0x05},
|
||||
{0x0A},
|
||||
{0x09},
|
||||
{0x08},
|
||||
{0x07},
|
||||
{0x06},
|
||||
{0x0b},
|
||||
{0x01},
|
||||
{0x0C}};
|
||||
|
||||
static uint16_t amp_gain_table[] = {
|
||||
0b100011, // 3
|
||||
0b101100, // 14
|
||||
0b101001, // 27
|
||||
};
|
||||
|
||||
#endif
|
||||
+181
-177
@@ -72,7 +72,6 @@
|
||||
|
||||
#if defined(FEATURE_OAD) || defined(IMAGE_INVALIDATE)
|
||||
#include "oad_target.h"
|
||||
|
||||
#include "oad.h"
|
||||
#endif // FEATURE_OAD || IMAGE_INVALIDATE
|
||||
|
||||
@@ -116,20 +115,28 @@
|
||||
// Minimum connection interval (units of 1.25ms, 80=100ms) if automatic
|
||||
// parameter update request is enabled
|
||||
#define DEFAULT_DESIRED_MIN_CONN_INTERVAL 6
|
||||
//#define DEFAULT_DESIRED_MIN_CONN_INTERVAL 14
|
||||
|
||||
// Maximum connection interval (units of 1.25ms, 800=1000ms) if automatic
|
||||
// parameter update request is enabled
|
||||
//#define DEFAULT_DESIRED_MAX_CONN_INTERVAL 6
|
||||
#define DEFAULT_DESIRED_MAX_CONN_INTERVAL 6
|
||||
|
||||
#else //! FEATURE_OAD
|
||||
// Minimum connection interval (units of 1.25ms, 8=10ms) if automatic
|
||||
// parameter update request is enabled
|
||||
#define DEFAULT_DESIRED_MIN_CONN_INTERVAL 80
|
||||
//#define DEFAULT_DESIRED_MIN_CONN_INTERVAL 14
|
||||
|
||||
// Maximum connection interval (units of 1.25ms, 8=10ms) if automatic
|
||||
// parameter update request is enabled
|
||||
#define DEFAULT_DESIRED_MAX_CONN_INTERVAL 80
|
||||
//#define DEFAULT_DESIRED_MAX_CONN_INTERVAL 25
|
||||
|
||||
#endif // FEATURE_OAD
|
||||
|
||||
#define SBP_PERIODIC_EVT_PERIOD DEFAULT_DESIRED_MIN_CONN_INTERVAL + 2
|
||||
|
||||
// Slave latency to use if automatic parameter update request is enabled
|
||||
#define DEFAULT_DESIRED_SLAVE_LATENCY 0
|
||||
|
||||
@@ -153,7 +160,7 @@
|
||||
#define SBP_TASK_PRIORITY 1
|
||||
|
||||
#ifndef SBP_TASK_STACK_SIZE
|
||||
#define SBP_TASK_STACK_SIZE 1024
|
||||
#define SBP_TASK_STACK_SIZE 844
|
||||
#endif
|
||||
|
||||
// Internal Events for RTOS application
|
||||
@@ -161,6 +168,7 @@
|
||||
#define SBP_STATE_CHANGE_EVT 0x0001
|
||||
#define SBP_CHAR_CHANGE_EVT 0x0002
|
||||
#define SBP_CONN_EVT_END_EVT 0x0004
|
||||
#define SBP_PERIODIC_EVT 0x0008
|
||||
// clang-format on
|
||||
|
||||
/*********************************************************************
|
||||
@@ -184,7 +192,7 @@ typedef struct {
|
||||
static ICall_EntityID self;
|
||||
|
||||
// Semaphore globally used to post events to the application thread
|
||||
static ICall_Semaphore semaphore;
|
||||
ICall_Semaphore semaphore;
|
||||
|
||||
// Queue object used for app messages
|
||||
static Queue_Struct application_message;
|
||||
@@ -221,7 +229,6 @@ static void SimpleBLEPeripheral_sendAttRsp(void);
|
||||
static void SimpleBLEPeripheral_freeAttRsp(uint8_t status);
|
||||
static void SimpleBLEPeripheral_stateChangeCB(gaprole_States_t newState);
|
||||
static void SimpleBLEPeripheral_enqueueMsg(uint8_t event, uint8_t state);
|
||||
static void headstage_data_length_extension();
|
||||
|
||||
#ifndef FEATURE_OAD_ONCHIP
|
||||
static void SimpleBLEPeripheral_charValueChangeCB(uint8_t paramID);
|
||||
@@ -309,6 +316,7 @@ static void SimpleBLEPeripheral_init(void) {
|
||||
// so that the application can send and receive messages.
|
||||
ICall_registerApp(&self, &semaphore);
|
||||
|
||||
// Hard code the DB Address till CC2650 board gets its own IEEE address
|
||||
#ifdef USE_RCOSC
|
||||
RCOSC_enableCalibration();
|
||||
#endif // USE_RCOSC
|
||||
@@ -408,9 +416,10 @@ static void SimpleBLEPeripheral_init(void) {
|
||||
// Register for GATT local events and ATT Responses pending for transmission
|
||||
GATT_RegisterForMsgs(self);
|
||||
|
||||
HCI_LE_ReadMaxDataLenCmd();
|
||||
// HCI_LE_ReadMaxDataLenCmd();
|
||||
//
|
||||
// HCI_LE_WriteSuggestedDefaultDataLenCmd(251, 2120); // this is used for data length extension
|
||||
|
||||
HCI_LE_WriteSuggestedDefaultDataLenCmd(251 , 2120); // this is used for data length extension
|
||||
}
|
||||
|
||||
#ifndef DEVICE_NAME
|
||||
@@ -444,75 +453,74 @@ static void SimpleBLEPeripheral_init(void) {
|
||||
#endif
|
||||
|
||||
static char *date = __DATE__;
|
||||
static void headstage_init_device_info() {
|
||||
|
||||
static void headstage_init_device_info() {
|
||||
uint8_t year = 10 * (date[9] - '0') + (date[10] - '0');
|
||||
uint8_t month = 0;
|
||||
|
||||
switch (date[0]) {
|
||||
case 'J':
|
||||
// Jan, January
|
||||
// Jun, June
|
||||
// Jul, July
|
||||
if (date[1] == 'a') {
|
||||
month = 1;
|
||||
} else if (date[2] == 'n') {
|
||||
month = 6;
|
||||
} else {
|
||||
month = 7;
|
||||
}
|
||||
break;
|
||||
case 'F':
|
||||
// Feb, February
|
||||
month = 2;
|
||||
break;
|
||||
case 'M':
|
||||
// Mar, March
|
||||
// May, May
|
||||
if (date[2] == 'r') {
|
||||
month = 3;
|
||||
} else {
|
||||
month = 5;
|
||||
}
|
||||
break;
|
||||
case 'A':
|
||||
// Apr, April
|
||||
// Ang, August
|
||||
if (date[1] == 'p') {
|
||||
month = 4;
|
||||
} else {
|
||||
month = 8;
|
||||
}
|
||||
break;
|
||||
case 'S':
|
||||
// Sep, September
|
||||
month = 9;
|
||||
break;
|
||||
case 'O':
|
||||
// Oct, October
|
||||
month = 10;
|
||||
break;
|
||||
case 'N':
|
||||
// Nov, November
|
||||
month = 11;
|
||||
break;
|
||||
case 'D':
|
||||
// Dec, December
|
||||
month = 12;
|
||||
break;
|
||||
case 'J':
|
||||
// Jan, January
|
||||
// Jun, June
|
||||
// Jul, July
|
||||
if (date[1] == 'a') {
|
||||
month = 1;
|
||||
} else if (date[2] == 'n') {
|
||||
month = 6;
|
||||
} else {
|
||||
month = 7;
|
||||
}
|
||||
break;
|
||||
case 'F':
|
||||
// Feb, February
|
||||
month = 2;
|
||||
break;
|
||||
case 'M':
|
||||
// Mar, March
|
||||
// May, May
|
||||
if (date[2] == 'r') {
|
||||
month = 3;
|
||||
} else {
|
||||
month = 5;
|
||||
}
|
||||
break;
|
||||
case 'A':
|
||||
// Apr, April
|
||||
// Ang, August
|
||||
if (date[1] == 'p') {
|
||||
month = 4;
|
||||
} else {
|
||||
month = 8;
|
||||
}
|
||||
break;
|
||||
case 'S':
|
||||
// Sep, September
|
||||
month = 9;
|
||||
break;
|
||||
case 'O':
|
||||
// Oct, October
|
||||
month = 10;
|
||||
break;
|
||||
case 'N':
|
||||
// Nov, November
|
||||
month = 11;
|
||||
break;
|
||||
case 'D':
|
||||
// Dec, December
|
||||
month = 12;
|
||||
break;
|
||||
}
|
||||
|
||||
uint8_t scanRspData[64];
|
||||
uint8_t *p = scanRspData;
|
||||
*p++ = sizeof(DEVICE_NAME);
|
||||
*p++ = GAP_ADTYPE_LOCAL_NAME_COMPLETE;
|
||||
// unsafe_memcpy(p, DEVICE_NAME, sizeof(DEVICE_NAME));
|
||||
for (unsigned int i = 0; i < sizeof(DEVICE_NAME) - 1; i++){
|
||||
// unsafe_memcpy(p, DEVICE_NAME, sizeof(DEVICE_NAME));
|
||||
for (unsigned int i = 0; i < sizeof(DEVICE_NAME) - 1; i++) {
|
||||
*p++ = DEVICE_NAME[i];
|
||||
}
|
||||
*p++ = 11;
|
||||
*p++ = 16;
|
||||
*p++ = GAP_ADTYPE_MANUFACTURER_SPECIFIC;
|
||||
// unsafe_memcpy(p, "BPHS", 4);
|
||||
// unsafe_memcpy(p, "BPHS", 4);
|
||||
*p++ = 'B';
|
||||
*p++ = 'P';
|
||||
*p++ = 'H';
|
||||
@@ -523,6 +531,13 @@ static void headstage_init_device_info() {
|
||||
*p++ = MINOR_VERSION_NUMBER;
|
||||
*p++ = year;
|
||||
*p++ = month;
|
||||
*p++ = 'B';
|
||||
*p++ = 'A';
|
||||
*p++ = 'T';
|
||||
*p++ = headstage_battery_volt1();
|
||||
*p++ = headstage_battery_volt2();
|
||||
|
||||
|
||||
|
||||
GGS_SetParameter(GGS_DEVICE_NAME_ATT, sizeof(DEVICE_NAME), DEVICE_NAME);
|
||||
|
||||
@@ -553,7 +568,6 @@ static void SimpleBLEPeripheral_taskFxn(UArg a0, UArg a1) {
|
||||
// message is queued to the message receive queue of the thread or when
|
||||
// ICall_signal() function is called onto the semaphore.
|
||||
ICall_Errno errno = ICall_wait(ICALL_TIMEOUT_FOREVER);
|
||||
// headstage_watchdog_clear();
|
||||
if (errno == ICALL_ERRNO_SUCCESS) {
|
||||
ICall_EntityID dest;
|
||||
ICall_ServiceEnum src;
|
||||
@@ -581,22 +595,31 @@ static void SimpleBLEPeripheral_taskFxn(UArg a0, UArg a1) {
|
||||
ICall_freeMsg(message);
|
||||
}
|
||||
}
|
||||
}
|
||||
// If RTOS queue is not empty, process app message.
|
||||
while (!Queue_empty(application_message_queue)) {
|
||||
sbpEvt_t *message = (sbpEvt_t *)Util_dequeueMsg(application_message_queue);
|
||||
if (message) {
|
||||
// Process message.
|
||||
SimpleBLEPeripheral_processAppMsg(message);
|
||||
|
||||
// If RTOS queue is not empty, process app message.
|
||||
while (!Queue_empty(application_message_queue)) {
|
||||
sbpEvt_t *message = (sbpEvt_t *)Util_dequeueMsg(application_message_queue);
|
||||
if (message) {
|
||||
// Process message.
|
||||
SimpleBLEPeripheral_processAppMsg(message);
|
||||
|
||||
// Free the space from the message.
|
||||
ICall_free(message);
|
||||
}
|
||||
// Free the space from the message.
|
||||
ICall_free(message);
|
||||
}
|
||||
}
|
||||
if (EVENT_MASK > 0) {
|
||||
headstage_event_handle();
|
||||
}
|
||||
|
||||
// if (EVENT_MASK > 0) {
|
||||
// headstage_event_handle();
|
||||
// }
|
||||
|
||||
// if (events & SBP_PERIODIC_EVT) {
|
||||
// events &= ~SBP_PERIODIC_EVT;
|
||||
//
|
||||
// // Util_startClock(&periodicClock);
|
||||
//
|
||||
// // Perform periodic application task
|
||||
// SimpleBLEPeripheral_performPeriodicTask();
|
||||
// }
|
||||
|
||||
#ifdef FEATURE_OAD
|
||||
while (!Queue_empty(oad_queue_handle)) {
|
||||
@@ -629,22 +652,21 @@ static void SimpleBLEPeripheral_taskFxn(UArg a0, UArg a1) {
|
||||
*/
|
||||
static uint8_t SimpleBLEPeripheral_processStackMsg(ICall_Hdr *message) {
|
||||
switch (message->event) {
|
||||
case GATT_MSG_EVENT:
|
||||
// Process GATT message
|
||||
return SimpleBLEPeripheral_processGATTMsg((gattMsgEvent_t *)message);
|
||||
case GATT_MSG_EVENT:
|
||||
// Process GATT message
|
||||
return SimpleBLEPeripheral_processGATTMsg((gattMsgEvent_t *)message);
|
||||
|
||||
case HCI_GAP_EVENT_EVENT:{ // GAP event
|
||||
switch(message->event)
|
||||
{
|
||||
case HCI_GAP_EVENT_EVENT: { // GAP event
|
||||
switch (message->event) {
|
||||
case HCI_EXT_SET_MAX_DATA_LENGTH_EVENT: {
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
default:
|
||||
return TRUE;
|
||||
default:
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -677,9 +699,8 @@ static uint8_t SimpleBLEPeripheral_processGATTMsg(gattMsgEvent_t *message) {
|
||||
|
||||
} else if (message->method == ATT_MTU_UPDATED_EVENT) {
|
||||
// MTU size updated
|
||||
headstage_debug_buffer[10] = 0x0f;
|
||||
headstage_set_debug_information();
|
||||
// headstage_data_length_extension();
|
||||
} else if (message->method == ATT_HANDLE_VALUE_CFM) {
|
||||
// quick pass
|
||||
}
|
||||
|
||||
// Free message payload. Needed only for ATT Protocol messages
|
||||
@@ -759,13 +780,13 @@ static void SimpleBLEPeripheral_freeAttRsp(uint8_t status) {
|
||||
*/
|
||||
static void SimpleBLEPeripheral_processAppMsg(sbpEvt_t *message) {
|
||||
switch (message->hdr.event) {
|
||||
case SBP_STATE_CHANGE_EVT:
|
||||
SimpleBLEPeripheral_processStateChangeEvt((gaprole_States_t)message->hdr.state);
|
||||
break;
|
||||
case SBP_STATE_CHANGE_EVT:
|
||||
SimpleBLEPeripheral_processStateChangeEvt((gaprole_States_t)message->hdr.state);
|
||||
break;
|
||||
|
||||
case SBP_CHAR_CHANGE_EVT:
|
||||
headstage_characteristic_updated(message->hdr.state);
|
||||
break;
|
||||
case SBP_CHAR_CHANGE_EVT:
|
||||
headstage_characteristic_updated(message->hdr.state);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -793,77 +814,81 @@ static void SimpleBLEPeripheral_stateChangeCB(gaprole_States_t newState) {
|
||||
*/
|
||||
static void SimpleBLEPeripheral_processStateChangeEvt(gaprole_States_t newState) {
|
||||
switch (newState) {
|
||||
case GAPROLE_STARTED: { // Started but not advertising
|
||||
uint8_t ownAddress[B_ADDR_LEN];
|
||||
uint8_t systemId[DEVINFO_SYSTEM_ID_LEN];
|
||||
case GAPROLE_STARTED: { // Started but not advertising
|
||||
uint8_t ownAddress[B_ADDR_LEN];
|
||||
uint8_t systemId[DEVINFO_SYSTEM_ID_LEN];
|
||||
|
||||
GAPRole_GetParameter(GAPROLE_BD_ADDR, ownAddress);
|
||||
GAPRole_GetParameter(GAPROLE_BD_ADDR, ownAddress);
|
||||
|
||||
// use 6 bytes of device address for 8 bytes of system ID value
|
||||
systemId[0] = ownAddress[0];
|
||||
systemId[1] = ownAddress[1];
|
||||
systemId[2] = ownAddress[2];
|
||||
// use 6 bytes of device address for 8 bytes of system ID value
|
||||
systemId[0] = ownAddress[0];
|
||||
systemId[1] = ownAddress[1];
|
||||
systemId[2] = ownAddress[2];
|
||||
|
||||
// set middle bytes to zero
|
||||
systemId[4] = 0x00;
|
||||
systemId[3] = 0x00;
|
||||
// set middle bytes to zero
|
||||
systemId[4] = 0x00;
|
||||
systemId[3] = 0x00;
|
||||
|
||||
// shift three bytes up
|
||||
systemId[7] = ownAddress[5];
|
||||
systemId[6] = ownAddress[4];
|
||||
systemId[5] = ownAddress[3];
|
||||
// shift three bytes up
|
||||
systemId[7] = ownAddress[5];
|
||||
systemId[6] = ownAddress[4];
|
||||
systemId[5] = ownAddress[3];
|
||||
|
||||
DevInfo_SetParameter(DEVINFO_SYSTEM_ID, DEVINFO_SYSTEM_ID_LEN, systemId);
|
||||
DevInfo_SetParameter(DEVINFO_SYSTEM_ID, DEVINFO_SYSTEM_ID_LEN, systemId);
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
case GAPROLE_CONNECTED: { // In a connection
|
||||
linkDBInfo_t linkInfo;
|
||||
uint8_t numActive = 0;
|
||||
numActive = linkDB_NumActive();
|
||||
|
||||
headstage_led_spi_color(COLOR_GREEN);
|
||||
|
||||
uint16_t cxnHandle;
|
||||
uint16_t requestedPDUSize = 251;
|
||||
uint16_t requestTxTime = 2120;
|
||||
GAPRole_GetParameter(GAPROLE_CONNHANDLE, &cxnHandle);
|
||||
|
||||
if(SUCCESS != HCI_LE_SetDataLenCmd(cxnHandle, requestedPDUSize, requestTxTime)) {
|
||||
break;
|
||||
}
|
||||
// Use numActive to determine the connection handle of the last
|
||||
// connection
|
||||
if (linkDB_GetInfo(numActive - 1, &linkInfo) == SUCCESS) {
|
||||
} else {
|
||||
uint8_t peerAddress[B_ADDR_LEN];
|
||||
GAPRole_GetParameter(GAPROLE_CONN_BD_ADDR, peerAddress);
|
||||
|
||||
case GAPROLE_CONNECTED: { // In a connection
|
||||
linkDBInfo_t linkInfo;
|
||||
uint8_t numActive = 0;
|
||||
numActive = linkDB_NumActive();
|
||||
|
||||
uint16_t cxnHandle;
|
||||
|
||||
// requestedPDUSize = LL payload = L2CAP_header + ATT header + BLE_NOT_BUFF_SIZE = 7 + BLE_NOT_BUFF_SIZE
|
||||
uint16_t requestedPDUSize = 251;
|
||||
uint16_t requestTxTime = 2120; // (LL payload + 14) * 8
|
||||
GAPRole_GetParameter(GAPROLE_CONNHANDLE, &cxnHandle);
|
||||
|
||||
if (SUCCESS == HCI_LE_SetDataLenCmd(cxnHandle, requestedPDUSize, requestTxTime)) {
|
||||
ConnectState = true;
|
||||
}
|
||||
// Use numActive to determine the connection handle of the last
|
||||
// connection
|
||||
if (linkDB_GetInfo(numActive - 1, &linkInfo) == SUCCESS) {
|
||||
} else {
|
||||
uint8_t peerAddress[B_ADDR_LEN];
|
||||
GAPRole_GetParameter(GAPROLE_CONN_BD_ADDR, peerAddress);
|
||||
}
|
||||
break;
|
||||
}
|
||||
flag_notify(EVT_CONNECTED);
|
||||
break;
|
||||
}
|
||||
|
||||
case GAPROLE_WAITING:
|
||||
// Device is started but not advertising, is in waiting period before advertising again
|
||||
SimpleBLEPeripheral_freeAttRsp(bleNotConnected);
|
||||
break;
|
||||
case GAPROLE_WAITING:
|
||||
// Device is started but not advertising, is in waiting period before advertising again
|
||||
SimpleBLEPeripheral_freeAttRsp(bleNotConnected);
|
||||
ConnectState = false;
|
||||
if(ErrorRestart){
|
||||
}
|
||||
else{
|
||||
}
|
||||
break;
|
||||
|
||||
case GAPROLE_WAITING_AFTER_TIMEOUT:
|
||||
// Device just timed out from a connection but is not yet advertising, is in waiting period before advertising again
|
||||
// disconnected
|
||||
SimpleBLEPeripheral_freeAttRsp(bleNotConnected);
|
||||
headstage_led_spi_color(COLOR_RED);
|
||||
CONNECT_HANDLE = 0xFFFF;
|
||||
flag_notify(EVT_DISCONNECTED);
|
||||
break;
|
||||
case GAPROLE_ERROR: // Error occurred - invalid state
|
||||
headstage_led_spi_color(COLOR_RED);
|
||||
break;
|
||||
case GAPROLE_INIT: // Waiting to be started
|
||||
case GAPROLE_ADVERTISING: // Currently Advertising
|
||||
case GAPROLE_CONNECTED_ADV: // In a connection and advertising
|
||||
default:
|
||||
break;
|
||||
case GAPROLE_WAITING_AFTER_TIMEOUT:
|
||||
// Device just timed out from a connection but is not yet advertising, is in waiting period before advertising again
|
||||
// disconnected
|
||||
SimpleBLEPeripheral_freeAttRsp(bleNotConnected);
|
||||
ErrorRestart = true;
|
||||
CONNECT_HANDLE = 0xFFFF;
|
||||
flag_notify(EVT_DISCONNECTED);
|
||||
break;
|
||||
case GAPROLE_ERROR: // Error occurred - invalid state
|
||||
break;
|
||||
case GAPROLE_INIT: // Waiting to be started
|
||||
case GAPROLE_ADVERTISING: // Currently Advertising
|
||||
case GAPROLE_CONNECTED_ADV: // In a connection and advertising
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -939,24 +964,3 @@ static void SimpleBLEPeripheral_enqueueMsg(uint8_t event, uint8_t state) {
|
||||
Util_enqueueMsg(application_message_queue, semaphore, (uint8 *)message);
|
||||
}
|
||||
}
|
||||
|
||||
static void headstage_data_length_extension(){
|
||||
while(1){
|
||||
while (!Queue_empty(application_message_queue))
|
||||
{
|
||||
sbpEvt_t *pMsg = (sbpEvt_t *)Util_dequeueMsg(application_message_queue);
|
||||
if (pMsg)
|
||||
{
|
||||
// Process message.
|
||||
SimpleBLEPeripheral_processAppMsg(pMsg);
|
||||
|
||||
// Free the space from the message.
|
||||
ICall_free(pMsg);
|
||||
}
|
||||
}
|
||||
if (EVENT_MASK > 0) {
|
||||
headstage_event_handle();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+289
@@ -0,0 +1,289 @@
|
||||
/******************************************************************************
|
||||
|
||||
@file main.c
|
||||
|
||||
@brief main entry of the BLE stack sample application.
|
||||
|
||||
Group: WCS, BTS
|
||||
Target Device: CC2650, CC2640
|
||||
|
||||
******************************************************************************
|
||||
|
||||
Copyright (c) 2013-2018, Texas Instruments Incorporated
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
* Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
* Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
* Neither the name of Texas Instruments Incorporated nor the names of
|
||||
its contributors may be used to endorse or promote products derived
|
||||
from this software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
||||
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
******************************************************************************
|
||||
Release Name: ble_sdk_2_02_02_25
|
||||
Release Date: 2018-04-02 18:03:35
|
||||
*****************************************************************************/
|
||||
|
||||
/*******************************************************************************
|
||||
* INCLUDES
|
||||
*/
|
||||
|
||||
#include <xdc/runtime/Error.h>
|
||||
|
||||
#include <ti/drivers/Power.h>
|
||||
#include <ti/drivers/power/PowerCC26XX.h>
|
||||
#include <ti/sysbios/BIOS.h>
|
||||
|
||||
#include "icall.h"
|
||||
#include "hal_assert.h"
|
||||
#include "central.h"
|
||||
#include "simple_central.h"
|
||||
|
||||
/* Header files required to enable instruction fetch cache */
|
||||
#include <inc/hw_memmap.h>
|
||||
#include <driverlib/vims.h>
|
||||
|
||||
#ifndef USE_DEFAULT_USER_CFG
|
||||
|
||||
#include "ble_user_config.h"
|
||||
|
||||
// BLE user defined configuration
|
||||
bleUserCfg_t user0Cfg = BLE_USER_CFG;
|
||||
|
||||
#endif // USE_DEFAULT_USER_CFG
|
||||
|
||||
#include <ti/mw/display/Display.h>
|
||||
|
||||
#ifdef USE_FPGA
|
||||
#include <inc/hw_prcm.h>
|
||||
#endif // USE_FPGA
|
||||
|
||||
/*******************************************************************************
|
||||
* MACROS
|
||||
*/
|
||||
|
||||
/*******************************************************************************
|
||||
* CONSTANTS
|
||||
*/
|
||||
|
||||
#if defined( USE_FPGA )
|
||||
#define RFC_MODE_BLE PRCM_RFCMODESEL_CURR_MODE1
|
||||
#define RFC_MODE_ANT PRCM_RFCMODESEL_CURR_MODE4
|
||||
#define RFC_MODE_EVERYTHING_BUT_ANT PRCM_RFCMODESEL_CURR_MODE5
|
||||
#define RFC_MODE_EVERYTHING PRCM_RFCMODESEL_CURR_MODE6
|
||||
//
|
||||
#define SET_RFC_BLE_MODE(mode) HWREG( PRCM_BASE + PRCM_O_RFCMODESEL ) = (mode)
|
||||
#endif // USE_FPGA
|
||||
|
||||
/*******************************************************************************
|
||||
* TYPEDEFS
|
||||
*/
|
||||
|
||||
/*******************************************************************************
|
||||
* LOCAL VARIABLES
|
||||
*/
|
||||
|
||||
/*******************************************************************************
|
||||
* GLOBAL VARIABLES
|
||||
*/
|
||||
|
||||
/*******************************************************************************
|
||||
* EXTERNS
|
||||
*/
|
||||
|
||||
extern void AssertHandler(uint8 assertCause, uint8 assertSubcause);
|
||||
|
||||
extern Display_Handle dispHandle;
|
||||
|
||||
/*******************************************************************************
|
||||
* @fn Main
|
||||
*
|
||||
* @brief Application Main
|
||||
*
|
||||
* input parameters
|
||||
*
|
||||
* @param None.
|
||||
*
|
||||
* output parameters
|
||||
*
|
||||
* @param None.
|
||||
*
|
||||
* @return None.
|
||||
*/
|
||||
int main()
|
||||
{
|
||||
#if defined( USE_FPGA )
|
||||
HWREG(PRCM_BASE + PRCM_O_PDCTL0) &= ~PRCM_PDCTL0_RFC_ON;
|
||||
HWREG(PRCM_BASE + PRCM_O_PDCTL1) &= ~PRCM_PDCTL1_RFC_ON;
|
||||
#endif // USE_FPGA
|
||||
|
||||
/* Register Application callback to trap asserts raised in the Stack */
|
||||
RegisterAssertCback(AssertHandler);
|
||||
|
||||
PIN_init(BoardGpioInitTable);
|
||||
|
||||
#if defined( USE_FPGA )
|
||||
// set RFC mode to support BLE
|
||||
// Note: This must be done before the RF Core is released from reset!
|
||||
SET_RFC_BLE_MODE(RFC_MODE_BLE);
|
||||
#endif // USE_FPGA
|
||||
|
||||
// Enable iCache prefetching
|
||||
VIMSConfigure(VIMS_BASE, TRUE, TRUE);
|
||||
|
||||
// Enable cache
|
||||
VIMSModeSet(VIMS_BASE, VIMS_MODE_ENABLED);
|
||||
|
||||
#if !defined( POWER_SAVING ) || defined( USE_FPGA )
|
||||
/* Set constraints for Standby, powerdown and idle mode */
|
||||
// PowerCC26XX_SB_DISALLOW may be redundant
|
||||
Power_setConstraint(PowerCC26XX_SB_DISALLOW);
|
||||
Power_setConstraint(PowerCC26XX_IDLE_PD_DISALLOW);
|
||||
#endif // POWER_SAVING | USE_FPGA
|
||||
|
||||
/* Initialize ICall module */
|
||||
ICall_init();
|
||||
|
||||
/* Start tasks of external images - Priority 5 */
|
||||
ICall_createRemoteTasks();
|
||||
|
||||
/* Kick off profile - Priority 3 */
|
||||
GAPCentralRole_createTask();
|
||||
|
||||
/* Kick off application - Priority 1 */
|
||||
SimpleBLECentral_createTask();
|
||||
|
||||
/* enable interrupts and start SYS/BIOS */
|
||||
BIOS_start();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
* @fn AssertHandler
|
||||
*
|
||||
* @brief This is the Application's callback handler for asserts raised
|
||||
* in the stack. When EXT_HAL_ASSERT is defined in the Stack
|
||||
* project this function will be called when an assert is raised,
|
||||
* and can be used to observe or trap a violation from expected
|
||||
* behavior.
|
||||
*
|
||||
* As an example, for Heap allocation failures the Stack will raise
|
||||
* HAL_ASSERT_CAUSE_OUT_OF_MEMORY as the assertCause and
|
||||
* HAL_ASSERT_SUBCAUSE_NONE as the assertSubcause. An application
|
||||
* developer could trap any malloc failure on the stack by calling
|
||||
* HAL_ASSERT_SPINLOCK under the matching case.
|
||||
*
|
||||
* An application developer is encouraged to extend this function
|
||||
* for use by their own application. To do this, add hal_assert.c
|
||||
* to your project workspace, the path to hal_assert.h (this can
|
||||
* be found on the stack side). Asserts are raised by including
|
||||
* hal_assert.h and using macro HAL_ASSERT(cause) to raise an
|
||||
* assert with argument assertCause. the assertSubcause may be
|
||||
* optionally set by macro HAL_ASSERT_SET_SUBCAUSE(subCause) prior
|
||||
* to asserting the cause it describes. More information is
|
||||
* available in hal_assert.h.
|
||||
*
|
||||
* input parameters
|
||||
*
|
||||
* @param assertCause - Assert cause as defined in hal_assert.h.
|
||||
* @param assertSubcause - Optional assert subcause (see hal_assert.h).
|
||||
*
|
||||
* output parameters
|
||||
*
|
||||
* @param None.
|
||||
*
|
||||
* @return None.
|
||||
*/
|
||||
void AssertHandler(uint8 assertCause, uint8 assertSubcause)
|
||||
{
|
||||
// Open the display if the app has not already done so
|
||||
if ( !dispHandle )
|
||||
{
|
||||
dispHandle = Display_open(Display_Type_LCD, NULL);
|
||||
}
|
||||
|
||||
Display_print0(dispHandle, 0, 0, ">>>STACK ASSERT");
|
||||
|
||||
// check the assert cause
|
||||
switch (assertCause)
|
||||
{
|
||||
case HAL_ASSERT_CAUSE_OUT_OF_MEMORY:
|
||||
Display_print0(dispHandle, 0, 0, "***ERROR***");
|
||||
Display_print0(dispHandle, 2, 0, ">> OUT OF MEMORY!");
|
||||
break;
|
||||
|
||||
case HAL_ASSERT_CAUSE_INTERNAL_ERROR:
|
||||
// check the subcause
|
||||
if (assertSubcause == HAL_ASSERT_SUBCAUSE_FW_INERNAL_ERROR)
|
||||
{
|
||||
Display_print0(dispHandle, 0, 0, "***ERROR***");
|
||||
Display_print0(dispHandle, 2, 0, ">> INTERNAL FW ERROR!");
|
||||
}
|
||||
else
|
||||
{
|
||||
Display_print0(dispHandle, 0, 0, "***ERROR***");
|
||||
Display_print0(dispHandle, 2, 0, ">> INTERNAL ERROR!");
|
||||
}
|
||||
break;
|
||||
|
||||
case HAL_ASSERT_CAUSE_ICALL_ABORT:
|
||||
Display_print0(dispHandle, 0, 0, "***ERROR***");
|
||||
Display_print0(dispHandle, 2, 0, ">> ICALL ABORT!");
|
||||
HAL_ASSERT_SPINLOCK;
|
||||
break;
|
||||
|
||||
default:
|
||||
Display_print0(dispHandle, 0, 0, "***ERROR***");
|
||||
Display_print0(dispHandle, 2, 0, ">> DEFAULT SPINLOCK!");
|
||||
HAL_ASSERT_SPINLOCK;
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
* @fn smallErrorHook
|
||||
*
|
||||
* @brief Error handler to be hooked into TI-RTOS.
|
||||
*
|
||||
* input parameters
|
||||
*
|
||||
* @param eb - Pointer to Error Block.
|
||||
*
|
||||
* output parameters
|
||||
*
|
||||
* @param None.
|
||||
*
|
||||
* @return None.
|
||||
*/
|
||||
void smallErrorHook(Error_Block *eb)
|
||||
{
|
||||
for (;;);
|
||||
}
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
*/
|
||||
+14
-2
@@ -71,6 +71,8 @@
|
||||
|
||||
#include "ble_user_config.h"
|
||||
|
||||
#include "headstage_spi.h"
|
||||
|
||||
|
||||
/*********************************************************************
|
||||
* MACROS
|
||||
@@ -270,6 +272,10 @@ static uint8_t throughput_peripheral_peer_addr[B_ADDR_LEN] = { 0xFF, 0xEE, 0xDD,
|
||||
// Received byte counters
|
||||
static volatile uint32_t bytesRecvd = 0;
|
||||
static volatile uint32_t bytesRecvdShadow = 0;
|
||||
static volatile uint8_t channel = 0;
|
||||
|
||||
uint8_t spi_tx[3] = {0x00, 0x01, 0x0f};
|
||||
uint8_t spi_rx[3] = {0};
|
||||
|
||||
/*********************************************************************
|
||||
* LOCAL FUNCTIONS
|
||||
@@ -370,7 +376,7 @@ static void SimpleBLECentral_init(void)
|
||||
// Register the current thread as an ICall dispatcher application
|
||||
// so that the application can send and receive messages.
|
||||
ICall_registerApp(&selfEntity, &sem);
|
||||
|
||||
headstage_spi_open();
|
||||
// Hard code the DB Address till CC2650 board gets its own IEEE address
|
||||
//uint8 bdAddress[B_ADDR_LEN] = { 0x11, 0x11, 0x11, 0x11, 0x11, 0x11 };
|
||||
//HCI_EXT_SetBDADDRCmd(bdAddress);
|
||||
@@ -496,7 +502,7 @@ static void SimpleBLECentral_taskFxn(UArg a0, UArg a1)
|
||||
ICall_HciExtEvt *pMsg = NULL;
|
||||
|
||||
if (ICall_fetchServiceMsg(&src, &dest,
|
||||
(void **)&pMsg) == ICALL_ERRNO_SUCCESS)
|
||||
(void **)&pMsg) == ICALL_ERRNO_SUCCESS) // i think this part of (void **)&pMsg is called by referenced
|
||||
{
|
||||
if ((src == ICALL_SERVICE_CLASS_BLE) && (dest == selfEntity))
|
||||
{
|
||||
@@ -536,6 +542,10 @@ static void SimpleBLECentral_taskFxn(UArg a0, UArg a1)
|
||||
events &= ~SBC_MEASURE_SPEED_EVT;
|
||||
|
||||
Display_print1(dispHandle, 7, 0, "Rate (B/s): %d", bytesRecvdShadow);
|
||||
Display_print1(dispHandle, 7, 0, "channel:%d", channel);
|
||||
Display_print1(dispHandle, 7, 0, "spi_rxbuf[0]: %d", spi_rx[0]);
|
||||
Display_print1(dispHandle, 7, 0, "spi_rxbuf[1]: %d", spi_rx[1]);
|
||||
Display_print1(dispHandle, 7, 0, "spi_rxbuf[2]: %d", spi_rx[2]);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -850,6 +860,7 @@ static void SimpleBLECentral_processGATTMsg(gattMsgEvent_t *pMsg)
|
||||
else if (pMsg->method == ATT_HANDLE_VALUE_NOTI)
|
||||
{
|
||||
bytesRecvd += pMsg->msg.handleValueNoti.len;
|
||||
channel = pMsg->msg.handleValueNoti.pValue[8];
|
||||
}
|
||||
else if (pMsg->method == ATT_MTU_UPDATED_EVENT)
|
||||
{
|
||||
@@ -1295,6 +1306,7 @@ static uint8_t SimpleBLECentral_enqueueMsg(uint8_t event, uint8_t state,
|
||||
*/
|
||||
static void SimpleBLECentral_speedHandler(UArg a0)
|
||||
{
|
||||
// headstage_spi_transaction(3, spi_tx, spi_rx);
|
||||
bytesRecvdShadow = bytesRecvd;
|
||||
bytesRecvd = 0;
|
||||
events |= SBC_MEASURE_SPEED_EVT;
|
||||
|
||||
+120
@@ -0,0 +1,120 @@
|
||||
/******************************************************************************
|
||||
|
||||
@file main.c
|
||||
|
||||
@brief main entry of the BLE stack sample application.
|
||||
|
||||
Group: WCS, BTS
|
||||
Target Device: CC2650, CC2640
|
||||
|
||||
******************************************************************************
|
||||
|
||||
Copyright (c) 2013-2018, Texas Instruments Incorporated
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
* Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
* Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
* Neither the name of Texas Instruments Incorporated nor the names of
|
||||
its contributors may be used to endorse or promote products derived
|
||||
from this software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
||||
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
******************************************************************************
|
||||
Release Name: ble_sdk_2_02_02_25
|
||||
Release Date: 2018-04-02 18:03:35
|
||||
*****************************************************************************/
|
||||
|
||||
/*================
|
||||
==== include ====
|
||||
===============*/
|
||||
|
||||
// clang-format off
|
||||
#include <xdc/runtime/Error.h>
|
||||
|
||||
#include <ti/drivers/PIN.h>
|
||||
#include <ti/drivers/Power.h>
|
||||
#include <ti/drivers/power/PowerCC26XX.h>
|
||||
#include <ti/sysbios/BIOS.h>
|
||||
|
||||
#include "icall.h"
|
||||
#include "bcomdef.h"
|
||||
#include "peripheral.h"
|
||||
|
||||
#include "simple_peripheral.h"
|
||||
|
||||
/* Header files required to enable instruction fetch cache */
|
||||
#include <inc/hw_memmap.h>
|
||||
#include <driverlib/vims.h>
|
||||
// clang-format on
|
||||
|
||||
#ifndef USE_DEFAULT_USER_CFG
|
||||
|
||||
#include "ble_user_config.h"
|
||||
|
||||
// BLE user defined configuration
|
||||
bleUserCfg_t user0Cfg = BLE_USER_CFG;
|
||||
|
||||
#endif // USE_DEFAULT_USER_CFG
|
||||
|
||||
extern const PIN_Config BoardGpioInitTable[];
|
||||
|
||||
/**
|
||||
* @fn Main
|
||||
*
|
||||
* @brief Application Main
|
||||
*
|
||||
* input parameters
|
||||
*
|
||||
* @param None.
|
||||
*
|
||||
* output parameters
|
||||
*
|
||||
* @param None.
|
||||
*
|
||||
* @return None.
|
||||
*/
|
||||
int main() {
|
||||
PIN_init(BoardGpioInitTable);
|
||||
|
||||
// Enable iCache prefetching
|
||||
VIMSConfigure(VIMS_BASE, TRUE, TRUE);
|
||||
|
||||
// Enable cache
|
||||
VIMSModeSet(VIMS_BASE, VIMS_MODE_ENABLED);
|
||||
|
||||
/* Initialize ICall module */
|
||||
ICall_init();
|
||||
|
||||
/* Start tasks of external images - Priority 5 */
|
||||
ICall_createRemoteTasks();
|
||||
|
||||
/* Kick off profile - Priority 3 */
|
||||
GAPRole_createTask();
|
||||
|
||||
SimpleBLEPeripheral_createTask();
|
||||
|
||||
/* enable interrupts and start SYS/BIOS */
|
||||
BIOS_start();
|
||||
|
||||
return 0;
|
||||
}
|
||||
+1365
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user