uploaded 2 days ago
A pure C library for Hamming encoding and decoding, compatible with ESP-IDF.

readme

# Hamming(7,4) Encoding and Decoding Library

A lightweight C library providing functions to encode and decode data bits using the Hamming(7,4) error correction scheme.

## Features

- Encodes 4-bit data blocks into 7-bit Hamming code.
- Decodes and corrects single-bit errors in encoded data.

## Getting Started

### Usage

> **Warning:** The encode function assumes you are passing in bits in multiples of 4.

1. Include the header:
    ```c
    #include "hamming.h"
    ```
2. Encode & Decode data:

    ```c
    int input_bits[4] = {1,0,1,1};
    int out_bits[7];
    hamming_encode_74(input_bits, 4, out_bits);

    int decoded_bits[4];
    hamming_decode_74(out_bits, 7, decoded_bits);

    /* decoded_bits will be the same as input_bits */
    for (int i = 0; i < 4; i++) {
         assert(input_bits[i] == decoded_bits[i]);
    }
    ```

## License

This project is released under the [MIT License](LICENSE). Use it freely in your own projects!

Links

Supports all targets

License: MIT

To add this component to your project, run:

idf.py add-dependency "hmolavi/hamming74^1.0.0"

or download archive

Stats

  • Archive size
    Archive size ~ 5.99 KB
  • Downloaded in total
    Downloaded in total 2 times
  • Downloaded this version
    This version: 1 time

Badge

hmolavi/hamming74 version: 1.0.0
|