beautypg.com

Delta Electronics High-Speed PCI 12-Axis Motion Control Card PCI-DMC-A01 User Manual

Page 24

background image

Chapter 3 Operating Principles | PCI-DMC-A01 / PCI-DMC-B01

3-2

Revised March, 2012

Click on the “Open card” button to execute the following procedure:

/* gDMCExistCards variable is set as the number of PCI-DMC-A01 on the PC*/

rt = _DMC_01_open(&gDMCExistCards);

2) Card initialization

Figure 3.3

Click on the “Card init” button to execute the following procedure:

for(i=0; i{

/* Get the card number of the i-th card on the PC. Card number is the value set by
the DIP Switch*/

rt = _DMC_01_get_CardNo_seq(i, &CardNo);

gpDMCCardNoList[i] = CardNo;

/*Check to see if the card has been initialized. If the value is 0, then the card has not
been initialized .*/

rt = _DMC_01_check_card_running(gpDMCCardNoList[i], &running);
if(running == 0) {

rt = _DMC_01_pci_initial(gpDMCCardNoList[i]);

// Initialize card

if(rt != 0) AfxMessageBox(“Can't boot PCI_DMC_01 Master Card!”);

}
rt = _DMC_01_initial_bus(gpDMCCardNoList[i]);

// Initialization communications

protocol

gbpDSPBoot[gpDMCCardNoList[i]] = true;

}

3) Establish communications

Figure 3.4

Click on the “Find slave” button to execute the following procedure:

rt = _DMC_01_start_ring(gDMCCardNo, 0);

// Begin communications

rt = _DMC_01_get_device_table(gDMCCardNo, &gpDeviceInfo[gDMCCardNo]);
rt = _DMC_01_get_node_table(gDMCCardNo, &gpSlaveTable[0][gDMCCardNo]);

Once the above procedure has been executed, the detected Slave device is
displayed in the “Slave num” field.

This manual is related to the following products: