использование .NET MF для реализации цифрового датчика отражения?

#c# #sensors #.net-micro-framework

#c# #датчики #.net-микро-фреймворк

Вопрос:

Я использую .NET MF с микроконтроллером и цифровым датчиком отражения. Мне нужно реализовать следующий псевдокод на C # для считывания с датчика. Я использую GHIElectronics.NETMF.FEZ для портов ввода / вывода. Это продукт, который я использую http://www.sparkfun.com/products/9454

 int QRE1113_Pin = 2; //connected to digital 2

void setup(){
Serial.begin(9600);
}

void loop(){

int QRE_Value = readQD();
Serial.println(QRE_Value); 

}

int readQD(){
//Returns value from the QRE1113 
//Lower numbers mean more refleacive
//More than 3000 means nothing was reflected.
pinMode( QRE1113_Pin, OUTPUT );
digitalWrite( QRE1113_Pin, HIGH );
delayMicroseconds(10);
pinMode( QRE1113_Pin, INPUT );

long time = micros();

//time how long the input is HIGH, but quit after 3ms as nothing happens after that
while (digitalRead(QRE1113_Pin) == HIGH amp;amp; micros() - time < 3000);
int diff = micros() - time;

return diff;
  

РЕДАКТИРОВАТЬ: я использую

 new InputPort((Cpu.Pin)FEZ_Pin.Digital.IO44, false, Port.ResistorMode.Disabled)
  

для создания входных портов и

 new OutputPort((Cpu.Pin)FEZ_Pin.Digital.IO44, false)
  

для создания выходных портов, но я не знаю, как изменить режим вывода с Out на In или установить значение pin как ВЫСОКОЕ

Комментарии:

1. За исключением отсутствующей последней фигурной скобки } , это уже выглядит как совершенно корректный код на c #. Какая часть является «псевдо»?