In a high-speed data acquisition system, if the A/D converter is directly connected to the microprocessor MCU, the high conversion rate of the high-speed A/D forces the MCU to continuously read the conversion results, thus occupying most of the MCU's I/O bandwidth and reducing the MCU's working efficiency. In this case, a buffer is usually added, so that "A/D converter buffer-processor" becomes a common mode. The following introduces how to use the FIFO chip CY7C4255V to realize the interface between the high-speed and high-precision A/D converter AD767l and the LPC2200 series ARM processor.
1 Device Introduction
1.1 Analog/digital converter AD7671
AD7671 is a 16-bit successive approximation high-speed and high-precision analog-to-digital converter with a sampling rate of 1Msps. It is powered by a single 5V power supply and can provide unipolar and bipolar input modes, which can be applied to different input ranges. It also provides calibration and error correction circuits, internal clocks, 8-bit or 16-bit parallel ports and 1 serial port. AD7671 can achieve 16-bit resolution without missing codes, and the maximum integral nonlinearity error (INL) is only ±2.5 LSB, which can meet the requirements of various high-precision applications.
Normally, AD7671 has two data reading methods: one is to read the converted data after the data conversion is completed; the other is to read the data completed in the last conversion during the data conversion process. The timing diagram in Figure 1 describes the latter case, that is, after the main controller sends the CNVST signal, the BUSY signal is detected. When the BUSY signal is set to a high level, the data converted by the last conversion process is read.
1.2 FIFO chip CY7C4255V
FIFO (First In First Out) simply means first in, first out. As a new type of large-scale integrated circuit, FIFO chips are gradually being used more and more widely in high-speed data acquisition, high-speed data processing, high-speed data transmission and multi-machine processing systems with their flexible, convenient and efficient characteristics. CY7C455V is a 3.3V high-speed, low-power FIFO from Cypress. The chip capacity is 8K×18 bits, the maximum operating rate is 100MHz (the shortest read/write time is 10ns), the input/output port is controlled by a separate clock and enable signal, and has "empty", "full", "half full" and programmable "almost empty" and "almost full" signs. [page]
The 18-bit input/output port of CY7C4255 is controlled by a separate clock and enable signal. The input port is controlled by a continuous write clock (WCLK) and a write enable signal (WEN). When the write enable WEN is valid, the data is continuously written into the FIFO memory at the rising edge of the WCLK signal in each clock cycle. Similarly, the output port is controlled by a continuous read clock (RCLK) and a read enable signal (REN), and there is an output enable pin (OE). If it is a single clock operation, the read/write clocks can be connected together; in asynchronous read/write applications, the two clocks can be independent, and the clock frequency can be up to 100 MHz. Depth expansion can be achieved by using the cascade input (WXI, RXI), cascade output (WXO, RXO) and first load (FL) pins provided by the chip.
1.3 ARM processor LPC2210
LPC2210 is a microcontroller based on a 16/32-bit 144-pin ARM7TDMI-S core that supports real-time simulation and embedded tracing. It contains the ARM7 local bus that interfaces the ARM7TDMI-S core with the on-chip memory controller, the AMBA high-performance bus (AHB) that interfaces with the interrupt controller, and the VLSI peripheral bus (VPB, a compatible superset of the ARM AMBA bus) that connects the on-chip peripheral functions. LPC2210 has 16KB on-chip static RAM; the connection between on-chip peripherals and device pins is controlled by a pin connection module, which is controlled by software to meet the requirements of peripheral functions and pins in specific applications; the memory can be configured into 4 groups through the external memory interface, each with a capacity of up to 16MB and a data width of 8/16/32 bits; it has 2 32-bit timers (with 4 capture and 4 comparison channels), a PWM unit (6 outputs), a real-time clock and a watchdog; multiple serial interfaces include 2 16C550 industrial standard UARTs, a high-speed I2C interface (400kb/s) and 2 SPI interfaces; up to 76 general-purpose I/O ports (can withstand 5V voltage), 12 independent external interrupt pins EIN and CAP functions.
2 Interface Circuit
The interface circuit between AD7671 and LPC2210 is realized by using FIFO chip CY7C4255V, as shown in Figure 2. In the figure, the input range of AD7671 has been configured to ±5V, and its data port adopts a high-speed parallel interface; the data reading mode of the interface is set to the mode shown in Figure 1, where +5V and -5V are analog voltages. Since the voltage of the data interface between CY7C11255V and LPC2210 is 3.3V, the 3.3V digital voltage is input to the OVDD pin, so that the data interface voltage of AD7671 can be compatible with the data interface of the FIFO chip. ADR421 provides a +2.5V reference voltage for AD7671; the analog input end of AD7671 uses a driving circuit composed of a low noise factor excitation amplifier ADS021 to drive A137671.
The A/D conversion result output is directly connected to the FIFO data input terminal D0~D15. The conversion control is generated by a PWM output terminal of the ARM processor to generate a sampling control signal of the required sampling frequency, which is also used as the control of the input enable terminal of the FIFO. The BUSY output terminal of the AD767l is used as the input clock (WCLK) control signal of the FIFO. When the conversion is completed, BUSY (WCLK) changes from low to high. At this time, the FIFO write enable WEN is valid, and the conversion data is written into the FIFO memory at the rising edge of the WCLK (BUSY) signal. The LPC2210 ARM processor bus data width is configured as 16 bits, and the chip select signal nCS2, output enable signal nOE, and clock output XCLK of the EMC bus control the data reading of the FIFO. The half-full (HF) and full (FF) flags of the FIFO are connected to the two interrupt pins of the ARM, which can be selected and used in actual applications through programming; EF is connected to the PO.23 pin of the ARM as the empty query pin of the FIFO.
Conclusion
The use of FIFO devices as data buffer between high-speed A/D and ARM processor has the advantages of simple circuit structure and reliable performance; at the same time, it improves the working efficiency of the processor and makes control more convenient.
Previous article:Coal Gangue Sorting System Based on ARM Core and CAN Bus
Next article:Dealing with the Middle-Endian problem of floating point numbers under the ARM system
Recommended ReadingLatest update time:2024-11-17 02:55
- Popular Resources
- Popular amplifiers
- MATLAB and FPGA implementation of wireless communication
- Modern Electronic Technology Training Course (Edited by Yao Youfeng)
- Operational Amplifier Practical Reference Handbook (Edited by Liu Changsheng, Zhao Mingying, Liu Xu, etc.)
- A Complete Illustrated Guide to Operational Amplifier Applications (Written by Wang Zhenhong)
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- Rambus Launches Industry's First HBM 4 Controller IP: What Are the Technical Details Behind It?
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- Research on integrated navigation algorithm in case of GPS signal loss.pdf
- Lonely man - Yiyeqiu
- I want to build a data access platform for NB-IOT devices based on the COAP protocol. In addition to LIBCOAP, what other technologies are used?
- Beijing's first bicycle lane, 6.5 kilometers, 20 minutes, check-in successful
- How to make a sensorless brushless DC motor driver board
- Today at 10:00 AM, live broadcast with awards: Internet of Everything - Shijian Company and Microchip experts jointly discuss IoT solutions
- What are the advantages and disadvantages of MOS tubes and relays as electronic switches? In what situations would relays or MOS tubes be preferred?
- Looking for domestic wireless charging chip manufacturers
- Detailed explanation of 5G OTA testing technology
- Analog IC Design Resource Download