Main Page   Alphabetical List   Data Structures   File List   Data Fields   Globals  

objdict.c File Reference

#include <objdict.h>

Defines

#define FILL_DATA_S_PDO_MAPPING   0, 0, 0, 0
#define FILL_DATA_S_PDO_MAPPING   0, 0, 0, 0

Variables

const CODE UNSIGNED32 devicetype = 0xFFFF
const CODE subindex Index1000 []
const CODE UNSIGNED8 errorRegister
const CODE subindex CODE Index1001 []
RAM subindex Index1016 []
RAM subindex Index1017 []
const CODE s_identity theIdentity
const CODE subindex Index1018 []
const CODE indextable FAR CommunicationProfileArea []
const CODE indextable FAR receivePDOParameter []
const CODE indextable FAR transmitPDOParameter []
RAM subindex Index1600 []
const CODE indextable FAR RxPDOMappingTable []
RAM subindex Index1A00 []
const CODE indextable FAR TxPDOMappingTable []
RAM subindex Index6000 []
const CODE indextable FAR digitalInputTable []
RAM subindex Index6200 []
const CODE indextable FAR digitalOutputTable []

Define Documentation

#define FILL_DATA_S_PDO_MAPPING   0, 0, 0, 0
 

the following count of defined variables has to be the same as defined in the objdict.h file with the define: RECEIVE_PDO_MAPPING_LAST and the define: TRANSMIT_PDO_MAPPING_LAST

#define FILL_DATA_S_PDO_MAPPING   0, 0, 0, 0
 

the following count of defined variables has to be the same as defined in the objdict.h file with the define: RECEIVE_PDO_MAPPING_LAST and the define: TRANSMIT_PDO_MAPPING_LAST


Variable Documentation

const CODE indextable FAR CommunicationProfileArea[]
 

Initial value:

{
    DeclareIndexTableEntry(Index1000), 
    DeclareIndexTableEntry(Index1001),
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    { NULL, 0 },
    DeclareIndexTableEntry(Index1016),
    DeclareIndexTableEntry(Index1017),
    DeclareIndexTableEntry(Index1018),
}
now the communication profile entries are grouped together, so they can be accessed in a standardised manner. This could be memory-optimized if the empty entries wouldn't be added, but then the communictaionprofile area must be accessed different (see objacces.c file)

const CODE UNSIGNED32 devicetype = 0xFFFF
 

index 1000h: device type. You have to change the value below, so it fits your canopen-slave-module

const CODE indextable FAR digitalInputTable[]
 

Initial value:

This variable indexes all entries which are responsible for digital inputs. (input means: a value which is captured by this node and sent to another node e.g. the state of a port is sent to the server )

const CODE indextable FAR digitalOutputTable[]
 

Initial value:

This variable indexes all entries which are responsible for digital outputs.

const CODE UNSIGNED8 errorRegister
 

index 1001: error register. Change the entries to fit your application

const CODE subindex Index1000[]
 

Initial value:

{
    { RO, uint32, sizeof(UNSIGNED32), (void*)&devicetype }
}

const CODE subindex CODE Index1001[]
 

Initial value:

{
    { RO, uint8, sizeof(UNSIGNED8), (void*)&errorRegister }
}

RAM subindex Index1016[]
 

Initial value:

{
    { RO, uint8, sizeof(UNSIGNED8), (void*)&HBConsumerCount },
    { RW, uint32, sizeof(UNSIGNED32), (void*)&HBConsumerTimeArray[0] }
}

RAM subindex Index1017[]
 

Initial value:

{
    { RW, uint16, sizeof(UNSIGNED16), &HBProducerTime }
}

const CODE subindex Index1018[]
 

Initial value:

{
    { RO, uint8, sizeof(UNSIGNED8), (void*)&theIdentity.count },
    { RO, uint32, sizeof(UNSIGNED32), (void*)&theIdentity.vendor_id},
    { RO, uint32, sizeof(UNSIGNED32), (void*)&theIdentity.product_code},
    { RO, uint32, sizeof(UNSIGNED32), (void*)&theIdentity.revision_number},
    { RO, uint32, sizeof(UNSIGNED32), (void*)&theIdentity.serial_number}
}

RAM subindex Index1600[]
 

Initial value:

{
    { RW, uint8, sizeof( UNSIGNED8 ), (void*)&RxMap1.count },
    { RW, uint32, sizeof( UNSIGNED32 ), (void*)&RxMap1.object[0] },
    { RW, uint32, sizeof( UNSIGNED32 ), (void*)&RxMap1.object[1] },
    { RW, uint32, sizeof( UNSIGNED32 ), (void*)&RxMap1.object[2] },
    { RW, uint32, sizeof( UNSIGNED32 ), (void*)&RxMap1.object[3] }
}

RAM subindex Index1A00[]
 

Initial value:

{
    { RW, uint8, sizeof( UNSIGNED8 ), (void*)&TxMap1.count },
    { RW, uint32, sizeof( UNSIGNED32 ), (void*)&TxMap1.object[0] },
    { RW, uint32, sizeof( UNSIGNED32 ), (void*)&TxMap1.object[1] },
    { RW, uint32, sizeof( UNSIGNED32 ), (void*)&TxMap1.object[2] },
    { RW, uint32, sizeof( UNSIGNED32 ), (void*)&TxMap1.object[3] }
}

RAM subindex Index6000[]
 

Initial value:

{
    { RO, uint8, sizeof( UNSIGNED8 ), (void*)&digitalInputCount },
    { RW, uint8, sizeof( UNSIGNED8 ), (void*)&digitalInputVar1 },
    { RW, uint8, sizeof( UNSIGNED8 ), (void*)&digitalInputVar2 },
    { RW, uint8, sizeof( UNSIGNED8 ), (void*)&digitalInputVar3 }
}

RAM subindex Index6200[]
 

Initial value:

{
    { RO, uint8, sizeof( UNSIGNED8 ), (void*)&digitalOutputCount },
    { RW, uint8, sizeof( UNSIGNED8 ), (void*)&digitalOutputVar1 }
}

const CODE indextable FAR receivePDOParameter[]
 

Initial value:

{
    DeclareIndexTableEntry(Index1400) 



}
Create the Receive PDO Parameter area.

const CODE indextable FAR RxPDOMappingTable[ ]
 

Initial value:

This variable indexes all entries neccessary for pdo-mapping for receiving PDOs

const CODE s_identity theIdentity
 

Initial value:

{
    4,       
    0x1234,  
    0x5678,  
    0x1364,  
    0x7964,  
}
index 1018: identify object. Adjust the entries for your node/company

const CODE indextable FAR transmitPDOParameter[]
 

Initial value:

{
    DeclareIndexTableEntry(Index1800) 



}
Create the Transmitting PDO Parameter area.

const CODE indextable FAR TxPDOMappingTable[ ]
 

Initial value:

This variable indexes all entries neccessary for pdo-mapping for transmitting PDOs


Generated on Wed Dec 25 01:04:57 2002 for CANopen SlaveLib by doxygen1.2.17