From 9e506f48291533cba7b4c555b0d2e98f234bfbe3 Mon Sep 17 00:00:00 2001
From: siddhu8990
Date: Wed, 19 Apr 2017 14:28:34 +0530
Subject: Merged Ashish's work

---
 src/c/hardware/avr/timer/u16AVRGetTimerValues.c | 51 +++++++++++++++++++++++++
 1 file changed, 51 insertions(+)
 create mode 100644 src/c/hardware/avr/timer/u16AVRGetTimerValues.c

(limited to 'src/c/hardware/avr/timer/u16AVRGetTimerValues.c')

diff --git a/src/c/hardware/avr/timer/u16AVRGetTimerValues.c b/src/c/hardware/avr/timer/u16AVRGetTimerValues.c
new file mode 100644
index 00000000..8ef16e8d
--- /dev/null
+++ b/src/c/hardware/avr/timer/u16AVRGetTimerValues.c
@@ -0,0 +1,51 @@
+/* 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: Ashish Kamble
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/ 
+//Function selects the clock source and timer with prescaler.
+
+
+#include "AVRPeripheralTimer.h"
+#include <avr/interrupt.h>
+
+
+uint16 u8AVRGetTimerValues(uint16 timer)
+{   
+ uint16_t x;
+ switch(timer)
+ {
+  case 0:
+	{
+         x = TCNT0; 
+         break;
+        }	
+
+ case 1:
+       {
+        unsigned char sreg;
+ 	unsigned int val;
+        sreg = SREG;
+ 	cli();
+        val = TCNT1;
+ 	SREG = sreg;	
+ 	sei();
+        x = val;
+        break;	
+       }
+		
+ case 2:
+       {
+        x = TCNT2;
+  	break;
+       }
+ }	    
+return x;
+}
+
-- 
cgit