interfața nu primește șir de la mikroC Pro

Vreau să trimit șir de la mikroC pro la PC folosind interfața C #. codul meu este:

void main()
{
    while (1) 
    {
        if (UART1_Data_Ready())
        {
            UART1_Write_Text("mikroC");
            Delay_ms(1000);
        }
    }
}

dar atunci când este primit în C#, ea se întoarce ca primul întreg șir, apoi returnează bucăți din ea, ca și cum ar trimite mai întâi 'm' apoi 'ikroC'. etc unde codul meu C# este:

private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
     MessageBox.Show(serialPort1.ReadExisting().ToString());
}
0
Puteți posta definiția codului UART1_Write_Text
adăugat autor JaredPar, sursa
acest cod este scris în mikroc
adăugat autor Fatima Zohra, sursa
C # nu acceptă în timp ce (1) ca C, trebuie să utilizați în timp ce (true) .
adăugat autor Omar Mahili, sursa

1 răspunsuri

The MSDN document says : The DataReceived event is not guaranteed to be raised for every byte received. Use the SerialPort.BytesToRead property to determine how much data is left to be read in the buffer. For more information refer to this MSDN Article

0
adăugat
OK voi încerca. Ei bine, multumesc
adăugat autor Fatima Zohra, sursa