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
        {
示例#2
0
// 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;
	}
}
示例#3
0
int analogSensorGet(AnalogSensor sensor) {
	return portRead(sensor.port);
}
示例#4
0
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);
		}
	}
}