UART を使用してマイクロコントローラーから温度値を C# インターフェイスに送信し、温度を表示したいと考えていますLabel.Content
。ここに私のマイクロコントローラコードがあります:
while(1) {
key_scan(); // get value of temp
if (Usart_Data_Ready())
{
while(temperature[i]!=0)
{
if(temperature[i]!=' ')
{
Usart_Write(temperature[i]);
Delay_ms(1000);
}
i = i + 1;
}
i =0;
Delay_ms(2000);
}
}
私のC#コードは次のとおりです。
private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
txt += serialPort1.ReadExisting().ToString();
textBox1.Text = txt.ToString();
}
しかし、そこで例外が発生します "クロススレッド操作が無効です: コントロール 'textBox1' は、それが作成されたスレッド以外のスレッドからアクセスされました" マイクロコントローラーから温度文字列を取得し、このエラーを削除する方法を教えてください!