How Are the ACK and REQ Lines Controlled on the 653x DIO Devices? Hardware: Legacy DAQ Devices>>Digital I/O>>PC-DIO-24
Problem: I am developing an application that will be using the Handshaking I/O Burst Protocol on my 653x device. I am a little unclear as to how the ACK and REQ lines are used. What controls these lines, and do I need to programmatically set one of these lines when I am ready to transfer data? Solution: The ACK line is set by the DIO device automatically when the device is ready to send data for an output operation. The manual states that the ACK line is changed as follows: "The DIO-32HS(653x) device asserts the ACK line when it is ready for a transfer..."The device is "ready for a transfer" when the device is properly configured and your program has sent data to the board's buffer to be output (or it has room on the buffer for input operations if doing an input). It is at this point, when the board has valid data waiting to be written out on its ports (or can accept input values), that the ACK line becomes asserted. The assertion of ACK tells the peripheral device that the 653x is ready for a transfer. When the peripheral device is in a state where it can receive (or send) data, it should assert its REQ line. The REQ line is set externally and should be controlled by the external device or manually wired in order to transfer data. The transfer will begin on the first edge (rising or falling depending on configuration) of PCLK after both the REQ and ACK lines are valid. This transfer will continue until either one of the ACK or REQ lines is deasserted. When all the data has been sent out of the DIO device's buffer, then its ACK line becomes invalid indicating that it is not ready to send because its buffer is empty. This availability of data will be controlled by your program that specifies the configuration, such as the buffer size and rate of transfer, of the 653x device. The following are two brief descriptions found in the user manual and on-line that further discuss the interaction between the ACK, REQ, and PCLK lines of the 653x when performing Handshaking I/O in Burst mode and more overview of the burst mode:
Also remember to take a look at the shipping examples (either in LabVIEW or those that ship with NI-DAQ) to get a better understanding of the type of applications you can use with the 653x. They can also help you monitor the state of the ACK, REQ, and PCLK lines to see how the information is sent and check its behavior. Related Links: National Instruments Data Acquisition Support Homepage Product Manuals: 653x User Manual KnowledgeBase 1SSFQR00. Configuring the Handshaking Lines of a 653x Board Attachments:
Report Date: 01/21/2004 Last Updated: 03/17/2006 Document ID: 35KDQAKD |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
