X-Git-Url: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/7666f4608e8ade0ada08777d1cc33469c5d9471d..34ff898553f3392c66c50d1a524070882d237fb5:/armsrc/lfops.c diff --git a/armsrc/lfops.c b/armsrc/lfops.c index 1d18c709..0bbd62c2 100644 --- a/armsrc/lfops.c +++ b/armsrc/lfops.c @@ -1578,9 +1578,9 @@ void SendForward(uint8_t fwd_bit_count) { fwd_bit_sz--; //prepare next bit modulation fwd_write_ptr++; FpgaWriteConfWord(FPGA_MAJOR_MODE_OFF); // field off - SpinDelayUs(56*8); //55 cycles off (8us each)for 4305 + SpinDelayUs(56*8); //55 cycles off (8us each)for 4305 /another reader has 37 here... FpgaWriteConfWord(FPGA_MAJOR_MODE_LF_ADC | FPGA_LF_ADC_READER_FIELD);//field on - SpinDelayUs(16*8); //16 cycles on (8us each) + SpinDelayUs(18*8); //16 cycles on (8us each) // another reader has 18 here // now start writting while(fwd_bit_sz-- > 0) { //prepare next bit modulation @@ -1589,9 +1589,9 @@ void SendForward(uint8_t fwd_bit_count) { else { //These timings work for 4469/4269/4305 (with the 55*8 above) FpgaWriteConfWord(FPGA_MAJOR_MODE_OFF); // field off - SpinDelayUs(20*8); //16-4 cycles off (8us each) //23 + SpinDelayUs(23*8); //16-4 cycles off (8us each) //23 //one reader goes as high as 25 here FpgaWriteConfWord(FPGA_MAJOR_MODE_LF_ADC | FPGA_LF_ADC_READER_FIELD);//field on - SpinDelayUs(12*8); //16 cycles on (8us each) //9 + SpinDelayUs(16*8); //16 cycles on (8us each) //9 // another reader goes to 17 here } } } @@ -1626,9 +1626,9 @@ void EM4xReadWord(uint8_t Address, uint32_t Pwd, uint8_t PwdMode) { fwd_bit_count += Prepare_Addr( Address ); SendForward(fwd_bit_count); - + SpinDelayUs(700); // Now do the acquisition - DoAcquisition_config(TRUE); + DoPartialAcquisition(20, true, 5500); FpgaWriteConfWord(FPGA_MAJOR_MODE_OFF); // field off LED_A_OFF(); @@ -1656,10 +1656,11 @@ void EM4xWriteWord(uint32_t flag, uint32_t Data, uint32_t Pwd) { SendForward(fwd_bit_count); //Wait for write to complete - SpinDelay(20); + //SpinDelay(10); + SpinDelayUs(6500); //Capture response if one exists - DoAcquisition_config(TRUE); + DoPartialAcquisition(20, true, 5500); FpgaWriteConfWord(FPGA_MAJOR_MODE_OFF); // field off LED_A_OFF();