Documentation

# step

System object: comm.CRCDetector
Package: comm

Detect errors in input data using CRC

## Syntax

```[Y,ERR] = step(H,X) ```

## Description

### Note

Starting in R2016b, instead of using the `step` method to perform the operation defined by the System object™, you can call the object with arguments, as if it were a function. For example, `y = step(obj,x)` and `y = obj(x)` perform equivalent operations.

`[Y,ERR] = step(H,X)` computes checksums for the entire input frame, `X`. `X` must be a binary column vector and the data type can be double or logical. The step method outputs a row vector `ERR`, with size equal to the number of checksums that you specify in the `CheckSumsPerFrame` property. The elements of `ERR` are `0` if the checksum computation yields a zero value, and `1` otherwise. The method outputs `Y`, with the set of `CheckSumsPerFrame` message words concatenated after removing the checksums bits. The object sets the length of output `Y` as length(`X`)$-$P$×$`CheckSumsPerFrame`, where P is the order of the polynomial that you specify in the `Polynomial` property.

### Note

`obj` specifies the System object on which to run this `step` method.

The object performs an initialization the first time the `step` method is executed. This initialization locks nontunable properties (MATLAB) and input specifications, such as dimensions, complexity, and data type of the input data. If you change a nontunable property or an input specification, the System object issues an error. To change nontunable properties or inputs, you must first call the `release` method to unlock the object.