如果我使用Template 10在UWP中创建应用。我用C#
我希望在类或某个地方拥有GpioController
逻辑来处理所有输入和输出业务,例如设置所有引脚和事件。
就像一个例子,当按下一个按钮时,它会向服务器发送一个POST请求,这必须在任何视图中都有效。
如果我去看一个视图并且我想要显示一个像#34的门的状态;门是打开的"
此外,如果传感器触发引脚为高电平,如果我改变视图,则无法触发buttonPin_ValueChanged
事件,或者由于任何原因将其设置为低电平,除非传感器为低电平。
即使引脚上拉电压是PullDown。
pin = gpio.OpenPin(12);
pin.SetDriveMode(GpioPinDriveMode.InputPullUp);
pin.Write(GpioPinValue.Low);
pin.ValueChanged += buttonPin_ValueChanged;
答案 0 :(得分:1)
您可以在初始类中创建一个GpioController
对象,并将其作为对象传递给其他类。
如:
class BaseClass {
GpioController gpio;
void createGpioController(){
gpio = new GpioController(/*Constuctor arguments here.*/);
}
void moveToNextClass(NextClass next){
//Instantiate next class with any special constructors.
next.gpio = this.gpio;
//Launch next class with same gpio member values.
}
}
class NextClass: BaseClass {
GpioController gpio; //Will be assigned by last class.
}