pixtend 0.1.0

Rust library for the PiXtend V2L board
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
pub fn calc_crc16(data: impl Iterator<Item = u8>) -> u16 {
    let mut crc = 0xFFFF;
    for byte in data {
        crc ^= byte as u16;

        for _ in 0..8 {
            if crc & 1 != 0 {
                crc = (crc >> 1) ^ 0xA001;
            } else {
                crc >>= 1;
            }
        }
    }

    crc
}