首页| 论坛| 消息

标题:求助:2440开发板的串口接收不到数据
作者:darkeria
日期:2012-03-07 13:18
内容:

大家好,我用mini 2440通过串口跟pc机通信,结果能发送但收不到pc的数据,同样的程序放到pc机上跟开发板上的串口助手通信就可收可发,不知道有没有谁之前碰到过同样的情形呢?是不是我串口那里设置的不对?我使用的是网上那个介绍得很多的第三方类,设置部分的代码如下:

void initform::ComInit()
{
portName = "/dev/ttySAC1";

mybaud = BAUD9600;
mydatabits = DATA_8;
myparity = PAR_NONE;
mystopbits = STOP_1;
myflow = FLOW_OFF;
mytimeout = (long)500;

myserial = new DataCollectThread(portName, mybaud, mydatabits, myparity, mystopbits, myflow, mytimeout);
myserial->start();
}

串口线程如下:
DataCollectThread::DataCollectThread(QString portName,BaudRateType baud, DataBitsType databits, ParityType parity, StopBitsType stopbits, FlowType flow, long timeout)
{
struct PortSettings ttySetting; // s3c2440--{BAUD115200,DATA_8,PAR_NONE,STOP_1,FLOW_OFF,500};

myCom = new Posix_QextSerialPort(portName,ttySetting);

myCom->open(QIODevice::ReadWrite);//以可读写方式打开串口
myCom->setBaudRate(baud);
myCom->setDataBits(databits);
myCom->setParity(parity);
myCom->setStopBits(stopbits);
myCom->setFlowControl(flow);
myCom->setTimeout(0,timeout);

}

DataCollectThread::~DataCollectThread()
{

}
void DataCollectThread::run()
{
while(!stopped)
{
usleep(50000);//delay 50ms
mutex.lock();
QByteArray temp =..


#1 [dbzhang800 03-08 05:08]
不清楚你用的版本是何处下载的,但从 Posix_QextSerialPort 可以看出:至少是5年以前的版本。所以不敢确定是谁的bug
或许你可以试试这个 http://code.google.com/r/dbzhang800-qextserialport/

回复 发表
主题 版块