1
0
mirror of https://github.com/preble/libpinproc synced 2026-02-24 18:25:23 +01:00

Added PRDriverPulsedPatter for patter bursts.

This commit is contained in:
gstellenberg
2010-04-11 19:30:08 -05:00
parent 25c4fe2d0b
commit e90731e7b9
3 changed files with 18 additions and 1 deletions

View File

@@ -216,11 +216,16 @@ int main(int argc, const char **argv)
for (i=0; i<8; i++) {
PRDriverSchedule(proc, 80+i, 0xFF00FF00, 0, 0);
}
//PRDriverSchedule(proc, 80, 0xFF00FF00, 0, 0);
//PRDriverSchedule(proc, 0, 0xFF00AAAA, 1, 1);
// Pitter-patter a feature lamp for testing purposes.
// Pitter-patter lamp 84: on 127ms, off 127ms, forever.
//PRDriverPatter(proc, 84, 127, 127, 0);
//Pulsed Patter for coil 48: on 5ms, off 10ms, repeat for 45ms.
//PRDriverPulsedPatter(proc, 48, 5, 10, 45); // Coil 48: on 5ms, off 10ms, repeat for 45ms.
/*
PRDriverAuxCommand auxCommands[256];

View File

@@ -247,6 +247,11 @@ PR_EXPORT PRResult PRDriverSchedule(PRHandle handle, uint16_t driverNum, uint32_
* This function is provided for convenience. See PRDriverStatePatter() for a full description.
*/
PR_EXPORT PRResult PRDriverPatter(PRHandle handle, uint16_t driverNum, uint16_t millisecondsOn, uint16_t millisecondsOff, uint16_t originalOnTime);
/**
* Assigns a pitter-patter schedule (repeating on/off) to the given driver on for the given duration.
* This function is provided for convenience. See PRDriverStatePulsedPatter() for a full description.
*/
PR_EXPORT PRResult PRDriverPulsedPatter(PRHandle handle, uint16_t driverNum, uint16_t millisecondsOn, uint16_t millisecondsOff, uint16_t originalOnTime);
/**
* Assigns a pitter-patter schedule (repeating on/off) to the given driver for the given duration.
* This function is provided for convenience. See PRDriverStatePatter() for a full description.

View File

@@ -192,6 +192,13 @@ PR_EXPORT PRResult PRDriverPatter(PRHandle handle, uint16_t driverNum, uint16_t
PRDriverStatePatter(&driver, millisecondsOn, millisecondsOff, originalOnTime);
return handleAsDevice->DriverUpdateState(&driver);
}
PR_EXPORT PRResult PRDriverPulsedPatter(PRHandle handle, uint16_t driverNum, uint16_t millisecondsOn, uint16_t millisecondsOff, uint16_t duration)
{
PRDriverState driver;
handleAsDevice->DriverGetState(driverNum, &driver);
PRDriverStatePulsedPatter(&driver, millisecondsOn, millisecondsOff, duration);
return handleAsDevice->DriverUpdateState(&driver);
}
PR_EXPORT PRResult PRDriverAuxSendCommands(PRHandle handle, PRDriverAuxCommand * commands, uint8_t numCommands, uint8_t startingAddr)
{
return handleAsDevice->DriverAuxSendCommands(commands, numCommands, startingAddr);