3 #ifdef UL_WITHOUT_HANDLE
4 #include <system_def.h>
5 #endif /*UL_WITHOUT_HANDLE*/
7 extern const ULOI_CODE uloi_objdes_array_t uloi_objdes_main;
11 unsigned status_val=0x1234;
14 int status_rdfnc(ULOI_PARAM_coninfo void *context)
16 return uloi_uint_rdfnc(ULOI_ARG_coninfo &status_val);
19 int errclr_wrfnc(ULOI_PARAM_coninfo void *context)
29 /* description of input objects */
30 const ULOI_CODE uloi_objdes_t uloid_objdes_DOII =
31 ULOI_GENOBJDES_RAW(ULOI_DOII,NULL,NULL_CODE,NULL,uloi_doii_fnc,(void*)&uloi_objdes_main)
32 /* description of output objects */
33 const ULOI_CODE uloi_objdes_t uloid_objdes_DOIO =
34 ULOI_GENOBJDES_RAW(ULOI_DOIO,NULL,NULL_CODE,NULL,uloi_doio_fnc,(void*)&uloi_objdes_main)
35 /* ID numbers of recognized input objects */
36 const ULOI_CODE uloi_objdes_t uloid_objdes_QOII =
37 ULOI_GENOBJDES_RAW(ULOI_QOII,NULL,NULL_CODE,NULL,uloi_qoii_fnc,(void*)&uloi_objdes_main)
38 /* ID numbers of recognized output objects */
39 const ULOI_CODE uloi_objdes_t uloid_objdes_QOIO =
40 ULOI_GENOBJDES_RAW(ULOI_QOIO,NULL,NULL_CODE,NULL,uloi_qoio_fnc,(void*)&uloi_objdes_main)
41 /* object values read request */
42 const ULOI_CODE uloi_objdes_t uloid_objdes_RDRQ =
43 ULOI_GENOBJDES_RAW(ULOI_RDRQ,NULL,NULL_CODE,NULL,uloi_rdrq_fnc,(void*)&uloi_objdes_main)
45 ULOI_GENOBJDES(STATUS,ULOI_STATUS,"u2",status_rdfnc,&status_val,NULL_CODE,NULL)
46 ULOI_GENOBJDES(ERRCLR,ULOI_ERRCLR,"e",NULL_CODE,NULL,errclr_wrfnc,&status_val)
47 ULOI_GENOBJDES(TEST,I_TEST,"s2",uloi_uint_rdfnc,&test_val,uloi_uint_wrfnc,&test_val)
49 const uloi_objdes_t * ULOI_CODE uloi_objdes_main_items[]={
61 const ULOI_CODE uloi_objdes_array_t uloi_objdes_main={
63 uloi_objdes_main_items,
64 sizeof(uloi_objdes_main_items)/sizeof(uloi_objdes_main_items[0]),
70 uloi_coninfo_t uloi_coninfo_global;
74 #ifndef UL_WITHOUT_HANDLE
75 uloi_coninfo_t *coninfo=&uloi_coninfo_global;
77 #endif /*UL_WITHOUT_HANDLE*/
79 #ifdef UL_WITHOUT_HANDLE
81 ul_drv_set_bdiv(BAUD2BAUDDIV(19200));
84 #else /*UL_WITHOUT_HANDLE*/
85 coninfo->ul_fd=ul_open(NULL,NULL);
86 if(coninfo->ul_fd==UL_FD_INVALID)
88 coninfo->ul_fd1=ul_open(NULL,NULL);
89 if(coninfo->ul_fd1==UL_FD_INVALID){
90 ul_close(coninfo->ul_fd1);
93 memset(&msginfo, 0, sizeof(msginfo));
94 msginfo.cmd=UL_CMD_OISV;
95 ul_addfilt(coninfo->ul_fd, &msginfo);
96 #endif /*UL_WITHOUT_HANDLE*/
98 coninfo->cmd=UL_CMD_OISV;
104 if((ul_inepoll(coninfo->ul_fd)>0)||(ul_fd_wait(coninfo->ul_fd,100)>0)){
105 uloi_process_msg(ULOI_ARG_coninfo &uloi_objdes_main, NULL);