Campbell Scientific CR1000KD CR1000 Measurement and Control System - Page 10

Use of Variable Arrays to Conserve Code Space

Page 10 highlights

Table of Contents 10 7.7.3.4 Single-Line Declarations 115 7.7.3.4.1 Variables 115 7.7.3.4.2 Constants 122 7.7.3.4.3 Alias and Unit Declarations 124 7.7.3.5 Declared Sequences 125 7.7.3.5.1 Data Tables 125 7.7.3.5.2 Subroutines 132 7.7.3.5.3 Incidental Sequences 132 7.7.3.6 Execution and Task Priority 132 7.7.3.6.1 Pipeline Mode 133 7.7.3.6.2 Sequential Mode 134 7.7.3.7 Execution Timing 135 7.7.3.7.1 Scan() / NextScan 136 7.7.3.7.2 SlowSequence / EndSequence 137 7.7.3.7.3 SubScan() / NextSubScan 137 7.7.3.7.4 Scan Priorities in Sequential Mode 137 7.7.3.8 Instructions 139 7.7.3.8.1 Measurement and Data-Storage Processing 139 7.7.3.8.2 Argument Types 140 7.7.3.8.3 Names in Arguments 140 7.7.3.8.4 Expressions in Arguments 141 7.7.3.8.5 Arrays of Multipliers and Offsets 141 7.7.3.9 Expressions 142 7.7.3.9.1 Floating-Point Arithmetic 142 7.7.3.9.2 Mathematical Operations 143 7.7.3.9.3 Expressions with Numeric Data Types 143 7.7.3.9.4 Logical Expressions 145 7.7.3.9.5 String Expressions 147 7.7.3.10 Program Access to Data Tables 148 7.7.3.11 System Signatures 150 7.7.4 Tips 150 7.7.4.1 Use of Variable Arrays to Conserve Code Space 150 7.7.4.2 Use of Move() to Conserve Code Space 150 7.8 Programming Resource Library 151 7.8.1 Calibration Using FieldCal() and FieldCalStrain 151 7.8.1.1 CAL Files 151 7.8.1.2 CRBasic Programming 151 7.8.1.3 Calibration Wizard Overview 152 7.8.1.4 Manual Calibration Overview 152 7.8.1.4.1 Single-Point Calibrations (zero, offset, or zero basis 152 7.8.1.4.2 Two-point Calibrations (multiplier / gain 153 7.8.1.5 FieldCal() Demonstration Programs 153 7.8.1.5.1 Zero or Tare (Option 0 154 7.8.1.5.2 Offset (Option 1 155 7.8.1.5.3 Zero Basis (Option 4 157 7.8.1.5.4 Two-Point Slope and Offset (Option 2 159 7.8.1.5.5 Two-Point Slope Only (Option 3 161 7.8.1.6 FieldCalStrain() Demonstration Program 162 7.8.1.6.1 Quarter-Bridge Shunt (Option 13 165 7.8.1.6.2 Quarter-Bridge Zero (Option 10 165 7.8.2 Information Services 166 7.8.2.1 PakBus Over TCP/IP and Callback 167 7.8.2.2 Default HTTP Web Server 167 7.8.2.3 Custom HTTP Web Server 168 7.8.2.4 FTP Server 171

  • 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

Table of Contents
10
7.7.3.4 Single-Line Declarations
....................................................
115
7.7.3.4.1 Variables
...................................................................
115
7.7.3.4.2 Constants
..................................................................
122
7.7.3.4.3 Alias and Unit Declarations
......................................
124
7.7.3.5 Declared Sequences
...........................................................
125
7.7.3.5.1 Data Tables
...............................................................
125
7.7.3.5.2 Subroutines
...............................................................
132
7.7.3.5.3 Incidental Sequences
................................................
132
7.7.3.6 Execution and Task Priority
...............................................
132
7.7.3.6.1 Pipeline Mode
...........................................................
133
7.7.3.6.2 Sequential Mode
.......................................................
134
7.7.3.7 Execution Timing
...............................................................
135
7.7.3.7.1 Scan() / NextScan
.....................................................
136
7.7.3.7.2 SlowSequence / EndSequence
..................................
137
7.7.3.7.3 SubScan() / NextSubScan
.........................................
137
7.7.3.7.4 Scan Priorities in Sequential Mode
...........................
137
7.7.3.8 Instructions
.........................................................................
139
7.7.3.8.1 Measurement and Data-Storage Processing
..............
139
7.7.3.8.2 Argument Types
.......................................................
140
7.7.3.8.3 Names in Arguments
................................................
140
7.7.3.8.4 Expressions in Arguments
........................................
141
7.7.3.8.5 Arrays of Multipliers and Offsets
.............................
141
7.7.3.9 Expressions
........................................................................
142
7.7.3.9.1 Floating-Point Arithmetic
.........................................
142
7.7.3.9.2 Mathematical Operations
..........................................
143
7.7.3.9.3 Expressions with Numeric Data Types
.....................
143
7.7.3.9.4 Logical Expressions
..................................................
145
7.7.3.9.5 String Expressions
....................................................
147
7.7.3.10 Program Access to Data Tables
.......................................
148
7.7.3.11 System Signatures
............................................................
150
7.7.4 Tips
..............................................................................................
150
7.7.4.1 Use of Variable Arrays to Conserve Code Space
...............
150
7.7.4.2 Use of Move() to Conserve Code Space
............................
150
7.8 Programming Resource Library
............................................................
151
7.8.1 Calibration Using FieldCal() and FieldCalStrain()
......................
151
7.8.1.1 CAL Files
...........................................................................
151
7.8.1.2 CRBasic Programming
.......................................................
151
7.8.1.3 Calibration Wizard Overview
............................................
152
7.8.1.4 Manual Calibration Overview
............................................
152
7.8.1.4.1 Single-Point Calibrations (zero, offset, or zero
basis)
................................................................................
152
7.8.1.4.2 Two-point Calibrations (multiplier / gain)
................
153
7.8.1.5 FieldCal() Demonstration Programs
..................................
153
7.8.1.5.1 Zero or Tare (Option 0)
............................................
154
7.8.1.5.2 Offset (Option 1)
......................................................
155
7.8.1.5.3 Zero Basis (Option 4)
...............................................
157
7.8.1.5.4 Two-Point Slope and Offset (Option 2)
....................
159
7.8.1.5.5 Two-Point Slope Only (Option 3)
............................
161
7.8.1.6 FieldCalStrain() Demonstration Program
..........................
162
7.8.1.6.1 Quarter-Bridge Shunt (Option 13)
............................
165
7.8.1.6.2 Quarter-Bridge Zero (Option 10)
..............................
165
7.8.2 Information Services
....................................................................
166
7.8.2.1 PakBus Over TCP/IP and Callback
....................................
167
7.8.2.2 Default HTTP Web Server
.................................................
167
7.8.2.3 Custom HTTP Web Server
................................................
168
7.8.2.4 FTP Server
.........................................................................
171