summaryrefslogtreecommitdiff
path: root/2.3-1/src/c/hardware/rasberrypi/pwm
diff options
context:
space:
mode:
Diffstat (limited to '2.3-1/src/c/hardware/rasberrypi/pwm')
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetClocks.c27
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetModes.c28
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetRanges.c25
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMWrites.c26
4 files changed, 106 insertions, 0 deletions
diff --git a/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetClocks.c b/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetClocks.c
new file mode 100644
index 00000000..d06b135c
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetClocks.c
@@ -0,0 +1,27 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+/*Function to set clock for pwm channel. Default clock is 19.2 MHz. 'clk_divisor'
+ along with range decides frequency for PWM
+ PWM frequency = 19.2 MHz / clk_divisor/ range
+ Range for clk_divisor = 1-2048
+ */
+
+#include "types.h"
+#include "RPIPeripheralPWM.h"
+
+void u8RPIHardPWMSetClocks(uint16 clk_divisor)
+{
+ pwmSetClock(clk_divisor);
+
+
+}
diff --git a/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetModes.c b/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetModes.c
new file mode 100644
index 00000000..0cca7a70
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetModes.c
@@ -0,0 +1,28 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+/*Function to set mode for PWM channel. Two modes are available
+ 0 --> balanced mode
+ 1 --> mark/space mode
+ */
+
+#include "types.h"
+#include "RPIPeripheralPWM.h"
+
+void u8RPIHardPWMSetModes(uint8 mode)
+{
+ if (mode == 1) /*mark/space mode*/
+ pwmSetMode(PWM_MODE_MS);
+ else
+ pwmSetMode(PWM_MODE_BAL);
+
+}
diff --git a/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetRanges.c b/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetRanges.c
new file mode 100644
index 00000000..b2489f59
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMSetRanges.c
@@ -0,0 +1,25 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+/*Function to assigne pwm duty to specified pin. PWM duty is decided by 'value'
+ and 'range' specified using corresponding function.
+ PWM duty = value/range
+ */
+
+#include "types.h"
+#include "RPIPeripheralPWM.h"
+
+void u8RPIHardPWMSetRanges(uint16 value)
+{
+ pwmSetRange(value);
+
+}
diff --git a/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMWrites.c b/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMWrites.c
new file mode 100644
index 00000000..ae02bf0d
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/pwm/u8RPIHardPWMWrites.c
@@ -0,0 +1,26 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+/*Function to set range for pwm channel. PWM duty is decided by 'range'
+ and 'value' specified using corresponding function.
+ PWM duty = value/range
+ */
+
+#include "types.h"
+#include "RPIPeripheralPWM.h"
+#include "RPIPeripheralDigital.h"
+
+void u8RPIHardPWMWrites(uint8 pin, uint16 value)
+{
+ pwmWrite((int)phy_pin[pin-1], value);
+
+}