ahbuartpluginui.cpp
121 lines
| 3.7 KiB
| text/x-c
|
CppLexer
/ ahbuartplugin / ahbuartpluginui.cpp
r0 | /*------------------------------------------------------------------------------ | |||
Jeandet Alexis
|
r4 | -- This file is a part of the SocExplorer Software | ||
Jeandet Alexis
|
r11 | -- Copyright (C) 2011, Plasma Physics Laboratory - CNRS | ||
r0 | -- | |||
-- This program is free software; you can redistribute it and/or modify | ||||
-- it under the terms of the GNU General Public License as published by | ||||
-- the Free Software Foundation; either version 3 of the License, or | ||||
-- (at your option) any later version. | ||||
-- | ||||
-- This program is distributed in the hope that it will be useful, | ||||
-- but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||||
-- GNU General Public License for more details. | ||||
-- | ||||
-- You should have received a copy of the GNU General Public License | ||||
-- along with this program; if not, write to the Free Software | ||||
-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||||
-------------------------------------------------------------------------------*/ | ||||
/*-- Author : Alexis Jeandet | ||||
-- Mail : alexis.jeandet@lpp.polytechnique.fr | ||||
----------------------------------------------------------------------------*/ | ||||
#include "ahbuartpluginui.h" | ||||
#include "ui_ahbuartpluginui.h" | ||||
ahbUartPluginUI::ahbUartPluginUI(QWidget *parent) : | ||||
QWidget(parent), | ||||
ui(new Ui::ahbUartPluginUI) | ||||
{ | ||||
ui->setupUi(this); | ||||
connect(ui->OpenPort,SIGNAL(clicked()),this,SLOT(connectPort())); | ||||
r49 | // connect(ui->PortspeedSlider,SIGNAL(valueChanged(int)),ui->baurateLCD,SLOT(display(int))); | |||
r0 | connect(ui->rescanPorts,SIGNAL(clicked()),this,SIGNAL(rescanPorts())); | |||
r49 | QStringList allowedSpeeds; | |||
allowedSpeeds<<"0"<<"50"<<"75"<<"110"<<"134"<<"150"<< | ||||
"200"<<"300"<<"600"<<"1200"<<"1800"<<"2400"<< | ||||
"4800"<<"9600"<<"19200"<<"38400"<<"57600"<< | ||||
"115200"<<"230400"<<"460800"<<"500000"<<"576000"<< | ||||
"921600"<<"1000000"<<"1152000"<<"1500000"<<"2000000"<< | ||||
"2500000"<<"3000000"<<"3500000"<<"4000000"; | ||||
portSpeedCompleter = new QCompleter(allowedSpeeds); | ||||
this->ui->portSpeed->setCompleter(portSpeedCompleter); | ||||
r31 | this->writtenBytes = 0; | |||
this->readBytes = 0; | ||||
r0 | } | |||
void ahbUartPluginUI::connectPort() | ||||
{ | ||||
r49 | int baudrate = ui->portSpeed->text().toInt(); | |||
emit this->connectPortsig(ui->PortName->text(),baudrate); | ||||
r0 | } | |||
void ahbUartPluginUI::setConnected(bool connected) | ||||
{ | ||||
if(connected == true) | ||||
{ | ||||
ui->OpenPort->setText(tr("Close port")); | ||||
} | ||||
else | ||||
ui->OpenPort->setText(tr("Open port")); | ||||
} | ||||
ahbUartPluginUI::~ahbUartPluginUI() | ||||
{ | ||||
delete ui; | ||||
} | ||||
void ahbUartPluginUI::setconfig(QString PortName, int baudrate) | ||||
{ | ||||
this->ui->PortName->setText(PortName); | ||||
r49 | this->ui->portSpeed->setText(QString::number(baudrate)); | |||
r0 | } | |||
r31 | void ahbUartPluginUI::addWritenBytes(int count) | |||
r0 | { | |||
r31 | this->writtenBytes+=count; | |||
this->ui->WrBytesLCD->display(this->writtenBytes); | ||||
r0 | } | |||
r31 | void ahbUartPluginUI::addReadBytes(int count) | |||
r0 | { | |||
r31 | this->readBytes+=count; | |||
this->ui->RdBytesLCD->display(this->readBytes); | ||||
r0 | } | |||
r52 | void ahbUartPluginUI::setSystemSpeed(int speed) | |||
{ | ||||
QStringList frLst = QStringList()<<"Hz"<<"kHz"<<"MHz"<<"GHz"; | ||||
int ind=0; | ||||
double speedD = speed; | ||||
while(speedD>1000.0) | ||||
{ | ||||
speedD/=1000.0; | ||||
ind++; | ||||
} | ||||
this->ui->detectedSpeedLbl->setText(QString::number(speedD)+frLst[ind]); | ||||
} | ||||
r0 | ||||
void ahbUartPluginUI::setCompleter(QCompleter *completer) | ||||
{ | ||||
this->ui->PortName->setCompleter(completer); | ||||
} | ||||
r52 | int ahbUartPluginUI::baudRate() | |||
{ | ||||
return ui->portSpeed->text().toInt(); | ||||
} | ||||
r0 | void ahbUartPluginUI::closeEvent(QCloseEvent *event) | |||
{ | ||||
event->accept(); | ||||
} | ||||