summaryrefslogtreecommitdiff
path: root/macros/Hardware/AVR
diff options
context:
space:
mode:
authorBrijeshcr2017-07-06 15:48:47 +0530
committerGitHub2017-07-06 15:48:47 +0530
commitea958d3c401761dcc24865d9639b2fab31038db8 (patch)
tree8cea93113a46d7015d1a10638778f92275a0ca94 /macros/Hardware/AVR
parentcb1d99232e521c34e9f0c271a6c4176cc7b9cbe4 (diff)
downloadScilab2C_fossee_old-ea958d3c401761dcc24865d9639b2fab31038db8.tar.gz
Scilab2C_fossee_old-ea958d3c401761dcc24865d9639b2fab31038db8.tar.bz2
Scilab2C_fossee_old-ea958d3c401761dcc24865d9639b2fab31038db8.zip
Revert "LinearAlgebra Function Added"
Diffstat (limited to 'macros/Hardware/AVR')
-rw-r--r--macros/Hardware/AVR/AVRADCSetup.sci24
-rw-r--r--macros/Hardware/AVR/AVRDigitalIn.sci12
-rw-r--r--macros/Hardware/AVR/AVRDigitalOut.sci10
-rw-r--r--macros/Hardware/AVR/AVRDigitalPortSetup.sci11
-rw-r--r--macros/Hardware/AVR/AVRDigitalSetup.sci13
-rw-r--r--macros/Hardware/AVR/AVRGetTimerValue.sci16
-rw-r--r--macros/Hardware/AVR/AVRPWM0SetDuty.sci17
-rw-r--r--macros/Hardware/AVR/AVRPWM0Setup.sci57
-rw-r--r--macros/Hardware/AVR/AVRPWM1SetDuty.sci20
-rw-r--r--macros/Hardware/AVR/AVRPWM1Setup.sci54
-rw-r--r--macros/Hardware/AVR/AVRPWM2SetDuty.sci11
-rw-r--r--macros/Hardware/AVR/AVRPWM2Setup.sci48
-rw-r--r--macros/Hardware/AVR/AVRReadADC.sci15
-rw-r--r--macros/Hardware/AVR/AVRSleep.sci19
-rw-r--r--macros/Hardware/AVR/AVRTimerSetup.sci45
-rw-r--r--macros/Hardware/AVR/AVRUARTReceive.sci9
-rw-r--r--macros/Hardware/AVR/AVRUARTSetup.sci44
-rw-r--r--macros/Hardware/AVR/AVRUARTTransmit.sci16
-rw-r--r--macros/Hardware/AVR/libbin1004 -> 948 bytes
19 files changed, 241 insertions, 200 deletions
diff --git a/macros/Hardware/AVR/AVRADCSetup.sci b/macros/Hardware/AVR/AVRADCSetup.sci
index 264062b..603873b 100644
--- a/macros/Hardware/AVR/AVRADCSetup.sci
+++ b/macros/Hardware/AVR/AVRADCSetup.sci
@@ -17,26 +17,28 @@ function AVRADCSetup(prescaler,adc_ref)
// Parameters
// prescaler: prescaler to be used for generating ADC clock (0-7)
// adc_ref : reference voltage to be used for ADC conversion
-// 0 -> Voltage on VREF pin
-// 1 -> Voltage on AVCC pin
-// 2 -> Internal 2.56 reference voltage
//
// Description
-// This function initialises ADc of AVR with given parameters. 'prescaler' is
-// needed for deciding ADC clock. ADC clock should be between 50KHz and 200KHz
-// and it given as (MCU clock/2^prescaler). Select appropriate prescaler depending
-// on MCU clock. 'adc_ref' selects one of the available reference voltage sources
-// available
+// This function initialises ADc of AVR with given parameters. 'prescaler' is needed for deciding ADC clock. ADC clock should be between 50KHz and 200KHz and it given as (MCU clock/2^prescaler). Select appropriate prescaler depending on MCU clock. 'adc_ref' selects one of the available reference voltage sources available.
+//
+// The adc_ref can take the following values-
+// <itemizedlist>
+// <listitem><para>0 -> Voltage on VREF pin</para></listitem>
+// <listitem><para>1 -> Voltage on AVCC pin</para></listitem>
+// <listitem><para>2 -> Internal 2.56 reference voltage</para></listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required for providing support for generating C code for AVR.
+//
// Examples
// AVRADCSetup(128,0)
// See also
// AVRReadADC
//
// Authors
-// Siddhesh Wani Ashish Kamble
+// Siddhesh Wani
+// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
if(prescaler>=8)
disp("Error : Invalid input argument ''prescaler'' in AVRADCSetup function.");
diff --git a/macros/Hardware/AVR/AVRDigitalIn.sci b/macros/Hardware/AVR/AVRDigitalIn.sci
index 54eb327..7addd66 100644
--- a/macros/Hardware/AVR/AVRDigitalIn.sci
+++ b/macros/Hardware/AVR/AVRDigitalIn.sci
@@ -18,8 +18,6 @@ function state = AVRDigitalIn(port,pin)
// Parameters
// port : port of microcontroller to be used
// pin : pin of port (mentioned above) to be used
-// Returns
-// state : state of an input pin (HIGH\LOW)
//
// Description
// Each AVR microcontroller has pins which can be configured as digital
@@ -27,18 +25,18 @@ function state = AVRDigitalIn(port,pin)
// User has to select one of these port and which pin of that port as
// digital input.
//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+//
// Examples
// pinA0 = AVRDigitalIn(1,0) //To read state on pin 0 of port A
-//
// See also
// AVRDigitalOut AVRDigitalSetup
//
-//
// Authors
-// Siddhesh Wani Ashish Kamble
+// Siddhesh Wani
+// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
if((port==0)|(port>=5)) then
disp("Error : Inavalid input argument ''port'' in AVRDigitalIn function.");
diff --git a/macros/Hardware/AVR/AVRDigitalOut.sci b/macros/Hardware/AVR/AVRDigitalOut.sci
index a86a5aa..0efc927 100644
--- a/macros/Hardware/AVR/AVRDigitalOut.sci
+++ b/macros/Hardware/AVR/AVRDigitalOut.sci
@@ -26,18 +26,18 @@ function AVRDigitalOut(port,pin,state)
// digital output. Also, desired output state must be specified as
// 'HIGH' or 'LOW'.
//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+//
// Examples
// AVRDigitalOut('A',0,HIGH)
-//
// See also
// AVRDigitalIn
//
-//
// Authors
-// Siddhesh Wani Ashish Kamble
+// Siddhesh Wani
+// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
if((port==0)|(port>=8)) then
disp("Error : Inavalid input argument ''port'' in AVRDigitalOut function.");
diff --git a/macros/Hardware/AVR/AVRDigitalPortSetup.sci b/macros/Hardware/AVR/AVRDigitalPortSetup.sci
index 5f0b967..65e8494 100644
--- a/macros/Hardware/AVR/AVRDigitalPortSetup.sci
+++ b/macros/Hardware/AVR/AVRDigitalPortSetup.sci
@@ -15,7 +15,7 @@ function AVRDigitalPortSetup(port,direction)
// AVRDigitalPortSetup(port,direction)
//
// Parameters
-// port : port of microcontroller to be used(1 for PORTA, 2 for PORTB,...)
+// port : port of microcontroller to be used(1 for PORTA, 2 for PORTB,...)
// direction : direction to be set for pin (0 for INPUT, 1 for OUTPUT)
//
// Description
@@ -25,18 +25,19 @@ function AVRDigitalPortSetup(port,direction)
// used as digital output/input. Also, desired direction must be specified as
// 'INPUT' or 'OUTPUT'.
//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+//
// Examples
// AVRDigitalPortSetup(1,0); //This function will make PortA as input port
//
// See also
// AVRDigitalIn AVRDigitalOut
//
-//
// Authors
-// Siddhesh Wani Ashish Kamble
+// Siddhesh Wani
+// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
if((port==0)|(port>=5)) then
disp("Error : Invalid input argument ''port'' in AVRDigitalPortSetup function.");
diff --git a/macros/Hardware/AVR/AVRDigitalSetup.sci b/macros/Hardware/AVR/AVRDigitalSetup.sci
index e707d4f..ed6cf30 100644
--- a/macros/Hardware/AVR/AVRDigitalSetup.sci
+++ b/macros/Hardware/AVR/AVRDigitalSetup.sci
@@ -15,8 +15,8 @@ function AVRDigitalSetup(port,pin,direction)
// AVRDigitalSetup(port,pin,direction)
//
// Parameters
-// port : port of microcontroller to be used
-// pin : pin of port (mentioned above) to be used
+// port : port of microcontroller to be used
+// pin : pin of port (mentioned above) to be used
// direction : direction to be set for pin (INPUT\OUTPUT)
//
// Description
@@ -26,18 +26,19 @@ function AVRDigitalSetup(port,pin,direction)
// used as digital output/input. Also, desired direction must be specified as
// 'INPUT' or 'OUTPUT'.
//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+//
// Examples
// AVRDigitalSetup('A',0,OUTPUT)
//
// See also
// AVRDigitalIn AVRDigitalOut
//
-//
// Authors
-// Siddhesh Wani Ashish Kamble
+// Siddhesh Wani
+// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
if((port==0)|(port>=5)) then
disp("Error : Invalid input argument ''port'' in AVRDigitalSetup function.");
diff --git a/macros/Hardware/AVR/AVRGetTimerValue.sci b/macros/Hardware/AVR/AVRGetTimerValue.sci
index afb47ac..05919b3 100644
--- a/macros/Hardware/AVR/AVRGetTimerValue.sci
+++ b/macros/Hardware/AVR/AVRGetTimerValue.sci
@@ -18,20 +18,26 @@ function count = AVRGetTimerValue(timer)
// 2 for timer2
//
// Description
-// This function returns the count value of a desired timer.By knowing the count value
-// certain interrupt action can be taken.
+// This function returns the count value of a desired timer.By knowing the count value certain interrupt action can be taken.
+//
+// Timer can take the following values
+// <itemizedlist>
+// <listitem><para>0 -> for timer0</para></listitem>
+// <listitem><para>1 -> for timer1</para></listitem>
+// <listitem><para>2 -> for timer2</para></listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
//
// Examples
// AVRGetTimerValue(0); //returns present count of the TCNT0 counter
-//
// See also
// AVRTimerSetup
//
// Authors
// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
if(timer>=3) then
disp("Error : Invalid input argument ''timer'' in AVRGetTimerValue function.");
diff --git a/macros/Hardware/AVR/AVRPWM0SetDuty.sci b/macros/Hardware/AVR/AVRPWM0SetDuty.sci
index 604d2f4..c3815d1 100644
--- a/macros/Hardware/AVR/AVRPWM0SetDuty.sci
+++ b/macros/Hardware/AVR/AVRPWM0SetDuty.sci
@@ -9,15 +9,18 @@
// Email: toolbox@scilab.in
function AVRPWM0SetDuty(duty)
-//Function to Set Duty cycle of PWM Output generated by Timer0 at OC0 pin.
+//Function to Set Duty cycle of PWM Output generated by Timer0 at OC0 pin.
+//
//Parameters
-// duty : It holds an integer value from 0 to 100 which sets the percentage
-// of time for which signal is active.
+// duty : It holds an integer value from 0 to 100 which sets the percentage of time for which signal is active.
+//
//Description
// Each Micro controller has PWM output pins which can generate varying voltage
-// from 0V-5V.In this function by varying the duty cycle, varying voltage can be
-// produced.
-//Example
+// from 0V-5V.In this function by varying the duty cycle, varying voltage can be produced.
+//
+// This is curretly dummy function. It provides no functionality but is required for providing support for generating C code for AVR.
+//
+//Examples
// AVRPWM0SetDuty(50); //Produces 2.5V at OC0 pin
// AVRPWM0SetDuty(0); //Produces 0V at OC0 pin
//See also
@@ -26,8 +29,6 @@ function AVRPWM0SetDuty(duty)
//Authors
// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
if(duty>100) then
disp("Error : Invalid input argument ''duty'' in AVRPWM0SetDuty function.");
diff --git a/macros/Hardware/AVR/AVRPWM0Setup.sci b/macros/Hardware/AVR/AVRPWM0Setup.sci
index 39861c8..c391f71 100644
--- a/macros/Hardware/AVR/AVRPWM0Setup.sci
+++ b/macros/Hardware/AVR/AVRPWM0Setup.sci
@@ -10,43 +10,48 @@
function AVRPWM0Setup(waveform_mode,output_mode)
//Function to Setup OC0 pin for required PWM mode
+//
+//Parameters
+// waveform_mode: integer, from 0 to 2
+// output_mode: integer, from 0 to 1 (or 2) depending on the waveform_mode
+//
//Description
// Every Micro controller has PWM pins which can generate varying voltages
// from 0V-5V.This function helps to use OC0 pin to produce required
// output waveform by setting the waveform mode and otput mode.
//
-//Parameters
-// waveform_mode:
-// 0 for Phase correct PWM Mode
-// 1 for Fast PWM Mode
-// 2 for CTC Mode
-// output_mode:
-// For Phase Correct PWM Mode:
-// 0 for Clear OC0 on compare match when up-counting. Set OC0 on compare
-// match when down-counting.
-// 1 for Set OC0 on compare match when up-counting. Clear OC0 on compare
-// match when down-counting.
-//
-// For Fast PWM Mode:
-// 0 for non-inverted output i.e Clear OC0 on compare match, set OC0 at BOTTOM.
-// 1 for inverted output i.e Set OC0 on compare match, clear OC0 at BOTTOM.
-//
-// For CTC Mode:
-// 0 to Clear OC0 on compare match
-// 1 to Set OC0 on compare match
-// 2 to toggle OC0 on compare match
-//
-//Example
-// AVRPWM0Setup(2,0); //This function will select CTC waveform mode and will clear OC0 on
-// compare match
+// waveform_mode can take values-
+// <itemizedlist>
+// <listitem><para>0 -> for Phase correct PWM Mode</para></listitem>
+// <listitem><para>1 -> for Fast PWM Mode</para></listitem>
+// <listitem><para>2 -> for CTC Mode</para></listitem>
+// </itemizedlist>
+//
+// output_mode can take values-
+// <itemizedlist>
+// For Phase correct PWM Mode:
+// <listitem><para>0 for Clear OC0 on compare match when up-counting. Set OC0 on compare match when down-counting.</para></listitem>
+// <listitem><para>1 for Set OC0 on compare match when up-counting. Clear OC0 on compare match when down-counting.</para></listitem>
+// For Fast PWM Mode:
+// <listitem><para>0 for non-inverted output i.e Clear OC0 on compare match, set OC0 at BOTTOM.</para></listitem>
+// <listitem><para>1 for inverted output i.e Set OC0 on compare match, clear OC0 at BOTTOM.</para></listitem>
+// For CTC Mode:
+// <listitem><para>0 to Clear OC0 on compare match</para></listitem>
+// <listitem><para>1 to Set OC0 on compare match</para></listitem>
+// <listitem><para>2 to toggle OC0 on compare match</para></listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+//
+//Examples
+// AVRPWM0Setup(2,0); //This function will select CTC waveform mode and will clear OC0 on compare match
//See also
// AVRPWM0SetDuty
//
//Authors
// Ashish Kamble
//
-//This is curretly dummy function. It provides no functionality but is required
-//for providing support for generating C code for AVR.
if(waveform_mode>=3) then
disp("Error : Invalid input argument ''waveform_mode'' in AVRPWM0Setup function.");
diff --git a/macros/Hardware/AVR/AVRPWM1SetDuty.sci b/macros/Hardware/AVR/AVRPWM1SetDuty.sci
index 60dc0a9..fd6e7ba 100644
--- a/macros/Hardware/AVR/AVRPWM1SetDuty.sci
+++ b/macros/Hardware/AVR/AVRPWM1SetDuty.sci
@@ -11,34 +11,28 @@
function AVRPWM1SetDuty(output_pin,duty,Top_Value)
//Function to Set Duty cycle of PWM Output generated by Timer1 at OC1A or OC1B pin.
//Parameters
-// ouput_pin:
-// 0 for selecting OC1A as output pin
-// 1 for selecting OC1B as output pin
+// ouput_pin: integer, 0 (for OC1A) or 1 (for OC1B)
//
-// duty: It holds an integer value from 0 to 100 which sets the percentage
-// of time for which signal is active.
+// duty: It holds an integer value from 0 to 100 which sets the percentage of time for which signal is active.
//
-// Top_Value: It holds an integer value from 0 to 65535.This value sets the Top
-// value of the counter TCNT1 i.e ICR.(for more info refer datasheet)
+// Top_Value: It holds an integer value from 0 to 65535.This value sets the Top value of the counter TCNT1 i.e ICR.(for more info refer datasheet)
//
//Description
// Each Micro controller has PWM output pins which can generate varying voltage
// from 0V-5V.This function Sets the duty cycle of output PWM signal.Also this function
// decides the Top Vale of TCNT1 and the output pin to output PWM signal.
//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+//
//Example
-// AVRPWM1SetDuty(0,50,40000); //This function will produce PWM signal of 50% duty
-// cycle on OC1A pin and TCNT1 will reset at 40000 instead
-// at 65535.
-//
+// AVRPWM1SetDuty(0,50,40000); //This function will produce PWM signal of 50% duty cycle on OC1A pin and TCNT1 will reset at 40000 instead at 65535.
//See also
// AVRPWM1Setup
//
//Authors
// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
if(output_pin>=2) then
disp("Error : Invalid input argument ''output_pin'' in AVRPWM1SetDuty function.");
diff --git a/macros/Hardware/AVR/AVRPWM1Setup.sci b/macros/Hardware/AVR/AVRPWM1Setup.sci
index 51aa25b..fbd96ce 100644
--- a/macros/Hardware/AVR/AVRPWM1Setup.sci
+++ b/macros/Hardware/AVR/AVRPWM1Setup.sci
@@ -10,38 +10,40 @@
function AVRPWM1Setup(waveform_mode,output_mode,output_pin)
//Function to Setup OC1A or OC1B pin for required PWM mode
+//
+//Parameters
+// waveform_mode: integer, from 0 to 2
+// output_mode: integer, from 0 to 1 (or 2) depending on the waveform_mode
+// output_pin: 0 (for OC1A) or 1 for (OC1B)
+//
//Description
// Every Micro controller has PWM pins which can generate varying voltages
// from 0V-5V.This function helps to use OC1A or OC1B pin to produces required
// output waveform by setting the waveform mode and otput mode.
//
-//Parameters
-// waveform_mode:
-// 0 for Phase correct PWM Mode
-// 1 for Fast PWM Mode
-// 2 for CTC Mode
+// waveform_mode can take values-
+// <itemizedlist>
+// <listitem><para>0 -> for Phase correct PWM Mode</para></listitem>
+// <listitem><para>1 -> for Fast PWM Mode</para></listitem>
+// <listitem><para>2 -> for CTC Mode</para></listitem>
+// </itemizedlist>
//
-// output_mode:
-// For Phase Correct PWM Mode:
-// 0 for Clear OC1A or OC1B on compare match when up-counting. Set OC1A or OC1B
-// on compare match when down-counting.
-// 1 for Set OC1A or OC1B on compare match when up-counting. Clear OC1A or OC1B
-// on compare match when down-counting.
-//
-// For Fast PWM Mode:
-// 0 for non-inverted output i.e Clear OC1A or OC1B on compare match, set OC1A
-// OC1B at BOTTOM.
-// 1 for inverted output i.e Set OC1A or OC1B on compare match, clear OC1A or OC1B
-// at BOTTOM.
-//
-// For CTC Mode:
-// 0 to Clear OC1A or OC1B on compare match
-// 1 to Set OC1A or OC1B on compare match
-// 2 to toggle OC1A or OC1B on compare match
+// output_mode can take values-
+// <itemizedlist>
+// For Phase correct PWM Mode:
+// <listitem><para>0 for Clear OC1A or OC1B on compare match when up-counting. Set OC1A or OC1B on compare match when down-counting.</para></listitem>
+// <listitem><para>1 for Set OC1A or OC1B on compare match when up-counting. Clear OC1A or OC1B on compare match when down-counting.</para></listitem>
+// For Fast PWM Mode:
+// <listitem><para>0 for non-inverted output i.e Clear OC1A or OC1B on compare match, set OC1A or OC1B at BOTTOM.</para></listitem>
+// <listitem><para>1 for inverted output i.e Set OC1A or OC1B on compare match, clear OC1A or OC1B at BOTTOM.</para></listitem>
+// For CTC Mode:
+// <listitem><para>0 to Clear OC1A or OC1B on compare match</para></listitem>
+// <listitem><para>1 to Set OC1A or OC1B on compare match</para></listitem>
+// <listitem><para>2 to toggle OC1A or OC1B on compare match</para></listitem>
+// </itemizedlist>
//
-// output_pin:
-// 0 for selecting OC1A as output pin
-// 1 for selecting OC1B as output pin
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
//
//Example
// AVRPWM1Setup(2,0,0); //This function will select CTC mode and will clear OC1A or OC1B
@@ -53,8 +55,6 @@ function AVRPWM1Setup(waveform_mode,output_mode,output_pin)
//Authors
// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
if(waveform_mode>=3) then
disp("Error : Invalid input argument ''waveform_mode'' in AVRPWM1Setup function.");
diff --git a/macros/Hardware/AVR/AVRPWM2SetDuty.sci b/macros/Hardware/AVR/AVRPWM2SetDuty.sci
index 929c1a0..81d1761 100644
--- a/macros/Hardware/AVR/AVRPWM2SetDuty.sci
+++ b/macros/Hardware/AVR/AVRPWM2SetDuty.sci
@@ -10,14 +10,17 @@
function AVRPWM2SetDuty(duty)
//Function to Set Duty cycle of PWM Output generated by Timer2 at OC2 pin.
+//
+//Parameters
+// duty : It holds an integer value from 0 to 100 which sets the percentage of time for which signal is active.
+//
//Description
// Each Micro controller has PWM output pins which can generate varying voltage
// from 0V-5V.In this function by varying the duty cycle, varying voltage can be
// produced.
//
-//Parameters
-// duty : It holds an integer value from 0 to 100 which sets the percentage
-// of time for which signal is active.
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
//
//Example
// AVRPWM2SetDuty(50); //Produces 2.5V at OC2 pin
@@ -29,8 +32,6 @@ function AVRPWM2SetDuty(duty)
//Authors
// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
if(duty>100) then
disp("Error : Invalid input argument ''duty'' in AVRPWM2SetDuty function.");
diff --git a/macros/Hardware/AVR/AVRPWM2Setup.sci b/macros/Hardware/AVR/AVRPWM2Setup.sci
index d4bc74a..11d9b01 100644
--- a/macros/Hardware/AVR/AVRPWM2Setup.sci
+++ b/macros/Hardware/AVR/AVRPWM2Setup.sci
@@ -10,32 +10,40 @@
function AVRPWM2Setup(waveform_mode,output_mode)
//Function to Setup OC2 pin for required PWM mode
+//
+//Parameters
+// waveform_mode: integer, from 0 to 2
+// output_mode: integer, from 0 to 1 (or 2) depending on the waveform_mode
+//
//Description
// Every Micro controller has PWM pins which can generate varying voltages
// from 0V-5V.This function helps to use OC2 pin to produces required
// output waveform by setting the waveform mode and otput mode.
//
-//Parameters
-// waveform_mode:
-// 0 for Phase correct PWM Mode
-// 1 for Fast PWM Mode
-// 2 for CTC Mode
-//output_mode:
-// For Phase Correct PWM Mode:
-// 0 for Clear OC2 on compare match when up-counting. Set OC2 on compare
-// match when down-counting.
-// 1 for Set OC2 on compare match when up-counting. Clear OC2 on compare
-// match when down-counting.
-//
+// waveform_mode can take values-
+// <itemizedlist>
+// <listitem><para>0 -> for Phase correct PWM Mode</para></listitem>
+// <listitem><para>1 -> for Fast PWM Mode</para></listitem>
+// <listitem><para>2 -> for CTC Mode</para></listitem>
+// </itemizedlist>
+//
+// output_mode can take values-
+// <itemizedlist>
+// For Phase correct PWM Mode:
+// <listitem><para>0 for Clear OC2 on compare match when up-counting. Set OC2 on compare match when down-counting.</para></listitem>
+// <listitem><para>1 for Set OC2 on compare match when up-counting. Clear OC2 on compare match when down-counting.</para></listitem>
// For Fast PWM Mode:
-// 0 for non-inverted output i.e Clear OC2 on compare match, set OC2 at BOTTOM.
-// 1 for inverted output i.e Set OC2 on compare match, clear OC2 at BOTTOM.
-//
+// <listitem><para>0 for non-inverted output i.e Clear OC2 on compare match, set OC2 at BOTTOM.</para></listitem>
+// <listitem><para>1 for inverted output i.e Set OC2 on compare match, clear OC2 at BOTTOM.</para></listitem>
// For CTC Mode:
-// 0 to Clear OC2 on compare match
-// 1 to Set OC2 on compare match
-// 2 to toggle OC2 on compare match
-//
+// <listitem><para>0 to Clear OC2 on compare match</para></listitem>
+// <listitem><para>1 to Set OC2 on compare match</para></listitem>
+// <listitem><para>2 to toggle OC2 on compare match</para></listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+//
//Example
// AVRPWM2Setup(2,0); //This function will select CTC waveform mode and will clear OC2 on
// compare match
@@ -45,8 +53,6 @@ function AVRPWM2Setup(waveform_mode,output_mode)
//Authors
// Ashish Kamble
//
-//This is curretly dummy function. It provides no functionality but is required
-//for providing support for generating C code for AVR.
if(waveform_mode>=3) then
disp("Error : Invalid input argument ''waveform_mode'' in AVRPWM2Setup function.");
diff --git a/macros/Hardware/AVR/AVRReadADC.sci b/macros/Hardware/AVR/AVRReadADC.sci
index 7fd3e67..71cafa7 100644
--- a/macros/Hardware/AVR/AVRReadADC.sci
+++ b/macros/Hardware/AVR/AVRReadADC.sci
@@ -15,11 +15,7 @@ function adc_result = AVRReadADC(channel)
// u8AVRReadADCs(channel)
//
// Parameters
-// channel : Select which channel is to be read. Values from 0-7 select one
-// of the pins ADC0-ADC7. For other possible channel values refer
-// datasheet
-// Returns->
-// result : Digital value for the voltage present on channel selected
+// channel : Select which channel is to be read. Values from 0-7 select one of the pins ADC0-ADC7. For other possible channel values refer datasheet
//
// Description
// This function returns digital value for present on adc pins. 'channel'
@@ -28,14 +24,15 @@ function adc_result = AVRReadADC(channel)
// voltages between some pins. For channel values for those options, please
// refer datasheet.
//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+//
// Examples
// adc_result = u8AVRReadADC(0) //Read ADC0
-//
// Authors
-// Siddhesh Wani Ashish Kamble
+// Siddhesh Wani
+// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
if(channel>=8) then
disp("Error : Inavlid input argument ''channel'' in AVRReadADC function.");
diff --git a/macros/Hardware/AVR/AVRSleep.sci b/macros/Hardware/AVR/AVRSleep.sci
index a1b6add..eec6e5a 100644
--- a/macros/Hardware/AVR/AVRSleep.sci
+++ b/macros/Hardware/AVR/AVRSleep.sci
@@ -1,4 +1,21 @@
function AVRSleep(delay)
-
+// Function to pause the execution for the given time.
+//
+// Parameter
+// delay : The time, in milliseconds, for which the execution is to be paused
+//
+// Description
+// This function causes the execution to stop for the given amount of time.
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+//
+//Examples
+// AVRSleep(5000);
+//See also
+//
+// Authors
+// Jorawar Singh
+//
endfunction
diff --git a/macros/Hardware/AVR/AVRTimerSetup.sci b/macros/Hardware/AVR/AVRTimerSetup.sci
index 7c5dd1d..55fd55f 100644
--- a/macros/Hardware/AVR/AVRTimerSetup.sci
+++ b/macros/Hardware/AVR/AVRTimerSetup.sci
@@ -10,37 +10,44 @@
function AVRTimerSetup(timer,prescaler,clock_source)
//Function to setup Timers in ATmega16
+//
+//Parameters:
+// timer : integer, from 0 to 2
+// prescaler : integer.
+// clock_source : integer, 0 (for internal) or 1 (for external)
+//
//Descrpition:
// This function tells the micro controller which clock source you will be using.
// The timer value and prescaler value passed in this function setup the timer as per
// your requirement.
//
-//Parameters:
-// timer : It is an integer value.
-// 0 to setup timer0
-// 1 to setup timer1
-// 2 to setup timer2
-// prescaler : It is an integer value.
-// 1 for no prescaling i.e clock will run at max 16Hz frequency
-// 8 for prescaling clock by 8 i.e new clock frequency will be (clk/8)
-// 64 for prescaling clock by 64 i.e new clock frequency will be (clk/64)
-// 256 for prescaling clock by 256 i.e new clock frequency will be (clk/256)
-// 1024 for prescaling clock by 1024 i.e new clock frequency will be (clk/1024)
-// clock_source : It is an integer value.
-// 0 if you are using internal clock source
-// 1 if you are using external clock source
+// timer can take values-
+// <itemizedlist>
+// <listitem><para>0 -> for timer0</para></listitem>
+// <listitem><para>1 -> for timer1</para></listitem>
+// <listitem><para>2 -> for timer2</para></listitem>
+// </itemizedlist>
+//
+// prescaler can take values-
+// <itemizedlist>
+// <listitem><para>1 for no prescaling i.e clock will run at max 16Hz frequency</para></listitem>
+// <listitem><para>8 for prescaling clock by 8 i.e new clock frequency will be (clk/8)</para></listitem>
+// <listitem><para>64 for prescaling clock by 64 i.e new clock frequency will be (clk/64)</para></listitem>
+// <listitem><para>256 for prescaling clock by 256 i.e new clock frequency will be (clk/256)</para></listitem>
+// <listitem><para>1024 for prescaling clock by 1024 i.e new clock frequency will be (clk/1024)</para></listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+//
//Example
-// AVRTimerSetup(0,64,0); //This function will select timer0 with timer running as per
-// internal clock source and prescaled by 64.
-//
+// AVRTimerSetup(0,64,0); //This function will select timer0 with timer running as per internal clock source and prescaled by 64.
//See also
// AVRGetTimerValues
//
//Authors
// Ashish Kamble
//
-//This is curretly dummy function. It provides no functionality but is required
-//for providing support for generating C code for AVR.
if(timer>=3) then
disp("Error : Invalid input argument ''timer'' in AVRTimerSetup function.");
diff --git a/macros/Hardware/AVR/AVRUARTReceive.sci b/macros/Hardware/AVR/AVRUARTReceive.sci
index 790894f..7fdf6f0 100644
--- a/macros/Hardware/AVR/AVRUARTReceive.sci
+++ b/macros/Hardware/AVR/AVRUARTReceive.sci
@@ -10,13 +10,16 @@
function received = AVRUARTReceive()
// Function to Receive Char value send to ATmega16 using UART or USART.
+//
// Description
// This function Receives Char as 8 bit value.This value is stored in UDR at receiving
// end.
//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+//
//Examples
-// state = AVRUARTReceive(); //This function will Receive char and return the entire value
-//
+// state = AVRUARTReceive(); //This function will Receive char and return the entire value
//See also
// AVRUARTSetup
// AVRUARTTransmit
@@ -24,7 +27,5 @@ function received = AVRUARTReceive()
// Authors
// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
received = 0; // received has been initialised to avoid runtime error.
endfunction
diff --git a/macros/Hardware/AVR/AVRUARTSetup.sci b/macros/Hardware/AVR/AVRUARTSetup.sci
index 32e5db8..6ecf2a0 100644
--- a/macros/Hardware/AVR/AVRUARTSetup.sci
+++ b/macros/Hardware/AVR/AVRUARTSetup.sci
@@ -10,29 +10,34 @@
function AVRUARTSetup(mode, baudrate, stopbits, parity)
// Function to Setup Serial Communication i.e UART or USART in ATmega16.
+//
+// Parameters
+// mode : integer, from 0 to 2
+// baudrate : Enter one of the following available baudrates (2400 , 4800 , 9600 , 14400 , 19200 , 28800 , 38400 , 57600 , 768000 , 115200 , 230400 , 250000 , 1000000)
+// stopbits : integer, (0 for one stopbit) or (1 for two stopbits)
+// parity : integer, from 0 to 2
+//
// Description
// This function Setup the UART or USART for Serial Communicaion between ATmega16
// and different micro controllers or between ATmega16 and Computer.
-//
-// Parameters
-// mode :
-// 0 for Asynchronous Normal mode
-// 1 for Asynchronous Double Speed mode
-// 2 for Synchronous mode
-//
-// baudrate : Enter one of the following available baudrates
-// 2400 , 4800 , 9600 , 14400 , 19200 , 28800 , 38400 , 57600 ,
-// 768000 , 115200 , 230400 , 250000 , 1000000 .
//
-// stopbits :
-// 0 for one stopbit
-// 1 for two stopbits
+// mode can take values:
+// <itemizedlist>
+// <listitem><para>0 for Asynchronous Normal mode</para></listitem>
+// <listitem><para>1 for Asynchronous Double Speed mode</para></listitem>
+// <listitem><para>2 for Synchronous mode</para></listitem>
+// </itemizedlist>
+//
+// parity can take values:
+// <itemizedlist>
+// <listitem><para>0 for parity disabled</para></listitem>
+// <listitem><para>1 for even parity</para></listitem>
+// <listitem><para>2 for odd parity</para></listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
//
-// parity :
-// 0 for parity disabled
-// 1 for even parity
-// 2 for odd parity
-//
//Examples
// AVRUARTSetup(0,9600,0,0); //This function will enable UART Communication for ATmega16
// with 9600 as baudrate,one stop bit and parity disabled
@@ -43,8 +48,7 @@ function AVRUARTSetup(mode, baudrate, stopbits, parity)
// Authors
// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
+
if(mode>=3) then
disp("Error : Invalid input argument ''mode'' in AVRUARTSetup function.");
end
diff --git a/macros/Hardware/AVR/AVRUARTTransmit.sci b/macros/Hardware/AVR/AVRUARTTransmit.sci
index eb35849..695c708 100644
--- a/macros/Hardware/AVR/AVRUARTTransmit.sci
+++ b/macros/Hardware/AVR/AVRUARTTransmit.sci
@@ -10,17 +10,19 @@
function AVRUARTTransmit(data)
// Function to Transmit data using UART or USART.
+//
+// Parameter
+// data : The data to be transmitted can be a Char,String,Unsigned Int,Signed Int.
+//
// Description
// This function Tranmits data over UART or USART.The data to be transmitted can
// be a Char , String , Unsigned Int, Signed Int.
-//
-// Parameter
-// data :
-// The data to be transmitted can be a Char,String,Unsigned Int,Signed Int.
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
//
//Examples
-// AVRUARTTransmit("This is example"); //This function will transmit the entered string.
-//
+// AVRUARTTransmit("This is example"); //This function will transmit the entered string.
//See also
// AVRUARTSetup
// AVRUARTReceive
@@ -28,6 +30,4 @@ function AVRUARTTransmit(data)
// Authors
// Ashish Kamble
//
-// This is curretly dummy function. It provides no functionality but is required
-// for providing support for generating C code for AVR.
endfunction
diff --git a/macros/Hardware/AVR/lib b/macros/Hardware/AVR/lib
index 6206fdf..f1c7384 100644
--- a/macros/Hardware/AVR/lib
+++ b/macros/Hardware/AVR/lib
Binary files differ