aboutsummaryrefslogtreecommitdiffstats
path: root/Lab4.X/lab4_servo.c
diff options
context:
space:
mode:
authorRossTheRoss <msattr@gmail.com>2020-04-08 11:17:47 -0500
committerRossTheRoss <msattr@gmail.com>2020-04-08 11:17:47 -0500
commitf7dddf06297f415413760f3bedf00f7297e60cf7 (patch)
tree2a3008d3efcf7b140593b120ca925e1757e1d83c /Lab4.X/lab4_servo.c
parente (diff)
downloadee2361-f7dddf06297f415413760f3bedf00f7297e60cf7.tar
ee2361-f7dddf06297f415413760f3bedf00f7297e60cf7.tar.gz
ee2361-f7dddf06297f415413760f3bedf00f7297e60cf7.tar.bz2
ee2361-f7dddf06297f415413760f3bedf00f7297e60cf7.tar.lz
ee2361-f7dddf06297f415413760f3bedf00f7297e60cf7.tar.xz
ee2361-f7dddf06297f415413760f3bedf00f7297e60cf7.tar.zst
ee2361-f7dddf06297f415413760f3bedf00f7297e60cf7.zip
Forget to add a bunch of things
oops
Diffstat (limited to 'Lab4.X/lab4_servo.c')
-rw-r--r--Lab4.X/lab4_servo.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/Lab4.X/lab4_servo.c b/Lab4.X/lab4_servo.c
new file mode 100644
index 0000000..9ff5b42
--- /dev/null
+++ b/Lab4.X/lab4_servo.c
@@ -0,0 +1,23 @@
+#include "xc.h"
+#include "lab4_servo.h"
+void setServo(int Val)
+{
+ OC1RS=Val;
+}
+void initServo() {
+ TRISB &= 1111111111011111;
+ //TIMER 3
+ T3CON = 0x0010; //Stop Timer, Tcy clk source, PRE 1:8
+ T3CONbits.TCKPS = 0b01;
+ T3CONbits.TCS=0;
+ TMR3 = 0; // Initialize to zero
+ PR3 = 39999; // Set period in order to make 20ms cycle
+ T3CONbits.TON = 1;
+
+ //OC1
+ OC1CON = 0;
+ OC1R = 1234; // servo start position. We won?t touch OC1R again
+ OC1RS = 1234; // We will only change this once PWM is turned on
+ OC1CONbits.OCM = 0b110;
+ OC1CONbits.OCTSEL = 1;
+}