【发布时间】:2018-05-02 13:56:49
【问题描述】:
现在我正在尝试将 Xamarin Forms 与 I2C 设备和 Raspberry Pi 结合使用。我用 C# 编程,Raspberry Pi 与 Windows IoT 一起安装。我遇到了一个关于计时器的问题。
我想做的是创建一个 System.Threading.Timer 并从 I2C 设备读取数据,然后每秒将其显示在标签上,但是当我尝试显示数据时,错误显示“应用程序调用了为不同线程编组的接口。"
以下代码是我尝试做的。
public void InitSecondTimer(int interval)
{
secTimer = new Timer(interval);
secTimer.Elapsed += new ElapsedEventHandler(timer_Elapsed);
secTimer.Start();
Debug.WriteLine("Secondtimer inited");
}
private void timer_Elapsed(object sender, ElapsedEventArgs e)
{
double voltage = 0;
InputI2C(ADC0, ref voltage); //Read data from I2C devices
ai0.Text = voltage.ToString(); //ai0 is a Label
}
那么我该如何解决这个问题呢?非常感谢您的帮助!
【问题讨论】:
标签: c# xamarin timer xamarin.forms