mirror of
https://github.com/Proxmark/proxmark3.git
synced 2025-08-19 04:49:38 -07:00
no longer need doT55x7Acquisition...
This commit is contained in:
parent
2229ee897e
commit
bed24f53c2
3 changed files with 1 additions and 76 deletions
|
@ -1132,7 +1132,7 @@ void T55xxResetRead(void) {
|
||||||
TurnReadLFOn(READ_GAP);
|
TurnReadLFOn(READ_GAP);
|
||||||
|
|
||||||
// Acquisition
|
// Acquisition
|
||||||
doT55x7Acquisition(BigBuf_max_traceLen());
|
DoPartialAcquisition(0, true, BigBuf_max_traceLen());
|
||||||
|
|
||||||
// Turn the field off
|
// Turn the field off
|
||||||
FpgaWriteConfWord(FPGA_MAJOR_MODE_OFF); // field off
|
FpgaWriteConfWord(FPGA_MAJOR_MODE_OFF); // field off
|
||||||
|
@ -1266,8 +1266,6 @@ void T55xxReadBlock(uint16_t arg0, uint8_t Block, uint32_t Pwd) {
|
||||||
// Now do the acquisition
|
// Now do the acquisition
|
||||||
DoPartialAcquisition(0, true, 12000);
|
DoPartialAcquisition(0, true, 12000);
|
||||||
|
|
||||||
// doT55x7Acquisition(12000);
|
|
||||||
|
|
||||||
// Turn the field off
|
// Turn the field off
|
||||||
FpgaWriteConfWord(FPGA_MAJOR_MODE_OFF); // field off
|
FpgaWriteConfWord(FPGA_MAJOR_MODE_OFF); // field off
|
||||||
cmd_send(CMD_ACK,0,0,0,0,0);
|
cmd_send(CMD_ACK,0,0,0,0,0);
|
||||||
|
|
|
@ -259,73 +259,6 @@ uint32_t SnoopLF()
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* acquisition of T55x7 LF signal. Similart to other LF, but adjusted with @marshmellows thresholds
|
|
||||||
* the data is collected in BigBuf.
|
|
||||||
**/
|
|
||||||
void doT55x7Acquisition(size_t sample_size) {
|
|
||||||
|
|
||||||
#define T55xx_READ_UPPER_THRESHOLD 128+60 // 60 grph
|
|
||||||
#define T55xx_READ_LOWER_THRESHOLD 128-60 // -60 grph
|
|
||||||
#define T55xx_READ_TOL 5
|
|
||||||
|
|
||||||
uint8_t *dest = BigBuf_get_addr();
|
|
||||||
uint16_t bufsize = BigBuf_max_traceLen();
|
|
||||||
|
|
||||||
if ( bufsize > sample_size )
|
|
||||||
bufsize = sample_size;
|
|
||||||
|
|
||||||
uint16_t i = 0;
|
|
||||||
bool startFound = false;
|
|
||||||
bool highFound = false;
|
|
||||||
bool lowFound = false;
|
|
||||||
uint8_t curSample = 0;
|
|
||||||
uint8_t lastSample = 0;
|
|
||||||
uint16_t skipCnt = 0;
|
|
||||||
while(!BUTTON_PRESS() && !usb_poll_validate_length() && skipCnt<1000 && i<bufsize ) {
|
|
||||||
WDT_HIT();
|
|
||||||
if (AT91C_BASE_SSC->SSC_SR & AT91C_SSC_TXRDY) {
|
|
||||||
AT91C_BASE_SSC->SSC_THR = 0x43;
|
|
||||||
LED_D_ON();
|
|
||||||
}
|
|
||||||
if (AT91C_BASE_SSC->SSC_SR & AT91C_SSC_RXRDY) {
|
|
||||||
curSample = (uint8_t)AT91C_BASE_SSC->SSC_RHR;
|
|
||||||
LED_D_OFF();
|
|
||||||
|
|
||||||
// skip until the first high sample above threshold
|
|
||||||
if (!startFound && curSample > T55xx_READ_UPPER_THRESHOLD) {
|
|
||||||
//if (curSample > lastSample)
|
|
||||||
// lastSample = curSample;
|
|
||||||
highFound = true;
|
|
||||||
} else if (!highFound) {
|
|
||||||
skipCnt++;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
// skip until the first Low sample below threshold
|
|
||||||
if (!startFound && curSample < T55xx_READ_LOWER_THRESHOLD) {
|
|
||||||
//if (curSample > lastSample)
|
|
||||||
lastSample = curSample;
|
|
||||||
lowFound = true;
|
|
||||||
} else if (!lowFound) {
|
|
||||||
skipCnt++;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// skip until first high samples begin to change
|
|
||||||
if (startFound || curSample > T55xx_READ_LOWER_THRESHOLD+T55xx_READ_TOL){
|
|
||||||
// if just found start - recover last sample
|
|
||||||
if (!startFound) {
|
|
||||||
dest[i++] = lastSample;
|
|
||||||
startFound = true;
|
|
||||||
}
|
|
||||||
// collect samples
|
|
||||||
dest[i++] = curSample;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* acquisition of Cotag LF signal. Similart to other LF, since the Cotag has such long datarate RF/384
|
* acquisition of Cotag LF signal. Similart to other LF, since the Cotag has such long datarate RF/384
|
||||||
* and is Manchester?, we directly gather the manchester data into bigbuff
|
* and is Manchester?, we directly gather the manchester data into bigbuff
|
||||||
|
|
|
@ -8,12 +8,6 @@
|
||||||
void doCotagAcquisition(size_t sample_size);
|
void doCotagAcquisition(size_t sample_size);
|
||||||
uint32_t doCotagAcquisitionManchester(void);
|
uint32_t doCotagAcquisitionManchester(void);
|
||||||
|
|
||||||
/**
|
|
||||||
* acquisition of T55x7 LF signal. Similart 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.
|
* Initializes the FPGA for reader-mode (field on), and acquires the samples.
|
||||||
* @return number of bits sampled
|
* @return number of bits sampled
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue