kopia lustrzana https://github.com/Hamlib/Hamlib
Fix sleep macros and newcat.c set_powerstat
rodzic
4f05f09eed
commit
24eaeecfdf
|
@ -97,16 +97,18 @@
|
|||
#undef usleep
|
||||
#define usleep(n)\
|
||||
do {\
|
||||
unsigned long sec = n/1000000ul;\
|
||||
unsigned long nsec = n*1000ul - (sec * 1000000000ul);\
|
||||
struct timespec t;\
|
||||
t.tv_sec=0;\
|
||||
t.tv_nsec = n*1000ul;\
|
||||
t.tv_sec=sec;\
|
||||
t.tv_nsec = nsec;\
|
||||
nanosleep(&t,NULL);\
|
||||
} while(0)
|
||||
#define sleep(n)\
|
||||
do {\
|
||||
struct timespec t;\
|
||||
t.tv_sec=0;\
|
||||
t.tv_nsec = n*1000000000ul;\
|
||||
t.tv_sec=n;\
|
||||
t.tv_nsec = 0;\
|
||||
nanosleep(&t,NULL);\
|
||||
} while(0)
|
||||
|
||||
|
|
|
@ -2260,6 +2260,10 @@ int newcat_set_powerstat(RIG *rig, powerstat_t status)
|
|||
{
|
||||
case RIG_POWER_ON:
|
||||
ps = '1';
|
||||
// when powering on need a dummy byte to wake it up
|
||||
// then sleep from 1 to 2 seconds so we'll do 1.5 secs
|
||||
write_block(&state->rigport, "\n", 1);
|
||||
usleep(1500000);
|
||||
break;
|
||||
|
||||
case RIG_POWER_OFF:
|
||||
|
@ -2273,15 +2277,9 @@ int newcat_set_powerstat(RIG *rig, powerstat_t status)
|
|||
|
||||
snprintf(priv->cmd_str, sizeof(priv->cmd_str), "PS%c%c", ps, cat_term);
|
||||
|
||||
if (RIG_OK != (err = write_block(&state->rigport, priv->cmd_str,
|
||||
strlen(priv->cmd_str))))
|
||||
{
|
||||
return err;
|
||||
}
|
||||
err = write_block(&state->rigport, priv->cmd_str, strlen(priv->cmd_str));
|
||||
|
||||
// delay 1.5 seconds
|
||||
usleep(1500000);
|
||||
return write_block(&state->rigport, priv->cmd_str, strlen(priv->cmd_str));
|
||||
return err;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
typedef char ncboolean;
|
||||
|
||||
/* shared function version */
|
||||
#define NEWCAT_VER "0.25"
|
||||
#define NEWCAT_VER "0.26"
|
||||
|
||||
/* Hopefully large enough for future use, 128 chars plus '\0' */
|
||||
#define NEWCAT_DATA_LEN 129
|
||||
|
|
Ładowanie…
Reference in New Issue