1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| void rs232::startConnection()
{
setPortName("COM3");
setBaudRate(BAUD9600);
setFlowControl(FLOW_OFF);
setParity(PAR_NONE);
setDataBits(DATA_8);
setStopBits(STOP_1);
setTimeout(1);
//setQueryMode(QextSerialPort::Polling);
open(QIODevice::ReadWrite);
//connect(this, SIGNAL(readyRead()), this, SLOT(dataRead()));
connect(this, SIGNAL(bytesReaded()), this, SLOT(byteHandler()));
}
void rs232::insertCard(cardInsertMode Mode)
{
static const char mydata[] = { 0x43,0x32,0x30, 0x42};
QByteArray data = QByteArray::fromRawData(mydata, sizeof(mydata));
char chSend[256],chSend1[256],chState[20];
int bcc, i, j;
memset(chSend, '\0', 256);
memset(chSend1, '\0',256);
memset(chState, '\0', 20);
//'½ø¿¨ÃüÁî' 'C' 32H pm (0x30'pm´Å¿¨ 0x31 'IC¿¨²¢¶ÔIC¿¨Éϵ硡¡¡0x32'IC¿¨²»¶ÔIC¿¨Éϵç)
sprintf(chSend, "%cC2%d%c", 0x02, (int)Mode, 0x03);
bcc = KDM4787_BCC(chSend, strlen(chSend));
sprintf(chSend1, "%s%c%c", chSend, bcc, 0x0D);
write((const char*)chSend, strlen(chSend));
//char in = write(mydata,sizeof(mydata));
} |
Partager