bool Cuart::run(void) { if (outputBuffer.size()) { Set_RS(true); } if (RS && CS) { Set_SD( (sendBit()==Bit_1) ? true:false); } if (CD) { Set_RR(1); Set_CD(1); } bitToByte(); return true; }
bool Csio::run(void) { pSIOCONNECTOR_value = pSIOCONNECTOR->Get_values(); // Read connector Set_SD( SIO_GET_PIN(S_SD) ); Set_RR( SIO_GET_PIN(S_RR) ); Set_RS( SIO_GET_PIN(S_RS) ); Set_ER( SIO_GET_PIN(S_ER) ); // Set_PRQ( SIO_GET_PIN(S_PRQ) ); if (RS) { Set_CS(1); Set_CD(1); // if (mainwindow->dialoganalogic) mainwindow->dialoganalogic->setMarker(1); } Sii_bit = 0; if (ER && CD && RR) { // if (mainwindow->dialoganalogic) mainwindow->dialoganalogic->setMarker(8); Sii_bit = transmit(); } Set_RD( Sii_bit ); receive(); SIO_SET_PIN(S_RD, Get_RD()); SIO_SET_PIN(S_CS, Get_CS()); SIO_SET_PIN(S_CD, Get_CD()); //SIO_SET_PIN(SIO_PAK, 0); pSIOCONNECTOR_value = pSIOCONNECTOR->Get_values(); // pTIMER->state++; return true; }