Справочник Пользователя для National Instruments NI-DNET

Скачать
Страница из 86
Chapter 3
Developing Your Application
© National Instruments Corporation
3-9
2.
Call the 
ncWaitForState
 function with the 
DesiredState
 
parameter set to 
Read Available
. This function waits for output 
data to be transmitted and for new input data to be received. If your 
application is multitasking, you might have other tasks to do in your 
application while you wait for new input data. If so, use the 
ncCreateNotification
 or 
ncCreateOccurrence
 function 
instead of 
ncWaitForState
 (refer to 
).
3.
Call the 
ncReadDnetIO
 function to read input data received from the 
DeviceNet network.
4.
Loop back to step 1 as needed.
Complete the following steps with an Explicit Messaging Object:
1.
Call the 
ncWaitForState
 function with the 
DesiredState
 
parameter set to 
Established
.  This ensures that the explicit message 
connection is established before you send the first explicit message 
request.
2.
To get an attribute from a remote DeviceNet device, call the 
ncGetDnetAttribute
 function.
3.
To set the value of an attribute in a remote DeviceNet device, call the 
ncSetDnetAttribute
 function.
4.
To invoke other explicit message services in a remote DeviceNet 
device, use the 
ncWriteDnetExplMsg
 function to write the service 
request, the 
ncWaitForState
 function to wait for the service 
response, and the 
ncReadDnetExplMsg
 function to read the service 
response.
5.
Loop back to step 2 as needed.
Addition of Slave Connections after 
Communication Start
If you need to add I/O and Explicit Messaging connections after the 
communication on the network has started, you can call 
ncOpenDnetExplMsg
 and 
ncOpenDnetIO
 as long as the Interface 
Object’s poll mode had been configured to 
NC_POLL_SCAN
 (Scanned) or 
NC_POLL_INDIV
 (Individual). Since the Automatic poll mode 
(
NC_POLL_AUTO
) calculates the expected packet rate (EPR) based on the 
estimated network bandwidth, all the I/O connections have to be opened 
before you start the communication if the Automatic mode is selected. The 
EPR restrictions due to different values of the 
PollMode
 parameter still 
apply to the I/O objects. For details on these requirements, refer to 
ncOpenDnetIO
 and 
ncOpenDnetIntf
 function descriptions in the 
NI-DNET Programmer Reference Manual.