Changeset 364 for asp3_tinet_ecnl_rx/trunk/asp3_dcre/syssvc
- Timestamp:
- Feb 1, 2019, 9:57:09 PM (5 years ago)
- Location:
- asp3_tinet_ecnl_rx/trunk/asp3_dcre/syssvc
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
asp3_tinet_ecnl_rx/trunk/asp3_dcre/syssvc/serial.h
r359 r364 79 79 extern ER serial_opn_por(ID portid) throw(); 80 80 extern ER serial_cls_por(ID portid) throw(); 81 extern ER_UINT serial_ rea_dat(ID portid, char *buf, uint_t len) throw();81 extern ER_UINT serial_trea_dat(ID portid, char *buf, uint_t len, TMO tmout) throw(); 82 82 extern ER_UINT serial_wri_dat(ID portid, const char *buf, uint_t len) throw(); 83 83 extern ER serial_ctl_por(ID portid, uint_t ioctl) throw(); 84 84 extern ER serial_ref_por(ID portid, T_SERIAL_RPOR *pk_rpor) throw(); 85 86 Inline ER_UINT serial_rea_dat(ID portid, char *buf, uint_t len) 87 { 88 return serial_trea_dat(portid, buf, len, TMO_FEVR); 89 } 85 90 86 91 /* -
asp3_tinet_ecnl_rx/trunk/asp3_dcre/syssvc/tSerialAdapter.c
r337 r364 83 83 */ 84 84 ER_UINT 85 serial_ rea_dat(ID portid, char *buf, uint_t len)85 serial_trea_dat(ID portid, char *buf, uint_t len, TMO tmout) 86 86 { 87 87 if (sns_dpn()) { /* コンテキストのチェック */ … … 92 92 } 93 93 94 return(cSerialPort_read(portid - 1, buf, len ));94 return(cSerialPort_read(portid - 1, buf, len, tmout)); 95 95 } 96 96 -
asp3_tinet_ecnl_rx/trunk/asp3_dcre/syssvc/tSerialPort.cdl
r337 r364 57 57 ER open(void); 58 58 ER close(void); 59 ER_UINT read([out,size_is(length)] char *buffer, [in] uint_t length );59 ER_UINT read([out,size_is(length)] char *buffer, [in] uint_t length, [in] TMO tmout); 60 60 ER_UINT write([in,size_is(length)] const char *buffer, [in] uint_t length); 61 61 ER control([in] uint_t ioControl); -
asp3_tinet_ecnl_rx/trunk/asp3_dcre/syssvc/tSerialPortMain.c
r359 r364 397 397 */ 398 398 ER_UINT 399 eSerialPort_read(CELLIDX idx, char *buffer, uint_t length )399 eSerialPort_read(CELLIDX idx, char *buffer, uint_t length, TMO tmout) 400 400 { 401 401 CELLCB *p_cellcb; … … 423 423 while (reacnt < length) { 424 424 if (buffer_empty) { 425 SVC(rercd = cReceiveSemaphore_wait(), 426 gen_ercd_wait(rercd, p_cellcb)); 425 rercd = cReceiveSemaphore_waitTimeout(tmout); 426 if (rercd == E_TMOUT) 427 return E_TMOUT; 428 if (rercd < 0) { 429 gen_ercd_wait(rercd, p_cellcb); 430 ercd = rercd; 431 goto error_exit; 432 } 427 433 } 428 434 SVC(rercd = serialPort_readChar(p_cellcb, &c), rercd);
Note:
See TracChangeset
for help on using the changeset viewer.