Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions src/hal/components/debounce.c
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ typedef struct {
#ifdef EXPORT_STATE
hal_sint_t state; /* parameter*: internal state */
#else
rtapi_s32 state; /* parameter*: internal state */
rtapi_sint state; /* parameter*: internal state */
#endif
} debounce_t;

Expand Down Expand Up @@ -173,11 +173,11 @@ void rtapi_app_exit(void)
************************************************************************/

#ifdef EXPORT_STATE
static inline rtapi_s32 get_state(hal_sint_t *s) { return hal_get_si32(*s); }
static inline rtapi_s32 set_state(hal_sint_t *s, rtapi_s32 v) { return hal_set_si32(*s, v); }
static inline rtapi_sint get_state(hal_sint_t *s) { return hal_get_sint(*s); }
static inline rtapi_sint set_state(hal_sint_t *s, rtapi_sint v) { return hal_set_sint(*s, v); }
#else
static inline rtapi_s32 get_state(rtapi_s32 *s) { return *s; }
static inline rtapi_s32 set_state(rtapi_s32 *s, rtapi_s32 v) { return (*s = v); }
static inline rtapi_sint get_state(rtapi_sint *s) { return *s; }
static inline rtapi_sint set_state(rtapi_sint *s, rtapi_sint v) { return (*s = v); }
#endif

/** The debounce filter works by incrementing a counter whenever the
Expand Down Expand Up @@ -205,8 +205,8 @@ static void debounce(void *arg, long period)
/* point to filter group */
group = (debounce_group_t *) arg;
/* first make sure delay is sane */
if (hal_get_si32(group->delay) < 0) {
hal_set_si32(group->delay, 1);
if (hal_get_sint(group->delay) < 0) {
hal_set_sint(group->delay, 1);
}
/* loop thru filters */
for (n = 0; n < group->channels; n++) {
Expand All @@ -215,7 +215,7 @@ static void debounce(void *arg, long period)
/* update this filter */
if (hal_get_bool(filter->in)) {
/* input true, is state at threshold? */
if (get_state(&filter->state) < hal_get_si32(group->delay)) {
if (get_state(&filter->state) < hal_get_sint(group->delay)) {
/* no, increment */
set_state(&filter->state, get_state(&filter->state) + 1);
} else {
Expand Down Expand Up @@ -257,7 +257,7 @@ static int export_group(int num, debounce_group_t * addr, int group_size)
return -1;
}
/* export param variable for delay */
retval = hal_param_new_si32(comp_id, HAL_RW, &addr->delay, 5, "debounce.%d.delay", num);
retval = hal_param_new_sint(comp_id, HAL_RW, &addr->delay, 5, "debounce.%d.delay", num);
if (retval != 0) {
rtapi_print_msg(RTAPI_MSG_ERR, "DEBOUNCE: ERROR: 'debounce.%d.delay' param export failed\n", num);
return retval;
Expand Down Expand Up @@ -304,7 +304,7 @@ static int export_filter(int num, debounce_t * addr, int group_num)
}
#ifdef EXPORT_STATE
/* export parameter containing internal state */
retval = hal_param_new_si32(comp_id, HAL_RO, &addr->state, 0, "%s.state", buf);
retval = hal_param_new_sint(comp_id, HAL_RO, &addr->state, 0, "%s.state", buf);
if (retval != 0) {
rtapi_print_msg(RTAPI_MSG_ERR, "DEBOUNCE: ERROR: '%s.state' param export failed\n", buf);
return retval;
Expand Down
20 changes: 10 additions & 10 deletions src/hal/components/modmath.c
Original file line number Diff line number Diff line change
Expand Up @@ -118,20 +118,20 @@ static void mod_dir_funct(void *arg, long period)
(void)period;
mod_dir_t *mod = (mod_dir_t *)arg; /* point to block data */

rtapi_s32 min_num = hal_get_si32(mod->min_num);
rtapi_s32 max_num = hal_get_si32(mod->max_num);
rtapi_sint min_num = hal_get_sint(mod->min_num);
rtapi_sint max_num = hal_get_sint(mod->max_num);

rtapi_s32 range = max_num - min_num + 1;
rtapi_s32 act = hal_get_si32(mod->actual);
rtapi_sint range = max_num - min_num + 1;
rtapi_sint act = hal_get_sint(mod->actual);
if (act > max_num || act < min_num) {
act = min_num + ((act-min_num) % (range));
}
rtapi_s32 des = hal_get_si32(mod->desired);
rtapi_sint des = hal_get_sint(mod->desired);
if (des > max_num || des < min_num) {
des = min_num + ((des-min_num) % (range));
}

rtapi_s32 to_go = des-act;
rtapi_sint to_go = des-act;

if ((hal_get_bool(mod->wrap)) && (to_go > range/2)) {
to_go -= range;
Expand Down Expand Up @@ -187,12 +187,12 @@ static int export_mod_dir(int num)
CHK(hal_pin_new_bool(comp_id, HAL_OUT, &(moddir->on_target), 1, "%s.on-target", base), "on-target");

/* export input pins */
CHK(hal_pin_new_si32(comp_id, HAL_IN, &(moddir->actual), 0, "%s.actual", base), "actual");
CHK(hal_pin_new_si32(comp_id, HAL_IN, &(moddir->desired), 0, "%s.desired", base), "desired");
CHK(hal_pin_new_sint(comp_id, HAL_IN, &(moddir->actual), 0, "%s.actual", base), "actual");
CHK(hal_pin_new_sint(comp_id, HAL_IN, &(moddir->desired), 0, "%s.desired", base), "desired");

/* export pins for max and min values */
CHK(hal_pin_new_si32(comp_id, HAL_IO, &(moddir->min_num), 0, "%s.min-num", base), "min-num");
CHK(hal_pin_new_si32(comp_id, HAL_IO, &(moddir->max_num), 15, "%s.max-num", base), "max-num");
CHK(hal_pin_new_sint(comp_id, HAL_IO, &(moddir->min_num), 0, "%s.min-num", base), "min-num");
CHK(hal_pin_new_sint(comp_id, HAL_IO, &(moddir->max_num), 15, "%s.max-num", base), "max-num");
CHK(hal_pin_new_bool(comp_id, HAL_IO, &(moddir->wrap), 1, "%s.wrap", base), "wrap");

/* export function */
Expand Down
Loading