# bit_array_1

bit array library

Author | Matthew Schinkel - borntechi.com, copyright © 2009, all rights reserved.
Adapted-by |
Compiler | >=2.4m

Description

    This library allows creation of bit arrays with
                 up to 16383 entries.

Dependencies

No dependency found

## Summary

### Global variables/contants

- `const byte _BIT_ARRAY_1_CALC2 = _BIT_ARRAY_1_CALC1 * 8`
- `const byte _BIT_ARRAY_1_CALC1 = BIT_ARRAY_1_SIZE / 8`
- `const byte _BIT_ARRAY_1_CALC3 = BIT_ARRAY_1_SIZE - _BIT_ARRAY_1_CALC1`
- `const word _BIT_ARRAY_1_ARRAY_SIZE = (BIT_ARRAY_1_SIZE / 8)+ 1`

### Procedures

- `bit_array_1'put(word in address, bit in data)`

Private

- `_bit_array_1_set_byte(word in byte_address, byte in bit_address, bit in data)`

### Functions

- `bit_array_1'get(word in address) return bit`

Private

- `_bit_array_1_get_byte(word in byte_address, byte in bit_address) return bit`

## API details

### Global variables/contants

- `const byte _BIT_ARRAY_1_CALC2 = _BIT_ARRAY_1_CALC1 * 8`

  No documentation found

- `const byte _BIT_ARRAY_1_CALC1 = BIT_ARRAY_1_SIZE / 8`

      create a byte array to hold the bits

- `const byte _BIT_ARRAY_1_CALC3 = BIT_ARRAY_1_SIZE - _BIT_ARRAY_1_CALC1`

  No documentation found

- `const word _BIT_ARRAY_1_ARRAY_SIZE = (BIT_ARRAY_1_SIZE / 8)+ 1`

  No documentation found

### Procedures

- `bit_array_1'put(word in address, bit in data)`

      Write to bit array

Private

- `_bit_array_1_set_byte(word in byte_address, byte in bit_address, bit in data)`

      Writes one bit to the correct byte array (internal use only)

### Functions

- `bit_array_1'get(word in address) return bit`

      Read from bit array

Private

- `_bit_array_1_get_byte(word in byte_address, byte in bit_address) return bit`

      Reads one bit from the correct byte array (internal use only)

## Related samples

Here are the list of samples which use this library:

16f648a | 16f648a_bit_array.jal
16f723 | 16f723_bit_array.jal
16f73 | 16f73_bit_array.jal
16f877 | 16f877_bit_array.jal
16f877a | 16f877a_bit_array.jal
16f88 | 16f88_bit_array.jal
18f14k50 | 18f14k50_bit_array.jal
18f2450 | 18f2450_bit_array.jal
18f2520 | 18f2520_bit_array.jal
18f2550 | 18f2550_bit_array.jal
18f2620 | 18f2620_bit_array.jal
18f452 | 18f452_bit_array.jal
18f4550 | 18f4550_bit_array.jal
18f4620 | 18f4620_bit_array.jal
18f67j50 | 18f67j50_bit_array.jal