Home
AN-1025 APPLICATION NOTE
Contents
1. Example of FIFO Mode Operation Using Watermark Interrupt Samples Value of 6 Rev 0 Page 9 of 12 Ooo ll FIFO CONTENTS OUTPUT FILTER DATA O Firorsi x Firorso x FiFop9 x ee e iro x Fiom x FFoo patalo TIME oaran oaran atana patatas pataran para paraa batalay Dataa Darago paran batala Datars parame parao batan patala Datars m DATA 35 DATA 28 DATA 29 DATA 30 DATA 31 DATA 34 o omaa omaa pataa Data DATA oaran oaran pataia vartais pataia parari oara parajoy patan para Data DATA A MULTIPLE BYTE READ OF 3 SAMPLE SETS DATA 3 DATA 4 AND DATA 5 CAUSES FIFO TO SHIFT CREATING ROOM FOR NEW SAMPLES DATA 0 DATA 1 AND DATA ARE LOST BECAUSE ROOM WAS NOT AVAILABLE UNTIL AFTER DATA 34 WAS SAMPLED CAUSING THEM TO BE DISCARDED TO MAKE ROOM FOR DATA 32 DATA 33 AND DATA 34 Figure 7 FIFO Operation in Stream Mode with the Oldest Samples Discarded fF FIFO CONTENTS OUTPUT FILTER DATA 0 DATA 1 oaran paraa paraa x x Ppararsoy paran parasa x parara paraiso paran x x paratas parare parao x x DATA 16 DATATI7 DaATAtis X DATAI35 DATA 15 DATA 16 DATA 17 DATA 34 DATA 34 DATAI33 _ DATA 33 08234 007 DATA pata Datas DATA DATA 1 DATA 2 DATA 3 DATA 20 DATA 2Z0
2. Page 8 of 12 Stream Mode When the FIFO operates in stream mode new samples of data are constantly collected If the FIFO is full the oldest sample in FIFO 0 is discarded the remaining samples are shifted down and the new sample is pushed into FIFO 31 The oldest samples continue to be discarded until the FIFO is read and room is made available for new samples This process is shown in Figure 7 Stream mode targets applications where an external stimulus that is a stimulus not from the accelerometer is used to determine when to read acceleration data This could be a button press or a host processor requesting the information from the accele rometer at a certain time Because of this interrupts are generally not used with stream mode However the watermark interrupt operates the same way in stream mode as in FIFO mode triggering when the number of samples in the FIFO equals the value stored in the samples bits The feature most relevant to stream mode is the overrun bit in the INT_SOURCE register When the FIFO fills and then has to discard a sample when a new sample is available the overrun bit is set to signify that data has been lost due to the FIFO being full This operates the same way in all modes of FIFO operation but in FIFO mode and trigger mode data is typically read before OUTPUT FILTER Sei za FFO FIForz F Foo TIME _ fs E FiFors i pe the FIFO
3. DATA 0 DATA 1 DATA 2 _ DATA 19 DATA 19 DATA 3 DATA 4 DATA 21 DATA 21 TRIGGER MODE OPERATES SIMILAR TO STREAM MODE BEFORE TRIGGER EVENT OCCURS Figure 8 Operation of FIFO in The triggering event for trigger mode is any of the interrupts native to the accelerometer If multiple interrupts are selected the first interrupt to occur acts as the triggering event The interrupt s of interest are configured refer to the ADXL345 data sheet then mapped to the appropriate interrupt in the INT_MAP register and enabled in the INT_ENABLE register Once the interrupt is configured the trigger bit in the FIFO_CTL register is configured to correspond to the interrupt that should trigger the FIFO a value of 0 selects INT1 whereas a value of 1 selects INT2 for the ADXL345 When an event occurs that causes an interrupt selected by the trigger bit to occur the FIFO retains the newest samples determined by the value in the samples bits and then undergoes the transition between acting in stream mode and acting in FIFO mode It is recommended that DATA_READY watermark and overrun interrupts not be used as triggering events for trigger mode After the triggering interrupt occurs read the FIFO until empty If the FIFO continues to operate in FIFO mode the value in the samples bits can be adjusted to minimize how often the host processor must pull data from the accelerometer and the watermark interrupt must be configured as de
4. is desired filtering or oversampling techniques can be used In both cases multiple samples of data must be processed For these applications the FIFO can be allowed to fill until the required number of samples needed is reached removing the need for the host processor to continually retrieve and store the data while waiting for enough data to be available for processing Once the FIFO contains all the necessary data all of the samples can be quickly pulled from the FIFO and processed reducing the burden on the host processor For a simple averaging filter expect a reduction in noise approx imately equal to the square root of the number of samples averaged For instance if 100 samples are taken with a root mean squared rms noise of 1 LSB using a simple four sample average filter reduces that noise to approximately 0 5 LSB rms To demonstrate this 100 data points can be taken using the ADXL345 at an output data rate of 100 Hz and then every four samples averaged into a single sample using the FIFO to trigger when each group of four samples is ready This yields a visible reduction in noise and an effective output data rate of 25 Hz because the host processor only needs to retrieve data from the part once for every four samples as shown in Figure 10 ns UNFILTERED 100Hz DATA L FILTERED DATA 4 SAMPLE AVERAGE OUTPUT IN LSB DATA SAMPLE 08234 010 Figure 10 Noise Reduction wit
5. occurs If it is handled quickly and reading of the FIFO can begin before a new sample is ready a value close to 32 can be selected If there is latency between the interrupt occurring and being serviced select a lower value to prevent the FIFO from discarding samples After configuring the value in the samples bits map the watermark interrupt to either INT1 or INT2 via the INT_MAP register and then enable it by setting the watermark bit in the INT_ENABLE register Similar to the DATA_READY interrupt the watermark interrupt remains set until the condition causing it is eliminated This means that the watermark interrupt remains triggered as long as the value in entries is greater than or equal to the value in the samples bits To clear the watermark interrupt read the FIFO via the data registers until the number of samples in the FIFO is below the value stored in the samples bits however reading more than the minimum number of data samples is recommended to prevent the watermark interrupt from triggering too often thus eliminating the benefit of using the FIFO An example of how the FIFO operates in FIFO mode with the watermark interrupt is shown in Figure 6 In this example the samples bits are configured to a value of 6 causing the watermark interrupt to trigger when a sample is pushed into FIFO 5 After a few more samples the interrupt is serviced and six samples are read from the FIFO bringing the number of entries in the FIFO t
6. the FIFO_MODE bits The trigger interrupt for trigger mode is also configured in the FIFO_CTL register as well as the samples bits which operate differently depending on the selected mode Table 2 FIFO_CTL Register Read Write D7 D6 D5 D4 D3 D2 D1 DO FIFO_MODE Trigger Samples To prevent the generation of false interrupts or the uninten tional filling of the FIFO configure the FIFO and the triggering interrupt s for trigger mode or watermark before enabling any corresponding interrupts and before placing the part into measurement mode As a general rule configure the digital accelerometers in the following order 1 Set data parameters such as data rate measurement range data format and offset adjustment 2 Configure interrupts do not enable thresholds and timing values and map interrupts to pins 3 Configure FIFO if in use mode trigger interrupt if using trigger mode and samples bits Enable interrupts INT_ENABLE register 5 Place part into measurement mode POWER_CTL register Following this order prevents false watermark interrupts when the FIFO is empty and the samples bits are configured to its default value of 0 as well as false interrupts due to interrupts being enabled with default values FIFO MODES The FIFO has four modes of operation bypass mode FIFO mode stream mode and trigger mode Each mode is confi gured through the FIFO_MODE bits in the FIFO_CTL r
7. ANALOG DEVICES AN 1025 APPLICATION NOTE One Technology Way P O Box 9106 Norwood MA 02062 9106 U S A Tel 781 329 4700 Fax 781 461 3113 www analog com Utilization of the First In First Out FIFO Buffer in Analog Devices Inc Digital Accelerometers by Christopher J Fisher Tomoaki Tsuzuki and James Lee INTRODUCTION With an increasing demand for user interaction gesture recognition and power savings in many of today s products inertial sensors are quickly being adopted into a wide variety of applications By sensing movement of a device features can be turned off to save power during periods of inactivity Being able to differentiate between the axis of a tap and its direction allows for new and unique ways of providing user input Analog Devices offers a wide range of accelerometers including analog and digital in 1 2 and 3 axis variants The ADXL345 ultralow power 3 axis digital accelerometer includes the flexibility of a first in first out FIFO buffer Utilizing the FIFO extends even further the ability to differentiate user gestures provide further power savings and increase system performance while decreasing the need for host processor interaction This application note discusses the FIFO technology of digital accelerometers from Analog Devices by providing a description of the FIFO and its modes of operation focusing on the ADXL345 Example configurations for each mode are provid
8. E_TAP Activity D3 D2 D1 DO Inactivity FREE_FALL Watermark Overrun Rev 0 Page 7 of 12 FIFO Mode In FIFO mode the FIFO collects new samples until full and then discards new samples until room is made available in the FIFO When room is made available by reading samples the newest data available in the output filter begins to fill the FIFO again If the FIFO fills completely and samples are not read quickly enough there is a disconnect in the data due to samples being discarded between those stored in the FIFO when it filled and the new ones shifted in after space was made available This is demonstrated in Figure 5 The normal method of operation in FIFO mode is to disable DATA_READY if enabled and instead use the watermark interrupt In FIFO mode the watermark interrupt is triggered when the number of samples stored in the FIFO corresponding to the value in entries of the FIFO_STATUS register is equal to the value written into the samples bits of the FIFO_CTL register Using the watermark interrupt instead of the DATA_READY interrupt allows the FIFO to fill to the desired level stored in the samples bits and then in a few sequential multiple byte reads empty the FIFO reducing how often the accelerometer burdens the host processor To configure the watermark interrupt write a nonzero value to the samples bits The value used is a system level choice and depends on how quickly the interrupt can be handled when it
9. INITIATE MULTIPLE BYTE READ NECESSARY READ NECESSARY READ NECESSARY CLOCK PULSES FOR CLOCK PULSES FOR CLOCK PULSES FOR 3 RETRIEVING FIRST SAMPLE SET RETRIEVING SECOND RETRIEVING nTH 3 SAMPLE SET SAMPLE SET 3 Figure 3 Termination and Restart of Communication Between FIFO Reads to Pop the FIFO axis 7 Fio _ DATAXOp2 DATAXT DATAXOL FiFi DATAXO O DATA REGISTER 0x32 TO 0x33 FIRST SINGLE BYTE READ RETURNS DATAXO 0 AND THEN CAUSES THE FIFO TO POP BECAUSE FIFO POPPED BEFORE DATAX1 0 IS READ DATAX1 0 IS LOST AND DATAX1 1 IS RETRIEVED DATAXO 0 DATAX1 1 SINGLE BYTE READ CAUSES DATA SETS TO BECOME MIXED WHEN USING THE FIFO MULTIPLE BYTE READS ARE REQUIRED TO PREVENT THIS 08234 004 Figure 4 Sample Mixing Due to Single Byte Reads When Using the FIFO Rev 0 Page 5 of 12 COMMUNICATION SPEED DATA RATE AND TERMINATION TIME Because the rate at which data can be read from the FIFO depends on the communication speed take care to select an appropriate data rate such that data does not fill the FIFO faster than it can be read I C protocol requires a start slave address plus write address restart and then a slave address plus read just to initiate the multiple byte read The minimum time necessary just for beginning the multiple byte read for fast mode I C is roughly 70 us If all six bytes of data are retrieved the minimum amount of time to get a FIFO sample is roughly 207 us in
10. ate with the accelerometer the FIFO can be used for power savings in applications where the device is waiting for an inertial event to occur or logging data This could include monitoring shock on a package being shipped or a pedometer where the output does not need to update with every step but can be allowed to update every few steps Given the already ultralow power consumption of the Analog Devices digital accelerometers the biggest power savings come from being able to put the host processor and other peripherals to sleep when not in use By using the FIFO acceleration data can be collected continuously and the host processor woken up only when the FIFO is close to full determined by the value in the samples bits using the watermark interrupt During the remaining time when the FIFO is collecting data and the processor is not needed the processor can go to sleep significantly reducing power consumption of the system Additionally if other peripheral devices are present they too can be turned off until needed by the system 12 000 To demonstrate the power savings capabilities of the digital accelerometer s FIFO Figure 9 shows a typical flow of data collection and current consumption The current consumption of the ADXL345 is used at 100 Hz output data rate with a current and wake up time profile comparable to the Analog Devices line of ARM7 microcontrollers The FIFO is configured to generate a watermark interrupt when 30 sa
11. cluding all minimum start and stop setup and hold times and the minimum cycle period Based on this data can still be read out of the FIFO faster than it is put into the FIFO at the maximum data rate of 3200 Hz corresponding to a period of 312 5 us but if a slower speed of C communication is used the data rate may need to be adjusted The efficiency of the host controller in C communication also has an impact on the maximum data rate that can be used and should be accounted for when determining this value Because SPI does not have the same requirements for initiating a read speeds slower than I C can be used at the same data rate to successfully retrieve the data The system designer should verify that an appropriate data rate is selected for the bus speed The amount of time required between sequential sample reads the terminate and restart communication time shown in Figure 3 depends on the method of communication and the speed This occurs because the FIFO must pop between each sample and requires a minimum amount of time roughly 5 us between the end of reading DATAZ1 or deasserting the CS pin and starting to read the next set of samples For I C the minimum amount of time in fast mode to initiate a read 70 us provides sufficient time to meet this 5 us requirement For SPI communication at 5 MHz the initiation of a read only requires roughly 1 6 us requiring that the CS pin be deasserted for a minimum of 3 4 us Similar
12. e to ensure that the data read from the registers corresponds to the same sample If single byte reads are performed there is a chance that data may change between reads causing the read data to be mixed between different samples For SPI 3 or 4 wire communication a multiple byte read is accomplished by setting the multiple byte bit and then con tinuing to send sets of eight clock pulses for each byte With the multiple byte bit set the register pointer shifts to the next value SCLK R MB STARTING FIRST BYTE REGISTER ADDRESS CLOCK PULSES DATAXO DATAX1 DATAYO DATAY1 DATAZO after each set of eight clock pulses as shown in Figure 2 Refer to the ADXL345 data sheet for a description of the location of the multiple byte bit For C communication a multiple byte read is performed in a similar manner as the multiple byte read for SPI taking into account the necessary I C protocol for performing a read After initiating a read continuing to send sets of nine clock pulses a ninth clock pulse is required in C communication for the acknowledge bit shifts the register pointer to the next value More information about performing a read in I C communica tion can be found in the ADXL345 data sheet or the UM10204 PC Bus Specification and User Manual Rev 03 19 June 2007 available from NXP Semiconductors UUUUUUUU SECOND BYTE SIXTH BYTE CLOCK PULSES CLOCK PULSES 08234 002 Figure 2 Register Pointer S
13. ed and some examples of how to use the FIFO for signal processing and power savings are also discussed Rev 0 Page 1 of 12 TABLE OF CONTENTS Introduction EE E E 1 FIFO Configuration siran EE E EE FIFO Description is isacssceissssseecesitiesbascistetesccitetsasiinsiasstitetencstatacsetsies 3 PIF OMOGES in an aA RA A 7 Retrieving Data from the Data Registers cscs 4 Examples of FIFO Applications ccccsssesssessessesseesesseesesseenes 11 Retrieving Data from the FIFO sssssssssssssssssssssssrerssssssssssssrreeesss 5 Power Savings Eae ENA N iat KAEA ARRA 11 Communication Speed Data Rate and Termination Time 6 Signal Processing and Filtering ssssssssssssssesssssssssssserersssssssss 12 Monitoring FIFO Status ss sssessssssesssesseossessresseosessressrosseesresseessee 6 Rev 0 Page 2 of 12 FIFO DESCRIPTION The FIFO is capable of holding up to 32 sample sets of data Each sample set of data consists of one x axis sample one y axis sample and one z axis sample One x axis sample is the data normally held in the DATAX0O and DATAX registers with a sample of y and z axis data corresponding to their appropriate register In addition one more sample set of data is held in the output filter of the accelerometer effectively creating a 33 level to the FIFO Figure 1 shows the representation of the FIFO After sensing and digitizing the acceleration data the sample is released from the output filter Th
14. egister Refer to the ADXL345 data sheet for which values correspond to which mode Bypass Mode In bypass mode the FIFO is effectively disabled Each time a new sample is ready at the output filter the value stored in the data registers or FIFO 0 is immediately replaced by the new data If the data registers are read again before new data is ready the old data remains until a new sample is available and then immediately replaces the old data in FIFO 0 or the data registers If the current sample of data is being read when new data is available a double buffered output allows the read to finish first and then places the new data into the output filter preventing the loss of data due to a read In this mode the DATA_READY interrupt is normally used to signal to the master device that new data is ready to be retrieved The DATA_READY interrupt is configured by con figuring the DATA_READY bit in the INT_MAP register to the interrupt pin of choice and then setting the DATA_READY bit in the INT_ENABLE register The interrupt that DATA_READY is mapped to triggers when new data is available and is cleared by reading the data in the data registers The polarity of the DATA_READY interrupt is active high by default DATA_READY and all other interrupts can be configured to active low by setting the INT_INVERT bit in the DATA_FORMAT register Table 3 INT_MAP INT_ENABLE Registers Read Write D7 D6 D5 D4 DATA_READY SINGLE_TAP DOUBL
15. fills to prevent the loss of data In Figure 7 the over run bit is set when DATA 32 is available in the output filter as DATA 0 was discarded The bit clears after the FIFO is read shifting the samples down and creating room in the FIFO This prevents the loss of further data until the FIFO becomes full again Table 4 INT_SOURCE Register Read Only D7 D6 D5 D4 DATA_READY SINGLE_TAP DOUBLE_TAP Activity D3 D2 D1 DO Inactivity FREE_FALL Watermark Overrun Trigger Mode In trigger mode the FIFO begins operation similar to stream mode collecting samples until full and then discarding the oldest samples to make room for new samples After a trig gering event occurs the newest samples with a total number equal to the value stored in the samples bits are preserved with the remaining oldest samples discarded The FIFO then begins to operate similar to FIFO mode collecting new samples only until full and then discarding new samples until room is made available in the FIFO This behavior is demonstrated in Figure 8 with a samples value of 15 FIFO CONTENTS LA oaral paras oara x Dataa varaa paraa Dataa ataa x Damama Sara A WATERMARK BEGIN TO READ SAMPLES 1 INTERRUPT FROM THE FIFO 6 IN TOTAL INTERRUPT TRIGGERED WHEN NUMBER OF SAMPLE SETS IN THE FIFO EQUALS 6 WHEN THE NUMBER OF SAMPLES IN FIFO DROPS BELOW 6 THE WATERMARK INTERRUPT IS CLEARED 08234 006 Figure 6
16. h a Four Sample Averaging Filter Utilizing FIFO 2009 Analog Devices Inc All rights reserved Trademarks and registered trademarks are the property of their respective owners AN08234 0 6 09 0 ai Rev 0 Page 12 of 12
17. hift During Multiple Byte SPI Read in the ADXL345 Rev 0 Page 4 of 12 RETRIEVING DATA FROM THE FIFO Similar to reading data from the data registers it is required that a multiple byte read be performed if more than one byte of data per sample is retrieved from the FIFO Performing a single byte read when using the FIFO causes data to shift between reads and mix samples from different sets of data When the FIFO is in use reading the data registers returns the sample stored at FIFO 0 To initiate the process of remov ing the old FIFO 0 value and shifting the samples down also known as popping the FIFO the last clock pulse of the DATAZ1 register must be received or communication terminated Termi nation of communication during a SPI transmission is performed because the end of a read operation causes the FIFO to pop For instance using a single byte read to read the LSB of the x axis and then another single byte read to retrieve the MSB of the x axis results in the FIFO popping between reads and returning bytes from adjacent samples not from the same sample see Figure 4 by deasserting the cs pin The master device by issuing a stop command terminates I C communication To retrieve the next sample perform the multiple byte read again including the necessary register addressing starting at the initial data register as shown in Figure 3 TERMINATE AND RESTART COMMUNICATION INITIATE MULTIPLE BYTE INITIATE MULTIPLE BYTE
18. is data then is placed into the closest available spot to the data registers in the FIFO When the OUTPUT FILTER DATAX0O DATAX1 data registers are read the data in FIFO 0 is obtained and then removed from the FIFO allowing the rest of the stack to shift one level closer to the data registers That is after reading FIFO 0 the sample in FIFO 1 is shifted into FIFO 0 the sample in FIFO 2 is shifted into FIFO 1 and so on If there is no new sample available to be shifted into FIFO 0 after a read the old data remains until new data is available in the output filter and then replaces the sample in FIFO 0 The operation of the output filter when the FIFO is full depends on the mode of operation Y AXIS Z AXIS DATAY1 DATAZO DATAZ1 FIFO 31 DATAXO 31 DATAYO 31 DATAZO 31 _ DATAZ1 31 DATAXO 2 DATAX1 2 DATAYO 2 FIFO 1 DATAXO 1 DATAX1 1 DATAYO 1 FIFO o DATAXO 0 DATAX1 0 DATAYO 0 DATA REGISTER 0x32 TO 0x37 DATAXO 30 DATAX1 30 DATAYO 30 DATAY1 30 DATAZO 30 DATAZ1 30 DATAY1 2 DATAZO 2 DATAZ1 2 DATAY1 1 DATAZO 1 DATAZ1 1 DATAY1 0 DATAZO 0 DATAZ1 0 08234 001 Figure 1 FIFO Buffer Representation Rev 0 Page 3 of 12 RETRIEVING DATA FROM THE DATA REGISTERS It is recommended that all reads from the data registers be done as a multiple byte read A multiple byte read is a read in which the communication does not end until the last byte in the multiple byte read is obtained This is don
19. ly with a SPI communication speed of 1 6 MHz it takes at least 5 us to initiate a read suggesting that for SPI speeds below 1 6 MHz only the minimum amount of time the CS pin must be deasserted tcsp1s must be met MONITORING FIFO STATUS The FIFO_STATUS register is used to monitor the status of the FIFO The FIFO_TRIG bit is discussed in the Trigger Mode section The entries bits correspond to how many samples are currently in the FIFO Although entries is six bits long the maximum possible value is 0x20 or 32 decimal Note that if the FIFO_STATUS register is read before the FIFO is allowed to completely pop the value in entries is incorrect because it does not update until after the FIFO finishes shifting If a multiple byte read is performed starting with the data registers and intended to end after reading the FIFO_STATUS register a minimum of 5 us to allow the FIFO to pop is required between finishing the read of DATAZ1 and beginning the read of FIFO_STATUS This can be done by clock stretching or stopping the clock until the 5 us minimum is met and then continuing communication Table 1 FIFO_STATUS Register Read Only D7 D6 D5 D4 D3 D2 D1 DO FIFO_TRIG x Entries 1X don t care Rev 0 Page 6 of 12 FIFO CONFIGURATION Configuration of the FIFO is done through the FIFO_CTL register Through the FIFO_CTL register the mode of operation for the FIFO is determined and configured by
20. mples are available in the FIFO and data is read via SPI at 5 MHz which is roughly 500 us to read 30 complete samples In the Figure 9 example it takes roughly 3 5 ms to wake up the host processor retrieve the 30 samples of data and then go back to sleep The average current consumption by using the FIFO falls to only 460 uA compared to the over 11 mA required if the host processor were left on the whole time This is a power savings of close to 96 10 000 TO SLEEP 8000 TIME NECESSARY TO WAKE UP HOST PROCESSOR READ 30 SAMPLES AND GO BACK 6000 4000 CURRENT CONSUMPTION pA 2000 TIME ms ALREADY ULTRALOW CURRENT CONSUMPTION OF THE ACCELEROMETER AND LOW SLEEP MODE CURRENT OF HOST PROCESSOR 08234 009 Figure 9 Resulting Power Savings by Placing Host Processor into Sleep Mode While Using FIFO Rev 0 Page 11 of 12 SIGNAL PROCESSING AND FILTERING In some applications such as tilt sensing noise reduction and greater resolution may be required Due to the nature of the current line of digital accelerometers from Analog Devices operation below 100 Hz output data rate does not improve the noise performance below that of the noise at 100 Hz output data rate If lower noise is desired filter the output externally The 3 9 mg LSB scale factor corresponds to roughly a 0 25 resolution in tilt which is sufficient for most applications If lower noise or greater resolution
21. o below 6 and clearing the watermark interrupt Note that placing the part into bypass mode from any other mode of FIFO operation causes the FIFO to be emptied Therefore retrieve the data in the FIFO before placing the part into bypass mode Placing the part into standby mode from measure mode preserves the contents of the FIFO but does not cause new samples to fill the FIFO This could cause a disconnect in data samples if the FIFO is allowed to partially fill and is then placed into standby mode without first clearing the FIFO before returning to measure mode FIFO CONTENTS OUTPUT FILTER DATA O DATA DATAI31 DATAI32 DATAT33 DATAI34 DATAT35 paran vatan batan Datat DATAN x o f parao oaao DaTao parano parae parao batalay parare parann DATAR DATA 2 DATA 2 DATA 2 DATAI4 TIME MULTIPLE BYTE READ OF 2 SAMPLE SETS DATA 0 AND DATA 1 CAUSES FIFO TO SHIFT DATA 32 AND DATA 33 ARE LOST BECAUSE ROOM WAS NOT AVAILABLE UNTIL AFTER DATA 34 WAS SAMPLED BECAUSE DATA 34 IS STILL THE NEWEST DATA WHEN SPACE IS MADE AVAILABLE IN FIFO IT IS SHIFTED INTO FIFO 30 BEFORE DATA 35 IS MADE AVAILABLE Fros x x oaa vatar atasi Datare DATA oaran paran oaran vatam param paran From oaao parao oara Data parao parar Datat 08234 005 Figure 5 Fill Order of FIFO in FIFO Mode with Data Lost Due to Overrun Rev 0
22. scribed in the TRIGGER EVENT OCCURS NEWEST 15 SAMPLES RETAINED IN FIFO i STan S AFTER TRIGGER EVENT FIFO OPERATES SIMILAR TO FIFO MODE 08234 008 Trigger Mode With a Samples Value of 15 FIFO Mode section Alternatively the watermark interrupt can be configured from the start mapped to the other interrupt pin and the host processor configured to ignore that interrupt until after the triggering event occurs and the FIFO has been emptied for the first time The value in the samples bits can then be adjusted and the host processor configured to respond to the watermark interrupt Due to the data in the FIFO having to adjust after the triggering event a minimum of 5 us is required between the triggering event occurring and the start of reading the FIFO After 5 us the FIFO properly discards the oldest samples and shifts the retained samples To reset trigger mode so that additional trigger events can be recognized first read the FIFO completely if data is needed Then place the part into bypass mode in the FIFO_CTL register which causes all remaining data in the FIFO to be discarded and resets the trigger Place the part back into trigger mode by configuring the appropriate bits in the FIFO_CTL register After this the device is configured to respond to the next triggering interrupt Rev 0 Page 10 of 12 EXAMPLES OF FIFO APPLICATIONS POWER SAVINGS Along with reducing how often the host processor needs to communic
Download Pdf Manuals
Related Search
Related Contents
Manual - ICEMOBILE - MEDION USA Manual de Operação - SGIF BTH-200 Bluetooth® Headphone User Manual Tool D.3 Evaluation of a modeling and automatic C code 9 - 36 kg. - Babyauto Seguridad Infantil Altec Lansing inMotion MAX A80BDE-J61BT13 CC-Link Interface Board User`s Manual (For Postal Ballot Notice Daewoo Electronics RC-320F User's Manual Copyright © All rights reserved.
Failed to retrieve file