void PositioningMethodSerialPortOptions::onTest(bool ATest) { if (ATest) { ui->console->clear(); PortSettings portSettings; portSettings.FBaudRate = QSerialPort::BaudRate(ui->cmbBaudRate->itemData(ui->cmbBaudRate->currentIndex()).toInt()); portSettings.FDataBits = QSerialPort::DataBits(ui->cmbDataBits->itemData(ui->cmbDataBits->currentIndex()).toInt()); portSettings.FStopBits = QSerialPort::StopBits(ui->cmbStopBits->itemData(ui->cmbStopBits->currentIndex()).toInt()); portSettings.FParity = QSerialPort::Parity(ui->cmbParity->itemData(ui->cmbParity->currentIndex()).toInt()); portSettings.FFlowControl = QSerialPort::FlowControl(ui->cmbFlowControl->itemData(ui->cmbFlowControl->currentIndex()).toInt()); ReaderSettings readerSettings; readerSettings.FName = ui->cmbPortName->currentText(); readerSettings.FSize = ui->spbBufferSize->value(); readerSettings.FTimeout = ui->spbTimeout->value(); readerSettings.FTimeTreshold = ui->spbTimeTreshold->value(); readerSettings.FDistanceTreshold = ui->spbDistanceTreshold->value(); FSerialPort->startReadPort(readerSettings, portSettings); if (FSerialPort->reader()) { connect(FSerialPort->reader(),SIGNAL(portRead(QByteArray)),SLOT(onPortRead(QByteArray))); connect(FSerialPort->reader(),SIGNAL(finished(int)),SLOT(onPortReadFinished(int))); disableControls(true); } else {
// digitalRead() returns LOW if Pressed or HIGH if released // the function returns true if the bumper/limit switch is pressed bool pushButtonPressed(PushButton push_button) { if (portRead(push_button.port) == LOW) { if (!push_button.inverted) { return true; } else { return false; } } if (!push_button.inverted) { return false; } else { return true; } }
int analogSensorGet(AnalogSensor sensor) { return portRead(sensor.port); }
int main() { screenInit(); screenPutString("BIOS Terminal v1.0 build " BUILD "\r\n(C) Copyright 2004 Wojtek Kaniewski <*****@*****.**>\r\nPress F12 to configure serial port\r\n\r\n"); serialSetup(); for (;;) { #ifdef DEBUG_SERIAL byte x, y, a; x = screenX; y = screenY; a = screenAttr; screenX = 30; screenY = 24; screenAttr = 7*16; screenCursorNoUpdate = 1; screenPutString(" s:"); screenPutHex((char)((char) serialRxHead - (char) serialRxTail)); screenPutString(" i:"); screenPutHex(portRead(0x21)); screenPutString(" t:"); screenPutHex(serialRxTail >> 8); screenPutHex(serialRxTail &255); screenPutString("/h:"); screenPutHex(serialRxHead >> 8); screenPutHex(serialRxHead &255); screenPutString(","); screenPutHex(portRead(serialPort+1)); screenPutString(","); screenPutHex(serialInterruptLast); // +2 screenPutString(","); screenPutHex(portRead(serialPort+3)); screenPutString(","); screenPutHex(portRead(serialPort+4)); screenPutString(","); screenPutHex(portRead(serialPort+5)); screenPutString(","); screenPutHex(portRead(serialPort+6)); screenPutString(" k:"); screenCursorNoUpdate = 0; screenX = x; screenY = y; screenAttr = a; screenCursorUpdate(); #endif // DEBUG_SERIAL if (keyboardPressed()) { char *seq = vtGetChar(); while (*seq) { serialPutChar(*seq); seq++; } } while (serialDataReady()) { char ch = serialGetChar(); vtPutChar(ch); } } }