
SchnittStellenCenter
DPC31 HW
Page 28 Version V 1.0
DPC31 HW Description
12/00 Copyright (C) Siemens AG 2000. All rights reserved.
5.2.3 Check_Config, CCFg (SAP62)
For this SAP, two exchange buffers of the same length are allocated. One buffer is integrated as the
indication buffer (MAC_Cfg buffer) and the other is included as the User_Cfg buffer in DPS buffer
management. The indication is always transferred to the user in the User_Cfg buffer.
This service is accepted by DPS in any DP mode. If the Check_Config message does not come from
‘Master_Add’ i.e., the locking master, DPS ignores this message.
The user evaluates the configuration data. After DPS has received a plausible Cfg message, there will be an
indication. That is, DPS exchanges the indication buffer in the Cfg SAP for the User_Cfg buffer from DPS
buffer management and generates the ‘New_Cfg_Data interrupt’. There is no response at this time in the
DP_SM. The user must then check the ‘User_Config_Data’ and acknowledge either positively or negatively
(see below).
User_Cfg_Ok Cmd
(Read Operation):
0000 0 0 User_Ack
1
User_Ack
0
User_Ack
1..0
= 00
⇒
User_Cfg_Finished
User_Ack
1..0
= 01
⇒
Cfg_Conflict
User_Ack
1..0
= 11
⇒
Not_Allowed
User_Ack
1..0
= 10
⇒
not possible
User_Cfg_Not_Ok Cmd
(Read Operation):
0000 0 0 User_Ack
1
User_Ack
0
User_Ack
1..0
= 00
⇒
User_Cfg_Finished
User_Ack
1..0
= 01
⇒
Cfg_Conflict
User_Ack
1..0
= 11
⇒
Not_Allowed
User_Ack
1..0
= 10
⇒
not possible
Table 5.2.7:
Coding of User_Cfg_(Not)_OK Cmd
During operation, if the interrupts ‘New_Prm_Data’ and ‘New_Cfg_Data’ are pending at the user at the same
time, the user must follow the sequence Set_Param and then Check_Config acknowledgement.
5.2.4 Slave_Diagnosis (SAP60)
The diagnostic data of DPS in the DPC31 can be fetched by the master any time.
When the buffers are exchanged by the user, the internal ‘Diag_Flag’ is set in. Furthermore, the Diag_Flag is
entered in the status register. If ‘Diag_Flag’ is activated, the MAC responds at the next Write_Read_Data
message with high priority response data. This signals to the associated master that new diagnostic data is
present at the slave. If DPS does not have any input data, it responds with a high-priority SD2 message with
a dummy net byte (00h). After this high priority reply, the master fetches the new diagnostic data with a
Slave_Diagnosis message. The ‘Diag_Flag’ is then reset and the user ‘Diag_Fetched interrupt’ is generated.
However, if the user signals ‘Diag.Stat_Diag = 1” (static diagnosis; refer to structure of the Diagnosis_Reply
buffers), the ‘Diag_Flag’ remains activated even after the associated master has fetched the diagnosis. The
user can poll the ‘Diag_Flag’ in the status register.
DPS sets ‘Diag_Flag=0’ for ‘Power_On’, caused by a reset or the startup of the watchdog timer in the
‘DP_Control mode’; or ‘Diag_Flag = 1’ when entering ‘Data_Exchange’.
The Diag_Buffer_SM is also reset when DPS is powering up. That is, after the user has transferred
‘MAC_Start’ in the request list or the watchdog has expired in the ‘DP_Control’ mode.
Komentarze do niniejszej Instrukcji