ASIMET PICPRC FRONT END COMMAND SET

The following commands are available on the RS-485 communications link to the PICPRC front end. REMEMBER! This is a 1200 baud link. Also, note that the PICPRC firmware is the same as a PICHRH front end; the only difference is in the scaling resistors on the input op amps.

Note: commands sent are indicated in BOLD, responses in normal text. <crlf> represents ASCII carriage return and line feed. The space after the BOLD command in each example is for clarity - it is NOT actually transmitted.

Command Description


        A       Address acknowledge
                - returns address of module, terminated by <crlf>
                - e.g. #H1A H1<crlf>
                - NOTE: H1 is the default address of the PICPRC; the digit
                may be changed by using the 'W0' command but any failure of
                serial EEPROM will result in the use of the default address.
                NOTE: Currently, the address MUST remain H1 for operation in 
                ASIMET PRC modules.
        H       Help
                - a single line response indicating the available commands.
                - e.g. #H1H CMD: A,H,K,R,V,Wn,0,1<crlf>

        K       Kill analog power
                - this command turns off analog power to the RM Young rain guage
                and puts the A/D converter into low-power standby mode, then
                responds <crlf>.
                - e.g. #H1K <crlf>

        R       Read 32 bytes of EEPROM
                - this command reads the 32 bytes of EEPROM and sends them 
                literally, i.e. as binary - no HEX-ASCII conversion is performed.
                Except for the first 2 bytes of EEPROM, which are interpreted as
                the PICPRC address, the rest of the bytes are free format, to be
                used by the attached controller at the other end of the RS485 link.
                Typical use is for cal constants, etc.  The 32 bytes sent are
                terminated with ASCII <crlf>.
                - e.g. #H1R <32 bytes of binary><crlf>
                - NOTE: if you wrote bytes representing ASCII characters that your
                terminal program can display, you will, of course,  see ASCII
                characters!

        V       Version of firmware
                - responds with firmware version
                - e.g. #H1V PICHRH v1.0<crlf>
        Wn      Write block n of EEPROM
                - this command writes 15 bytes to the specified block of EEPROM.
                Blocks are sequential from 0 to 3.  Thus to write 30 bytes to the
                EEPROM, you would send the first 15 bytes to block 0, the second
                15 bytes to block 1, etc.  The first 2 bytes of block 0 carry 
                special meaning, described below.  Blocks 1, 2, and 3 are free-format.
                - the first 2 bytes of block 0 are interpreted by the PICPRC as
                address bytes.  The first byte MUST be ASCII 'H' (54h) or the PICPRC
                will use its default address of 'H1'.  The second byte may be any
                value, though to be useful during test and calibration, printable 
                characters, or at least characters easily generated by a terminal,
                are preferable.
                - upon completion of the write, response is <crlf> .
                - e.g. to write block 0: #H1W0H1<any 13 additional bytes><crlf>

        0
        1       Return A/D channel 0 or 1
                - the 0 and 1 commands cause the PICPRC to power up the analog
                front end, in firmware version 1.0, wait 100 MS, then get a 12 bit
                A/D value for the channel and return it, in HEX-ASCII, terminated
                with <crlf>.
                - the returned values are left shifted by 4 bits (a function of the
                A/D converter used).  Divide by 16 to get the actual 12 bit value.
                - the MUX setting remains at the setting of the last A/D request
                and analog power remains ON, so if additional settling time is
                required, wait externally, then request the same channel again. 
                This also implies that the first reading after analog power up may
                be bad, so just request the same channel again.
                - upon completion of a series of A/D conversions, use the 'K'
                command to kill analog power to the rain guage.  This will save a
                large amount of current consumption.
                - e.g. to request channel 0: #H10 43D0<crlf>
                - e.g. to request channel 1: #H11 FFF0<crlf>
                - current channel assignments for Mk1 hardware are:
                        0 : PRC
                        1 : not used