Campbell Hausfeld SDM-SIO4 manual Specifications, Serial Ports, Serial Port Buffers

Page 9

Section 1 . Introduction

1.2 Specifications

1.2.1 Serial Ports

The SDM-SIO4 has four serial ports which can be configured independently to use different serial data formats and baud rates (from 25 to 115,200 baud). These ports are 0-5V logic or ±5V for RS232 and are configured similar to a PC ‘AT’ style DTE serial port.

Handshaking, to control the flow of data to and from a sensor, can be done by the datalogger or SDM-SIO4 if needed, and can be in the form of hardware or software protocols.

 

Table 1 SDM-SIO4 Serial Port Pin Configuration

Pin No.

SDM-SIO4 Port

1.

RI ring indicate/DCD in

2.

RX in

3.

TX out

4.

DTR data terminal ready out

5.

Ground

6.

DSR in

7.

RTS request to send out

8.

CTS clear to send in

9.

+5V if internal link fitted, otherwise no connection

 

 

 

NOTE If you have an older SDM-SIO4 which has female ‘D’ type connectors, your connections will be different from those shown above. Please either refer to your earlier Manual or contact Campbell Scientific for further details.

Serial Port Buffers

Each serial port has a receive (Rx) buffer, a transmit (Tx) buffer and a processed data storage buffer. It is important to understand these buffers as their size can determine how often data must be collected from the SDM-SIO4 by the datalogger. It is important to avoid letting these buffers fill up. They are of the ‘fill and stop’ type, i.e. if they fill up, and more data is sent into the buffer, the extra data will be lost.

The receive and transmit buffers for each port are 981 bytes long and there is an additional 16-byte hardware buffer for each port.

The processed data storage buffer (used to store converted data ready for the datalogger to collect) is 891 bytes long, which is large enough for 222 4- byte Campbell Scientific floating point values (refer to the datalogger manual for more details of this format).

There is one more buffer, which is used only when the datalogger outputs floating point data via the SDM-SIO4. This buffer is 241 bytes — long enough for 60 floating point values. (The size of this buffer is rarely a limitation as it is emptied quickly.)

1-3

Image 9
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