Herunterladen Diese Seite drucken

B&R PC 300 Implementierungsanleitung Seite 78

Vorschau ausblenden Andere Handbücher für PC 300:

Werbung

Panel PC 300
Implementierungsanleitung
Diese Daten können mit der nächsten Funktion gelesen werden:
// Read internal data of panel.
//
// Parameters
//
PanelNumber
//
[in] Specifies the panel number: 0 to 14.
//
Note: PPC300 supports only panel number 0.
//
Data
//
[out] Points to a buffer that receives the B&R internal data.
//
// Return 0 at success and -1 at failure.
int ReadPanelIntData(unsigned int PanelNumber, BR_INT_DATA_PANEL *Data)
{
int i;
if (PanelNumber > 14) // external panels only
return -1;
if (sizeof(BR_INT_DATA_PANEL) % MTCX_CMD_DATA_SIZE) // savety check
return -1;
// Read B&R internal data from flash memory.
for (i = 0; i < sizeof(BR_INT_DATA_PANEL); i += MTCX_CMD_DATA_SIZE)
{
int retvalue;
unsigned char ErrorCode;
retvalue = MtcxReadCommand(MTCX_CMD_FLASH_SERVICE, (0x80 + i) / MTCX_CMD_DATA_SIZE,
PanelNumber, MTCX_DEV_PANELSET, (unsigned char*)Data + i, MTCX_CMD_DATA_SIZE,
&ErrorCode);
if (retvalue != MTCX_OKAY)
{
// TODO: add your error handling here
return -1;
}
}
if (memcmp(Data->Header, BR_INT_DATA_HEADER_ID, BR_INT_DATA_HEADER_SIZE) != 0)
{
// the flash memory does not contain valid data
return -1;
}
return 0;
}
Listing 33: ReadPanelIntData – B&R interne Daten des Panels lesen
Copyright © B&R - Änderungen vorbehalten
PPC300_Implementierungsanleitung_V1_02.doc
Codebeispiele
02.11.09
78/132

Werbung

loading