Campbell Hausfeld SDM-SIO4 manual Understanding Parameter Options and Returned Values

Page 33

Section 5. Programming the Datalogger

5.2.1 Understanding Parameter Options and Returned Values

NOTE In the following examples, ‘x’ indicates a single digit from 0 to 9.

When the command requires or returns values, each digit, or combination of digits, can signify either a value, flag or setting.

Using Command 5 as an example:

Number of watch dog resets

Number of invalid commands executed

Lithium battery level

x x x x

The first value returned by Command 5 indicates:

Actual number of watch dog resets (two digits 00 to 99) – a value.

Number of invalid commands executed (single digit 0 to 9) – a value.

Level (state) of the lithium battery (0=low, 1=good) – a flag.

If the value returned was, for example, 1281, then it would have the following meaning:

12 watch dog resets

8 invalid commands

1 battery level good

The second value returned shows whether or not data is available from a specific port. A non-zero digit indicates that data is available, whereas a zero signifies that no data is available.

Command 5 is explained in detail later.

NOTE When a command parameter requires values to be entered (e.g. Command 1026), it is a good idea to always enter all four digits. Only trailing zeros are significant to the SDM-SIO4, and so entering 0001 or 1 would be identical. However, if the first parameter needs to be 1, you must enter 1000. The habit of always entering all four values helps to minimise input errors.

5.2.2 Command 1: Poll of Available Data

This command has no additional options after the command. The SDM-SIO4 returns one Campbell Scientific floating point number to indicate if data is available as below:

Port 4 data available

Port 3 data available Port 2 data available

Port 1 data available

x x x x

If any of these four digits is greater than zero then data is available.

Values per repetition = 1

5-3

Image 33
Contents Issued Page Guarantee Page Contents Appendix A. Ascii Table Data Error DetectionIntroduction What is the SDM-SIO4?Datalogger Command Control SDM-SIO4 Serial Port Pin Configuration SpecificationsSerial Ports Serial Port BuffersSDM Port Power RequirementsCase Environmental Operating RangeOther Key Features Page Setting the SDM Address Installation and Hardware Set-UpAddress Settings Selector Block Settings SDM AddressSelecting RS232 or 5V Logic for Each Port Connections to the SDM-SIO4Transient Protection and Grounding Power-on Tests the Status LED Status LED Error CodesNo. of Flashes Description of error/status Page Understanding How the SDM-SIO4 Handles Data IntroductionMethod of Entering Special / Control Characters Input Filters Filter TypesSimple Filters Filter Strings Ibn8Ficn8F Simple Output Formatter Output FormattingPredefined Filter Strings Filter No Filter String UsedOutput Format Strings CR10X Program Example Fmtst 123 z261 f62 iBattery z257 f61z273Get panel temperature Get battery voltageCommand Line Operation and Structure Entering CommandsProgramming the SDM-SIO4 Basic Commands Advanced Commands Hexdump start address number of bytes ErrorresBytewr address byte WD n Wderr n Wdaddr nTestio returns Testio test#Page Instruction 113 Parameters Programming the DataloggerParameter 7 Values per Rep Commands and Options Parameters 4, 5Parameter 8 Starting Input Location Parameters 9 and 10 Multiplier and OffsetUnderstanding Parameter Options and Returned Values Command 1 Poll of Available DataCommand 3 Flush all Receive Buffers Command 2 SignaturesCommand 4 Send Data to Datalogger Command 5 StatusCommand 7 Activate Command Line Command 6 Flush Transmit BufferCommand 8 Poll Tx Buffers for Data Command 9 Flush Converted Data BufferCommand 320 Send Byte Data to SDM-SIO4 Command 67 Get Return CodeCommand 321 Execute Command Line Command Program Example for P113 CommandExecute the command line string Command 1025 Transmit a Byte Command 1024 Send String to DeviceCommand 1026 Serial Port Status First Value ReturnedSecond Value Returned First Command Option Reset Error CountersThird Value Returned Fourth Value ReturnedCommand 2049 Set Communications Parameters Command 1027 ‘Manual’ Handshake ModeSecond Command Option Parameter First Command Option ParameterCommand 2054 Set Up Receive Filter String Number or Character Code SDM-SIO4 Configuration Examples Command 2305 Transmit BytesExample CR10X Program End of serial and filter setup Set flag one high so the above will only be done onceGet two floating point numbers into locations 1 Strst 101 Send DataJM Example CR10X Program Using Instruction P113 CommandWait long enough for sensor to send data Set up the filter and then send stringGet data from SDM-SIO4 and put into locations 1 Sensors Which Send Data Out Without PromptingTime stamp Instantaneous sample form the sensorFltst 200 tdataA5xff Example CR10X Program without Polling or InterruptsEnd of set up Example CR10X Program using the Polling MethodGet the two floating point values from the SDM-SIO4 Instantaneous values stored to final storageDelay required by filter set-up command Set up string filterDo filter set-up only if flag one is clear Set flag one high so the filter set-up is only done onceExample CR10X Program using Interrupts Get voltages into locations 3 and 4 if poll was trueInstantaneous value stored into final storage Do filter setup only if flag one is clear Delay required by filter setup commandSet control port 8 to i/p so it can be used as an interrupt Get voltages into locations 3 Interrupt routine for control portInstantaneous readings stored into final storage End of interrupt routineOutputting Datalogger Data Flushing the Input and Output Buffers Return Error CodesData Error Detection Error Detection with the SDM-SIO4Received Data SDM-SIO4 User Guide Example of Using Received Data Filters 2 CR10X Program ExampleFltst 100 TFrequency=xg2n10fCCG8 Minimum delay of 4ms is required by the above P113 End of filter setupTell the SDM-SIO4 to use filter string End of get data CRC32 Transmitted DataFmtst 100 g1i123456789G8 Example of Using Transmitted Data FiltersFmtst 100 g1 Fmtst 101 isome data Fmtst 102 f62 G8 Alternative CR10X ProgramMinimum delay of 1ms is required after this command Use formatter string 100 to set up the CRC16 on portMinimum delay of 3.8ms is required after this command Send the Ascii characters ‘Y’ and ‘Z’ to portCRC16-CCITT-IBM Data Error Detection Page Dec Char Appendix A. Ascii TablePage Baud rates Appendix B. Serial Port Data Transfer ModesStop Bits Data LengthSerial Handshake Modes Parity Bits