diff options
Diffstat (limited to 'Projects/Magstripe/Lib')
-rw-r--r-- | Projects/Magstripe/Lib/CircularBitBuffer.c | 35 | ||||
-rw-r--r-- | Projects/Magstripe/Lib/CircularBitBuffer.h | 31 | ||||
-rw-r--r-- | Projects/Magstripe/Lib/MagstripeHW.h | 11 |
3 files changed, 40 insertions, 37 deletions
diff --git a/Projects/Magstripe/Lib/CircularBitBuffer.c b/Projects/Magstripe/Lib/CircularBitBuffer.c index c1b21039c6..3b0ca6cd55 100644 --- a/Projects/Magstripe/Lib/CircularBitBuffer.c +++ b/Projects/Magstripe/Lib/CircularBitBuffer.c @@ -1,7 +1,7 @@ /* LUFA Library Copyright (C) Dean Camera, 2010. - + dean [at] fourwalledcubicle [dot] com www.fourwalledcubicle.com */ @@ -10,13 +10,13 @@ Copyright 2010 Denver Gingerich (denver [at] ossguy [dot] com) Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com) - Permission to use, copy, modify, distribute, and sell this + Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted - without fee, provided that the above copyright notice appear in + without fee, provided that the above copyright notice appear in all copies and that both that the copyright notice and this - permission notice and warranty disclaimer appear in supporting - documentation, and that the name of the author not be used in - advertising or publicity pertaining to distribution of the + permission notice and warranty disclaimer appear in supporting + documentation, and that the name of the author not be used in + advertising or publicity pertaining to distribution of the software without specific, written prior permission. The author disclaim all warranties with regard to this @@ -41,7 +41,7 @@ void BitBuffer_Init(BitBuffer_t* const Buffer) { /* Reset the number of stored bits in the buffer */ Buffer->Elements = 0; - + /* Reset the data in and out pointer structures in the buffer to the first buffer bit */ Buffer->In.CurrentByte = Buffer->Data; Buffer->In.ByteMask = (1 << 0); @@ -56,10 +56,10 @@ void BitBuffer_StoreNextBit(BitBuffer_t* const Buffer, /* If the bit to store is true, set the next bit in the buffer */ if (Bit) *Buffer->In.CurrentByte |= Buffer->In.ByteMask; - + /* Increment the number of stored bits in the buffer counter */ Buffer->Elements++; - + /* Check if the current buffer byte is full of stored bits */ if (Buffer->In.ByteMask == (1 << 7)) { @@ -68,8 +68,8 @@ void BitBuffer_StoreNextBit(BitBuffer_t* const Buffer, Buffer->In.CurrentByte++; else Buffer->In.CurrentByte = Buffer->Data; - - /* Reset the storage bit mask in the current buffer byte to the first bit */ + + /* Reset the storage bit mask in the current buffer byte to the first bit */ Buffer->In.ByteMask = (1 << 0); } else @@ -81,7 +81,7 @@ void BitBuffer_StoreNextBit(BitBuffer_t* const Buffer, /** Function to retrieve the next bit stored in the given bit buffer. */ bool BitBuffer_GetNextBit(BitBuffer_t* const Buffer) -{ +{ /* Retrieve the value of the next bit stored in the buffer */ bool Bit = ((*Buffer->Out.CurrentByte & Buffer->Out.ByteMask) != 0); @@ -90,17 +90,17 @@ bool BitBuffer_GetNextBit(BitBuffer_t* const Buffer) /* Decrement the number of stored bits in the buffer counter */ Buffer->Elements--; - - /* Check if the current buffer byte is empty of stored bits */ + + /* Check if the current buffer byte is empty of stored bits */ if (Buffer->Out.ByteMask == (1 << 7)) { /* Check if the end of the buffer has been reached, if so reset to start of buffer, otherwise advance to next bit */ if (Buffer->Out.CurrentByte != &Buffer->Data[sizeof(Buffer->Data) - 1]) Buffer->Out.CurrentByte++; else - Buffer->Out.CurrentByte = Buffer->Data; - - /* Reset the retrieval bit mask in the current buffer byte to the first bit */ + Buffer->Out.CurrentByte = Buffer->Data; + + /* Reset the retrieval bit mask in the current buffer byte to the first bit */ Buffer->Out.ByteMask = (1 << 0); } else @@ -112,3 +112,4 @@ bool BitBuffer_GetNextBit(BitBuffer_t* const Buffer) /* Return the retrieved bit from the buffer */ return Bit; } + diff --git a/Projects/Magstripe/Lib/CircularBitBuffer.h b/Projects/Magstripe/Lib/CircularBitBuffer.h index 04322fbe98..7a04694db8 100644 --- a/Projects/Magstripe/Lib/CircularBitBuffer.h +++ b/Projects/Magstripe/Lib/CircularBitBuffer.h @@ -1,7 +1,7 @@ /* LUFA Library Copyright (C) Dean Camera, 2010. - + dean [at] fourwalledcubicle [dot] com www.fourwalledcubicle.com */ @@ -10,13 +10,13 @@ Copyright 2010 Denver Gingerich (denver [at] ossguy [dot] com) Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com) - Permission to use, copy, modify, distribute, and sell this + Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted - without fee, provided that the above copyright notice appear in + without fee, provided that the above copyright notice appear in all copies and that both that the copyright notice and this - permission notice and warranty disclaimer appear in supporting - documentation, and that the name of the author not be used in - advertising or publicity pertaining to distribution of the + permission notice and warranty disclaimer appear in supporting + documentation, and that the name of the author not be used in + advertising or publicity pertaining to distribution of the software without specific, written prior permission. The author disclaim all warranties with regard to this @@ -40,7 +40,7 @@ /* Includes: */ #include <avr/io.h> #include <stdbool.h> - + #include <LUFA/Common/Common.h> /* Macros: */ @@ -51,7 +51,7 @@ #else #define MAX_BITS 1024 #endif - + /* Type Defines: */ /** Type define for a pointer to a bit in a bit buffer. */ typedef struct @@ -65,18 +65,18 @@ { uint8_t Data[MAX_BITS / 8]; /**< Buffer to hold the stored bits in packed form */ uint16_t Elements; /**< Number of stored bits in the bit buffer */ - + BitBufferPointer_t In; /**< Bit pointer to the next storage location in the buffer */ BitBufferPointer_t Out; /**< Bit pointer to the next retrieval location in the buffer */ } BitBuffer_t; - - /* Function Prototypes: */ + + /* Function Prototypes: */ /** Initialises or resets a given bit buffer, ready to store new bits. - * + * * \param[in,out] Buffer Bit buffer to initialize */ void BitBuffer_Init(BitBuffer_t* const Buffer) ATTR_NON_NULL_PTR_ARG(1); - + /** Stores a bit into the next location inside a given bit buffer. * * \param[in,out] Buffer Bit buffer to store a bit into @@ -84,7 +84,7 @@ */ void BitBuffer_StoreNextBit(BitBuffer_t* const Buffer, const bool Bit) ATTR_NON_NULL_PTR_ARG(1); - + /** Retrieves a bit from the next location inside a given bit buffer. * * \param[in,out] Buffer Bit buffer to store a bit into @@ -92,5 +92,6 @@ * \return Next bit from the buffer */ bool BitBuffer_GetNextBit(BitBuffer_t* const Buffer) ATTR_NON_NULL_PTR_ARG(1); - + #endif + diff --git a/Projects/Magstripe/Lib/MagstripeHW.h b/Projects/Magstripe/Lib/MagstripeHW.h index 5b20fc433c..5b709a89e6 100644 --- a/Projects/Magstripe/Lib/MagstripeHW.h +++ b/Projects/Magstripe/Lib/MagstripeHW.h @@ -2,13 +2,13 @@ Copyright 2010 Denver Gingerich (denver [at] ossguy [dot] com) Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com) - Permission to use, copy, modify, distribute, and sell this + Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted - without fee, provided that the above copyright notice appear in + without fee, provided that the above copyright notice appear in all copies and that both that the copyright notice and this - permission notice and warranty disclaimer appear in supporting - documentation, and that the name of the author not be used in - advertising or publicity pertaining to distribution of the + permission notice and warranty disclaimer appear in supporting + documentation, and that the name of the author not be used in + advertising or publicity pertaining to distribution of the software without specific, written prior permission. The author disclaim all warranties with regard to this @@ -98,3 +98,4 @@ } #endif + |