summaryrefslogtreecommitdiff
path: root/2.3-1/help/en_US/AVRPWM1Setup.xml
blob: 149841309f0648387b0a4dd108103f71368c3f37 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?xml version="1.0" encoding="UTF-8"?>

<!--
 *
 * This help file was generated from AVRPWM1Setup.sci using help_from_sci().
 *
 -->

<refentry version="5.0-subset Scilab" xml:id="AVRPWM1Setup" xml:lang="en"
          xmlns="http://docbook.org/ns/docbook"
          xmlns:xlink="http://www.w3.org/1999/xlink"
          xmlns:svg="http://www.w3.org/2000/svg"
          xmlns:ns3="http://www.w3.org/1999/xhtml"
          xmlns:mml="http://www.w3.org/1998/Math/MathML"
          xmlns:scilab="http://www.scilab.org"
          xmlns:db="http://docbook.org/ns/docbook">

  <refnamediv>
    <refname>AVRPWM1Setup</refname>
    <refpurpose>Function to Setup OC1A or OC1B pin for required PWM mode</refpurpose>
  </refnamediv>


<refsection>
   <title>Parameters</title>
   <variablelist>
   <varlistentry><term>waveform_mode:</term>
      <listitem><para> integer, from 0 to 2</para></listitem></varlistentry>
   <varlistentry><term>output_mode:</term>
      <listitem><para> integer, from 0 to 1 (or 2) depending on the waveform_mode</para></listitem></varlistentry>
   <varlistentry><term>output_pin:</term>
      <listitem><para> 0 (for OC1A) or 1 for (OC1B)</para></listitem></varlistentry>
   </variablelist>
</refsection>

<refsection>
   <title>Description</title>
   <para>
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.
   </para>
   <para>
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>
   </para>
   <para>
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>
   </para>
   <para>
This is curretly dummy function. It provides no functionality but is required
for providing support for generating C code for AVR.
   </para>
   <para>
Example
AVRPWM1Setup(2,0,0);  //This function will select CTC mode and will clear OC1A or OC1B
on compare match.Also as defined the output will be produced at
0C1A pin.
</para>
</refsection>

<refsection>
   <title>See also</title>
   <simplelist type="inline">
   <member><link linkend="AVRPWM1SetDuty">AVRPWM1SetDuty</link></member>
   </simplelist>
</refsection>

<refsection>
   <title>Authors</title>
   <simplelist type="vert">
   <member>Ashish Kamble</member>
   </simplelist>
</refsection>
</refentry>