X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/be2cf126bf74c3e0c60706dd2620c8a6d742e396..9833360b251571f82749c352f49d712c9c8322ad:/armsrc/lfsampling.h diff --git a/armsrc/lfsampling.h b/armsrc/lfsampling.h index 9ab458f8..b300ee73 100644 --- a/armsrc/lfsampling.h +++ b/armsrc/lfsampling.h @@ -1,11 +1,33 @@ -#ifndef LFSAMPLING_H -#define LFSAMPLING_H +#ifndef __LFSAMPLING_H +#define __LFSAMPLING_H + +#include "proxmark3.h" +#include "apps.h" +#include "util.h" +#include "string.h" +#include "usb_cdc.h" // for usb_poll_validate_length +#include "ticks.h" // for StartTicks + +typedef struct BitstreamOut BitstreamOut; + +/** +* acquisition of Cotag LF signal. Similar to other LF, since the Cotag has such long datarate RF/384 +* and is Manchester?, we directly gather the manchester data into bigbuff +**/ +void doCotagAcquisition(size_t sample_size); +uint32_t doCotagAcquisitionManchester(void); + +/** +* acquisition of T55x7 LF signal. Similar to other LF, but adjusted with @marshmellows thresholds +* the data is collected in BigBuf. +**/ +void doT55x7Acquisition(size_t sample_size); /** * Initializes the FPGA for reader-mode (field on), and acquires the samples. * @return number of bits sampled **/ -uint32_t SampleLF(); +uint32_t SampleLF(bool silent); /** * Initializes the FPGA for snoop-mode (field off), and acquires the samples. @@ -14,6 +36,9 @@ uint32_t SampleLF(); uint32_t SnoopLF(); +// adds sample size to default options +uint32_t DoPartialAcquisition(int trigger_threshold, bool silent, int sample_size); + /** * @brief Does sample acquisition, ignoring the config values set in the sample_config. * This method is typically used by tag-specific readers who just wants to read the samples @@ -41,7 +66,6 @@ uint32_t DoAcquisition_config( bool silent); **/ void LFSetupFPGAForADC(int divisor, bool lf_field); - /** * Called from the USB-handler to set the sampling configuration * The sampling config is used for std reading and snooping. @@ -56,4 +80,8 @@ void LFSetupFPGAForADC(int divisor, bool lf_field); void setSamplingConfig(sample_config *sc); sample_config * getSamplingConfig(); -#endif // LFSAMPLING_H + +void printConfig(); + + +#endif // __LFSAMPLING_H