Sto cercando di inviare/ricevere una stringa tramite C#, in C# Io proprio:SerialPort & CCS stringa di comunicazione
SerialPort.WriteLine("A6");
ma in CCS, se provo l'invio di un char stringa dopo char non lo fa funziona affatto, né con ReadLine né con ReadExisting! Questo è quello che ho provato a creare un array, così ogni volta che inseriamo il prax RXBUFF, aggiungiamo il char ricevuto all'array, fino a quando l'array è pieno (ho definito a caso la dimensione dell'array per essere 2, il che significa che ci occuperemo di 2 -char stringhe di lunghezza), ed eventualmente inviare la stringa con l'invio di char dopo char:
#pragma vector = USCI_A1_VECTOR
__interrupt void USCI_A1_ISR(void)
if(__even_in_range(UCA1IV,18) == 0x02){ // Vector 2 - RXIFG
if(counter==0)
{
Data[0]=UCA1RXBUF;
counter++;
}
else
{
Data[1]=UCA1RXBUF;
counter=0;
UCA1TXBUF=Data[0];
while(!(UCA1IFG & UCTXIFG)); // until UCTXBUF1 is empty
UCA1TXBUF=Data[1];
}
}
in C#:
listBox2.Items.Add(SerialPort.ReadExisting());
ottengo il testo non-senso, come: ?? a ??? a volte: ???? A? ecc .., ma con:
listBox2.Items.Add(SerialPort.ReadLine());
in un primo tempo i premere il pulsante Invia che invia il "A6", ottengo nulla, la seconda volta che ottengo non-senso aswell, proprio come il comportamento ReadExisting.
tra l'altro, anche se cerco di inviare la stringa nel modo più semplice (senza matrice e condizioni), voglio dire in questo modo:
#pragma vector = USCI_A1_VECTOR
__interrupt void USCI_A1_ISR(void)
UCA1TXBUF='A';
while(!(UCA1IFG & UCTXIFG)); // until UCTXBUF1 is empty
UCA1TXBUF='6';
Ho anche elementi inconsistenti nella casella di riepilogo.
Tuttavia, se faccio questo:
#pragma vector = USCI_A1_VECTOR
__interrupt void USCI_A1_ISR(void)
UCA1TXBUF=UCA1RXBUF;
io capisco "A6" nella casella di riepilogo e tutto solo funzionano bene (con ReadLine e ReadExisting)! qualcuno potrebbe dirmi semplicemente perché questo sta accadendo?
http://electronics.stackexchange.com/questions/71810/uart-is-garbled-when-running-at-more-than-9600-bps –
Hai confermato che il Baud Rate e altre proprietà sono abbinate su? –
Sì! se le proprietà non sono state abbinate, credo che l'ultimo tentativo non avrebbe funzionato, ma funziona. non sei d'accordo con me? –