##// END OF EJS Templates
Étiquette socexplorer-plugins-0.7-7 ajoutée à la révision b7137547140e
Étiquette socexplorer-plugins-0.7-7 ajoutée à la révision b7137547140e

File last commit:

r34:ccd56e93ef09 default
r102:21039a925364 tip default
Show More
uartpollingthread.h
67 lines | 2.3 KiB | text/x-c | CLexer
/*------------------------------------------------------------------------------
-- This file is a part of the SocExplorer Software
-- Copyright (C) 2014, Plasma Physics Laboratory - CNRS
--
-- 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 2 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@member.fsf.org
----------------------------------------------------------------------------*/
#ifndef UARTPOLLINGTHREAD_H
#define UARTPOLLINGTHREAD_H
#include <QObject>
#include <QThread>
#include <socexplorerplugin.h>
#include <RS232.h>
#include <QMutex>
#define APB_UART_DATA_REG 0x0
#define APB_UART_STATUS_REG 0x4
#define APB_UART_CONTROL_REG 0x8
#define APB_UART_SCALE_REG 0xC
#define APB_UART_FIFO_DEBUG_REG 0x10
class UARTPollingThread : public QThread
{
Q_OBJECT
public:
explicit UARTPollingThread(socexplorerplugin *parent = 0);
~UARTPollingThread();
void run();
signals:
void apbUartTextReceived(QString text);
public slots:
void sendChar(char c);
bool openUart();
void closeUart();
void setPortName(QString name);
void setPortSpeedStr(QString speed);
void setPortSpeed(int speed);
void setFifoDebugEable(bool enable);
bool fifoDebugEnabled();
private:
void configFifoDebug(bool enable);
bool p_fifoDebugEnabled;
bool fifoDebugConfigured;
QString portName;
int uartSpeed;
bool uartOpened;
socexplorerplugin* plugin;
rs232port_t uart;
QMutex* uartMutex;
};
#endif // UARTPOLLINGTHREAD_H