summaryrefslogtreecommitdiff
path: root/pigpiod_if.c
diff options
context:
space:
mode:
authorjoan <joan@abyz.me.uk>2014-04-19 12:19:29 +0100
committerjoan <joan@abyz.me.uk>2014-04-19 12:19:29 +0100
commit306b9ad30bd9f6b5919c05ece909ced9749beae8 (patch)
tree335a63071478ce6f68f68d4c51066ec5184131cc /pigpiod_if.c
parent78bbfe466865b3ebb719440953d3fa62ee63b571 (diff)
V14
Diffstat (limited to 'pigpiod_if.c')
-rw-r--r--pigpiod_if.c35
1 files changed, 27 insertions, 8 deletions
diff --git a/pigpiod_if.c b/pigpiod_if.c
index 2fab6d0..b5cc3e7 100644
--- a/pigpiod_if.c
+++ b/pigpiod_if.c
@@ -606,6 +606,9 @@ uint32_t get_pigpio_version(void)
int wave_clear(void)
{return pigpio_command(gPigCommand, PI_CMD_WVCLR, 0, 0);}
+int wave_add_new(void)
+ {return pigpio_command(gPigCommand, PI_CMD_WVNEW, 0, 0);}
+
int wave_add_generic(unsigned numPulses, gpioPulse_t *pulses)
{
gpioExtent_t ext[1];
@@ -617,6 +620,8 @@ int wave_add_generic(unsigned numPulses, gpioPulse_t *pulses)
gpioPulse_t[] pulses
*/
+ if (!numPulses) return 0;
+
ext[0].size = numPulses * sizeof(gpioPulse_t);
ext[0].ptr = pulses;
@@ -637,6 +642,8 @@ int wave_add_serial(
char[] str
*/
+ if (!numChar) return 0;
+
ext[0].size = sizeof(unsigned);
ext[0].ptr = &baud;
@@ -649,18 +656,30 @@ int wave_add_serial(
return pigpio_command_ext(gPigCommand, PI_CMD_WVAS, gpio, numChar, 3, ext);
}
-int wave_tx_busy(void)
- {return pigpio_command(gPigCommand, PI_CMD_WVBSY, 0, 0);}
+int wave_create(void)
+ {return pigpio_command(gPigCommand, PI_CMD_WVCRE, 0, 0);}
-int wave_tx_stop(void)
- {return pigpio_command(gPigCommand, PI_CMD_WVHLT, 0, 0);}
+int wave_delete(unsigned wave_id)
+ {return pigpio_command(gPigCommand, PI_CMD_WVDEL, wave_id, 0);}
-int wave_tx_start(void)
+int wave_tx_start(void) /* DEPRECATED */
{return pigpio_command(gPigCommand, PI_CMD_WVGO, 0, 0);}
-int wave_tx_repeat(void)
+int wave_tx_repeat(void) /* DEPRECATED */
{return pigpio_command(gPigCommand, PI_CMD_WVGOR, 0, 0);}
+int wave_send_once(unsigned wave_id)
+ {return pigpio_command(gPigCommand, PI_CMD_WVTX, 0, 0);}
+
+int wave_send_repeat(unsigned wave_id)
+ {return pigpio_command(gPigCommand, PI_CMD_WVTXR, 0, 0);}
+
+int wave_tx_busy(void)
+ {return pigpio_command(gPigCommand, PI_CMD_WVBSY, 0, 0);}
+
+int wave_tx_stop(void)
+ {return pigpio_command(gPigCommand, PI_CMD_WVHLT, 0, 0);}
+
int wave_get_micros(void)
{return pigpio_command(gPigCommand, PI_CMD_WVSM, 0, 0);}
@@ -743,10 +762,10 @@ int run_script(unsigned script_id, unsigned numPar, uint32_t *param)
(gPigCommand, PI_CMD_PROCR, script_id, numPar, 1, ext);
}
-int script_status(int script_id, uint32_t *param)
+int script_status(unsigned script_id, uint32_t *param)
{
int status;
- uint32_t p[MAX_SCRIPT_PARAMS];
+ uint32_t p[PI_MAX_SCRIPT_PARAMS];
status = pigpio_command(gPigCommand, PI_CMD_PROCP, script_id, 0);