A barcode scanner is a handheld or stationary device that collects data at a short or long distance from a 1D barcode (such as a 128 barcode) or 2D barcode (such as a QR code or data matrix); stationary barcode scanners can be integrated into embedded systems.