Tool/software:
Hi,
We are currently working on a project using the RM57L843 microcontroller and interfacing the MIL-STD-1553 IC BU-64843U8-E02 via the EMIF interface. The control lines are managed using GPIOs, while the address and data lines are handled by EMIF.
We are facing an issue during the write operation. Initially, the write process executes correctly, but on the subsequent write attempt, data is written before the control line is set low. Below is the write function we are using:
void ddcWrite1(uint16 data, uint16 *wrdata) {
gioSetBit(mibspiPORT1, PIN_CS2, 1);
milDataDirection(1);
delay(20);
gioSetBit(dmmPORT, STRBD, 0);
*wrdata = data;
gioSetBit(gioPORTB, SELECT, 0);
while(gioGetBit(dmmPORT, READY));
delay(5);
gioSetBit(dmmPORT, STRBD, 1);
gioSetBit(gioPORTB, SELECT, 1);
}
We have also captured the waveform for reference. Could you please assist us in identifying the root cause of this issue and suggest a possible solution?

This is First write. I am first low the pin STRBD and a Memory write and low the pin select. Here It execute correctly.

This is second write. But here the same execution but memory write is executed before the STBD pin low.
Looking forward to your guidance.
Best regards,
Veerappan P.