QtÒ»ÎÊ£¿
QTÏÂÔõô²ÅÄܽ«ÏûÏ¢·¢³ö£¿ÎÒÏÖÔÚ²»ÖªµÀÔõô²ÅÄÜ·¢³öÐźţ¿ÎÒÔÚ×Ö·ûģʽÏ´®¿Ú½ÓÊÕ·¢ËͶ¼Ã»ÎÊÌâ¡£µ«ÔÚQTÏÂʼÖÕûÓÐÔËÐд®¿Ú³ÌÐòÒ²ÎÞ·¨µ¯³ö´°¿Ú£¿ÄÇλ¸ßÊÖ¿ÉÒÔ¸øÎÒ½²½²°¡ ÕâÊÇÎÒ³ÌÐò¿´¿´ÓÐʲôÎÊÌâ,SIGNALº¯ÊýÓÉmoc×Ô¶¯Éú³ÉÎÒÖ»ÊǶ¨ÒåÁËËü¡£ÎªÊ²Ã´³ÌÐò²»ÔËÐÐlinSerialttys0() º¯Êý£¬ÎҵĴ®¿ÚÐźÅÊÇÒ»Ö±ÔÚ·¢µÄ
Text::Text()
{
setCaption("Text " VERSION);
initMenuBar();
initToolBar();
initStatusBar();
initDoc();
initView();
initlinSerialttys();
}
void Text::initlinSerialttys() {
//´®¿Ú0
s.OpenDevice("/dev/ttyS0"); //´ò¿ª´®¿Ú
fs = s.GetFileDescriptor(); //»ñµÃ´®¿ÚÃèÊö·û
serialport = s.GetFileHandle(); //»ñµÃÎļþÖ¸Õë
//¿ÉÒÔ²ÉÓô®¿ÚµÄÎļþÃèÊö·ûºÍÎļþÖ¸ÕëÀ´½øÐи÷ÖÖÎļþ¶Áд²Ù×÷
s.SetBits(8, 'N', 1);
s.SetSpeed(4800);
s.SetupRaw(1, 0);
connect(this, SIGNAL(signalslinSerialttys0(int)), SLOT(Myslot(int)));
connect(this, SIGNAL(signalslinSerialttys1(int)), SLOT(Myslot(int)));
}
void Text::Myalarm(int x)
{
QDialog *groupbox;
groupbox = new QDialog();
groupbox -> setMinimumSize( 400, 200);
groupbox -> setMaximumSize( 400, 200);
groupbox -> show();
}
void Text::linSerialttys0() {
select(1, fs, NULL, NULL, NULL);
while(1) {
chRet = fgetc(serialport);
printf("%c", chRet);
emit signalslinSerialttys0(10);
}
} ±àÒëÌáʾÊÇ£ºQT:gdb: -nograb added to command -line options
use the -dograb option enforce grabbing
Ò³:
[1]