QT建立一个线程来处理耗时的工作

作者:fly 发布于:2017-2-17 13:12 分类:Linux

1、建立一个工作类,派生于QObject,比如:Worker,用于执行耗时操作:

class Worker : public QObject
{
    Q_OBJECT
public slots:
    // 长时间的作业
    void doWork()
    {
        // ...
        emit progress("正在...");
        // ...
        // 通知当前线程退出,即投递一个退出事件
        QThread::currentThread()->quit();
    }
    // ...
signals:
    void progress(const QString &text); // 进度
    // ...
};

阅读全文>>

评论(0) 浏览(21)

无法退出开发板上的minicom

作者:fly 发布于:2017-1-20 10:12 分类:Linux

输入CTRL-A会退出主机的minicom,而不会退出开发板上面的,要解决这个问题必须修改minicom源代码

minicom-2.7 src目录下。rwconf.c 文件 { "^A",        0,   "escape-key" }, 改为 { "^B",        0,   "escape-key" },

重新编译即可

按CTRL-B退出开发板上的minicom

尽管我是用的telnet 对我本身没有影响。

评论(0) 浏览(113)

error: 'BC' undeclared

作者:fly 发布于:2017-1-20 10:10 分类:Linux

第一次编译的时候正常,后来改过源代码再次编译的时候提示error: 'BC' undeclared

查看之后发现

./configure CC=arm-linux-gcc --prefix=/usr/local/arm/minicom --host=arm-linux CPPFLAGS=-I/usr/local/arm/blue/include LDFLAGS=-L/usr/local/arm/blue/libls
在配置库路径的时候多了一个ls。导致库引用路径错误。改正后,错误消失。

评论(0) 浏览(75)

移植minicom

作者:fly 发布于:2017-1-20 9:48 分类:Linux

1.去官网下载

http://alioth.debian.org/projects/minicom/

minicom 最新版本minicom-2.7

2.安装ncurses-6.0

我之前安装过。这里就不在重复了。

3.执行

./configure CC=arm-linux-gcc --prefix=/usr/local/arm/minicom --host=arm-linux CPPFLAGS=-I/usr/local/arm/blue/include LDFLAGS=-L/usr/local/arm/blue/lib

make

make install


在目录/usr/local/arm/minicom下会生成bin目录。把bin中的文件拷到开发板的bin中即可

评论(0) 浏览(61)

linux termios

作者:fly 发布于:2017-1-19 15:21 分类:Linux

termios结构体说明

#define NCCS 32
struct termios
  {
    tcflag_t c_iflag;		/* input mode flags */
    tcflag_t c_oflag;		/* output mode flags */
    tcflag_t c_cflag;		/* control mode flags */
    tcflag_t c_lflag;		/* local mode flags */
    cc_t c_line;			/* line discipline */
    cc_t c_cc[NCCS];		/* control characters */
    speed_t c_ispeed;		/* input speed */
    speed_t c_ospeed;		/* output speed */
#define _HAVE_STRUCT_TERMIOS_C_ISPEED 1
#define _HAVE_STRUCT_TERMIOS_C_OSPEED 1
  };


阅读全文>>

评论(0) 浏览(85)

移植Bluez.5.43

作者:fly 发布于:2017-1-19 10:27 分类:Linux

1.配置linux内核文件,使其支持蓝牙


进入Bluetooth subsystem support
勾选下面项目:
<*>L2CAP
<*>SCO
<*>RFCOMM Protocol
[*]RFCOMM TTY
<*>BNEP
[*]Multticast
[*]Protocol
<*>HIDP
进入Bluetooth device drivers
<*>HCI USB driver
<*>HCI Blue
<*>HCI VHCI driver


阅读全文>>

评论(0) 浏览(93)

linux时间戳与QDataTime 相互转换

作者:fly 发布于:2017-1-9 14:42 分类:Linux

QDataTime转换成时间戳

QDateTime time = QDateTime::currentDateTime();   //获取当前时间  

int timeT = time.toTime_t();   //将当前时间转为时间戳


时间戳转换成QDataTime

QDateTime time = QDateTime::fromTime_t(timeT);


字符串转换成QDataTime

QDate date;  

QTime time;  

QString a = timeString.mid(0,8);  

QString b = timeString.mid(8,6);  

date = QDate::fromString(a,"yyyyMMdd");  

time = QTime::fromString(b,"hhmmss");  

return QDateTime(date,time);")  

评论(0) 浏览(146)

linux设置硬件时钟 hwclock

作者:fly 发布于:2017-1-9 11:38 分类:Linux

# date

设置系统时钟的操作:

# date 091713272003.30

通用的设置格式:

# date 月日时分年.秒

同步到硬件时钟

hwclock -w

评论(0) 浏览(100)

QT使用触摸屏

作者:fly 发布于:2017-1-5 11:10 分类:Linux


设置好对应的环境变量即可

export TSLIB_ROOT=/usr/local/tslib

export TSLIB_TSDEVICE=/dev/input/event2


export TSLIB_TSEVENTTYPE=H3600

export TSLIB_CONFFILE=/usr/local/tslib/etc/ts.conf

export TSLIB_PLUGINDIR=/usr/local/tslib/lib/ts

export TSLIB_CALIBFILE=/etc/pointercal

export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts

export TSLIB_CONSOLEDEVICE=none

export TSLIB_FBDEVICE=/dev/fb0


export QWS_MOUSE_PROTO=Tslib:/dev/input/event2

export QWS_KEYBOARD="TTY:/dev/tty1"

export PATH=$QTDIR/bin:$PATH

export QT_PLUGIN_PATH=/usr/local/arm/qt-4.7.1/plugins/

export QT_QWS_FONTDIR=/usr/local/arm/qt-4.7.1/lib/fonts/

export LD_LIBRARY_PATH=$QTDIR/plugins/qtopialmigrate/:$QTDIR/qt_plugins/imageformats/:$QTDIR/lib:/usr/local/tslib/lib:$LD_LIBRARY_PATH

export QWS_DISPLAY="Transformed:Rot90:LinuxFb:mmWidth76:mmHeight44:1"

export LANG="en_US"



评论(0) 浏览(99)

export 在shell脚本中设置环境变量失效

作者:fly 发布于:2017-1-5 10:45 分类:Linux

shell脚本中设定的路径和环境变量只对改shell和其子shell有效。 对其父shell和其它shell无效。

解决方法:

source filename.sh

source 使shell脚本里的设置对其它shell也有效.

评论(0) 浏览(112)

 
Powered by emlog sitemap