Campbell Scientific CR3000 CR3000 Micrologger - Page 10

Use of Variable Arrays to Conserve Code Space - manual

Page 10 highlights

Table of Contents 10 7.7.3.1 Numerical Formats 117 7.7.3.2 Structure 117 7.7.3.3 Command Line 119 7.7.3.3.1 Multiple Statements on One Line 120 7.7.3.3.2 One Statement on Multiple Lines 120 7.7.3.4 Single-Line Declarations 120 7.7.3.4.1 Variables 120 7.7.3.4.2 Constants 127 7.7.3.4.3 Alias and Unit Declarations 129 7.7.3.5 Declared Sequences 130 7.7.3.5.1 Data Tables 130 7.7.3.5.2 Subroutines 137 7.7.3.5.3 Incidental Sequences 137 7.7.3.6 Execution and Task Priority 137 7.7.3.6.1 Pipeline Mode 138 7.7.3.6.2 Sequential Mode 139 7.7.3.7 Execution Timing 140 7.7.3.7.1 Scan() / NextScan 141 7.7.3.7.2 SlowSequence / EndSequence 142 7.7.3.7.3 SubScan() / NextSubScan 142 7.7.3.7.4 Scan Priorities in Sequential Mode 142 7.7.3.8 Instructions 144 7.7.3.8.1 Measurement and Data-Storage Processing 144 7.7.3.8.2 Argument Types 145 7.7.3.8.3 Names in Arguments 145 7.7.3.8.4 Expressions in Arguments 146 7.7.3.8.5 Arrays of Multipliers and Offsets 146 7.7.3.9 Expressions 147 7.7.3.9.1 Floating-Point Arithmetic 147 7.7.3.9.2 Mathematical Operations 148 7.7.3.9.3 Expressions with Numeric Data Types 148 7.7.3.9.4 Logical Expressions 150 7.7.3.9.5 String Expressions 152 7.7.3.10 Program Access to Data Tables 153 7.7.3.11 System Signatures 155 7.7.4 Tips 155 7.7.4.1 Use of Variable Arrays to Conserve Code Space 155 7.7.4.2 Use of Move() to Conserve Code Space 155 7.8 Programming Resource Library 156 7.8.1 Calibration Using FieldCal() and FieldCalStrain 156 7.8.1.1 CAL Files 156 7.8.1.2 CRBasic Programming 156 7.8.1.3 Calibration Wizard Overview 157 7.8.1.4 Manual Calibration Overview 157 7.8.1.4.1 Single-Point Calibrations (zero, offset, or zero basis 157 7.8.1.4.2 Two-point Calibrations (multiplier / gain 158 7.8.1.5 FieldCal() Demonstration Programs 158 7.8.1.5.1 Zero or Tare (Option 0 159 7.8.1.5.2 Offset (Option 1 160 7.8.1.5.3 Zero Basis (Option 4 162 7.8.1.5.4 Two-Point Slope and Offset (Option 2 164 7.8.1.5.5 Two-Point Slope Only (Option 3 166 7.8.1.6 FieldCalStrain() Demonstration Program 167 7.8.1.6.1 Quarter-Bridge Shunt (Option 13 170 7.8.1.6.2 Quarter-Bridge Zero (Option 10 170

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309
  • 310
  • 311
  • 312
  • 313
  • 314
  • 315
  • 316
  • 317
  • 318
  • 319
  • 320
  • 321
  • 322
  • 323
  • 324
  • 325
  • 326
  • 327
  • 328
  • 329
  • 330
  • 331
  • 332
  • 333
  • 334
  • 335
  • 336
  • 337
  • 338
  • 339
  • 340
  • 341
  • 342
  • 343
  • 344
  • 345
  • 346
  • 347
  • 348
  • 349
  • 350
  • 351
  • 352
  • 353
  • 354
  • 355
  • 356
  • 357
  • 358
  • 359
  • 360
  • 361
  • 362
  • 363
  • 364
  • 365
  • 366
  • 367
  • 368
  • 369
  • 370
  • 371
  • 372
  • 373
  • 374
  • 375
  • 376
  • 377
  • 378
  • 379
  • 380
  • 381
  • 382
  • 383
  • 384
  • 385
  • 386
  • 387
  • 388
  • 389
  • 390
  • 391
  • 392
  • 393
  • 394
  • 395
  • 396
  • 397
  • 398
  • 399
  • 400
  • 401
  • 402
  • 403
  • 404
  • 405
  • 406
  • 407
  • 408
  • 409
  • 410
  • 411
  • 412
  • 413
  • 414
  • 415
  • 416
  • 417
  • 418
  • 419
  • 420
  • 421
  • 422
  • 423
  • 424
  • 425
  • 426
  • 427
  • 428
  • 429
  • 430
  • 431
  • 432
  • 433
  • 434
  • 435
  • 436
  • 437
  • 438
  • 439
  • 440
  • 441
  • 442
  • 443
  • 444
  • 445
  • 446
  • 447
  • 448
  • 449
  • 450
  • 451
  • 452
  • 453
  • 454
  • 455
  • 456
  • 457
  • 458
  • 459
  • 460
  • 461
  • 462
  • 463
  • 464
  • 465
  • 466
  • 467
  • 468
  • 469
  • 470
  • 471
  • 472
  • 473
  • 474
  • 475
  • 476
  • 477
  • 478
  • 479
  • 480
  • 481
  • 482
  • 483
  • 484
  • 485
  • 486
  • 487
  • 488
  • 489
  • 490
  • 491
  • 492
  • 493
  • 494
  • 495
  • 496
  • 497
  • 498
  • 499
  • 500
  • 501
  • 502
  • 503
  • 504
  • 505
  • 506
  • 507
  • 508
  • 509
  • 510
  • 511
  • 512
  • 513
  • 514
  • 515
  • 516
  • 517
  • 518
  • 519
  • 520
  • 521
  • 522
  • 523
  • 524
  • 525
  • 526
  • 527
  • 528
  • 529
  • 530
  • 531
  • 532
  • 533
  • 534
  • 535
  • 536
  • 537
  • 538
  • 539
  • 540
  • 541
  • 542
  • 543
  • 544
  • 545
  • 546
  • 547
  • 548
  • 549
  • 550
  • 551
  • 552
  • 553
  • 554
  • 555
  • 556
  • 557
  • 558
  • 559
  • 560
  • 561
  • 562
  • 563
  • 564
  • 565
  • 566
  • 567
  • 568
  • 569
  • 570
  • 571
  • 572
  • 573
  • 574
  • 575
  • 576
  • 577
  • 578
  • 579
  • 580
  • 581
  • 582
  • 583
  • 584
  • 585
  • 586
  • 587
  • 588
  • 589
  • 590

Table of Contents
10
7.7.3.1 Numerical Formats
.............................................................
117
7.7.3.2 Structure
.............................................................................
117
7.7.3.3 Command Line
...................................................................
119
7.7.3.3.1 Multiple Statements on One Line
.............................
120
7.7.3.3.2 One Statement on Multiple Lines
.............................
120
7.7.3.4 Single-Line Declarations
....................................................
120
7.7.3.4.1 Variables
...................................................................
120
7.7.3.4.2 Constants
..................................................................
127
7.7.3.4.3 Alias and Unit Declarations
......................................
129
7.7.3.5 Declared Sequences
...........................................................
130
7.7.3.5.1 Data Tables
...............................................................
130
7.7.3.5.2 Subroutines
...............................................................
137
7.7.3.5.3 Incidental Sequences
................................................
137
7.7.3.6 Execution and Task Priority
...............................................
137
7.7.3.6.1 Pipeline Mode
...........................................................
138
7.7.3.6.2 Sequential Mode
.......................................................
139
7.7.3.7 Execution Timing
...............................................................
140
7.7.3.7.1 Scan() / NextScan
.....................................................
141
7.7.3.7.2 SlowSequence / EndSequence
..................................
142
7.7.3.7.3 SubScan() / NextSubScan
.........................................
142
7.7.3.7.4 Scan Priorities in Sequential Mode
...........................
142
7.7.3.8 Instructions
.........................................................................
144
7.7.3.8.1 Measurement and Data-Storage Processing
..............
144
7.7.3.8.2 Argument Types
.......................................................
145
7.7.3.8.3 Names in Arguments
................................................
145
7.7.3.8.4 Expressions in Arguments
........................................
146
7.7.3.8.5 Arrays of Multipliers and Offsets
.............................
146
7.7.3.9 Expressions
........................................................................
147
7.7.3.9.1 Floating-Point Arithmetic
.........................................
147
7.7.3.9.2 Mathematical Operations
..........................................
148
7.7.3.9.3 Expressions with Numeric Data Types
.....................
148
7.7.3.9.4 Logical Expressions
..................................................
150
7.7.3.9.5 String Expressions
....................................................
152
7.7.3.10 Program Access to Data Tables
.......................................
153
7.7.3.11 System Signatures
............................................................
155
7.7.4 Tips
..............................................................................................
155
7.7.4.1 Use of Variable Arrays to Conserve Code Space
...............
155
7.7.4.2 Use of Move() to Conserve Code Space
............................
155
7.8 Programming Resource Library
............................................................
156
7.8.1 Calibration Using FieldCal() and FieldCalStrain()
......................
156
7.8.1.1 CAL Files
...........................................................................
156
7.8.1.2 CRBasic Programming
.......................................................
156
7.8.1.3 Calibration Wizard Overview
............................................
157
7.8.1.4 Manual Calibration Overview
............................................
157
7.8.1.4.1 Single-Point Calibrations (zero, offset, or zero
basis)
................................................................................
157
7.8.1.4.2 Two-point Calibrations (multiplier / gain)
................
158
7.8.1.5 FieldCal() Demonstration Programs
..................................
158
7.8.1.5.1 Zero or Tare (Option 0)
............................................
159
7.8.1.5.2 Offset (Option 1)
......................................................
160
7.8.1.5.3 Zero Basis (Option 4)
...............................................
162
7.8.1.5.4 Two-Point Slope and Offset (Option 2)
....................
164
7.8.1.5.5 Two-Point Slope Only (Option 3)
............................
166
7.8.1.6 FieldCalStrain() Demonstration Program
..........................
167
7.8.1.6.1 Quarter-Bridge Shunt (Option 13)
............................
170
7.8.1.6.2 Quarter-Bridge Zero (Option 10)
..............................
170