#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 #. Какая часть является «псевдо»?