⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pmsm_8h.html

📁 ATtiny261 461 861 这份资料介绍了执行Attiny261 461 861微控制器系列正弦波驱动三相无刷直流电动机霍尔传感器。
💻 HTML
📖 第 1 页 / 共 5 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>AVR449: PMSM.h File Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.4.4 --><div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div><h1>PMSM.h File Reference</h1><hr><a name="_details"></a><h2>Detailed Description</h2>Motor control header file. <p>This file contains all defines, typedefs and prototypes related to the motor control.<p><dl compact><dt><b>Application note:</b></dt><dd>AVR447: Sinusoidal driving of three-phase permanent motor using ATtiny261/461/861.</dd></dl><dl compact><dt><b>Documentation</b></dt><dd>For comprehensive code documentation, supported compilers, compiler settings and supported devices see readme.html</dd></dl><dl compact><dt><b>Author:</b></dt><dd>Atmel Corporation: <a href="http://www.atmel.com">http://www.atmel.com</a> <br> Support email: <a href="mailto:avr@atmel.com">avr@atmel.com</a></dd></dl><dl compact><dt><b>Name</b></dt><dd>RELEASE_1_0 </dd></dl><dl compact><dt><b>Revision</b></dt><dd>1.5 </dd></dl><dl compact><dt><b>RCSfile</b></dt><dd><a class="el" href="PMSM_8h.html">PMSM.h</a>,v </dd></dl><dl compact><dt><b>Date</b></dt><dd>2006/05/18 09:15:31 </dd></dl><br><p>Definition in file <a class="el" href="PMSM_8h-source.html">PMSM.h</a>.<p><code>#include &quot;<a class="el" href="stdint_8h-source.html">stdint.h</a>&quot;</code><br><p>Include dependency graph for PMSM.h:<p><center><img src="PMSM_8h__incl.png" border="0" usemap="#PMSM.h_map" alt=""></center><map name="PMSM.h_map"><area href="stdint_8h.html" shape="rect" coords="129,5,193,32" alt=""></map><p>This graph shows which files directly or indirectly include this file:<p><center><img src="PMSM_8h__dep__incl.png" border="0" usemap="#PMSM.hdep_map" alt=""></center><map name="PMSM.hdep_map"><area href="main_8c.html" shape="rect" coords="295,31,356,57" alt=""><area href="PMSM__tables_8h.html" shape="rect" coords="130,56,244,83" alt=""></map><p><a href="PMSM_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"><tr><td></td></tr><tr><td colspan="2"><br><h2>Data Structures</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPMSMflags.html">PMSMflags</a></td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Collection of all motor control flags.  <a href="structPMSMflags.html#_details">More...</a><br></td></tr><tr><td colspan="2"><br><h2>Defines</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a42">BLOCK_COMMUTATION_DUTY_MULTIPLIER</a>&nbsp;&nbsp;&nbsp;3</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The number to multiply speed input with to produce duty cycle compare value (0-255).  <a href="#a42"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a36">COMMUTATION_TICKS_STOPPED</a>&nbsp;&nbsp;&nbsp;6000</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a23">COMPARE_REGISTER_PHASE_U</a>&nbsp;&nbsp;&nbsp;OCR1A</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Output compare register for phase U.  <a href="#a23"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a24">COMPARE_REGISTER_PHASE_V</a>&nbsp;&nbsp;&nbsp;OCR1B</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Output compare register for phase V.  <a href="#a24"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a25">COMPARE_REGISTER_PHASE_W</a>&nbsp;&nbsp;&nbsp;OCR1D</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Output compare register for phase W.  <a href="#a25"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a2">CPU_FREQUENCY</a>&nbsp;&nbsp;&nbsp;16000000UL</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">CPU clock frequency.  <a href="#a2"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a3">DEAD_TIME</a>&nbsp;&nbsp;&nbsp;10</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Dead time (Timer/counter1 clock cycles).  <a href="#a3"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a27">DIRECTION_FORWARD</a>&nbsp;&nbsp;&nbsp;0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Forward direction flag value.  <a href="#a27"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a16">DIRECTION_PIN</a>&nbsp;&nbsp;&nbsp;PA3</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pin where direction input signal is connected.  <a href="#a16"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a28">DIRECTION_REVERSE</a>&nbsp;&nbsp;&nbsp;1</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reverse direction flag value.  <a href="#a28"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a29">DIRECTION_UNKNOWN</a>&nbsp;&nbsp;&nbsp;3</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unknown direction flag value.  <a href="#a29"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a0">FALSE</a>&nbsp;&nbsp;&nbsp;0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">FALSE constant value.  <a href="#a0"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a12">H1_PIN</a>&nbsp;&nbsp;&nbsp;PA0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pin where hall sensor 1 is connected.  <a href="#a12"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a13">H2_PIN</a>&nbsp;&nbsp;&nbsp;PA1</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pin where hall sensor 2 is connected.  <a href="#a13"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a14">H3_PIN</a>&nbsp;&nbsp;&nbsp;PA2</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pin where hall sensor 3 is connected.  <a href="#a14"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a15">HALL_PULL_UP_ENABLE</a>&nbsp;&nbsp;&nbsp;FALSE</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hall sensor pull-up enable. Set to TRUE to enable, FALSE to disable.  <a href="#a15"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a52">PID_K_D</a>&nbsp;&nbsp;&nbsp;0</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a51">PID_K_I</a>&nbsp;&nbsp;&nbsp;10</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a50">PID_K_P</a>&nbsp;&nbsp;&nbsp;256</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a4">PWM1X</a>&nbsp;&nbsp;&nbsp;7</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Bit position of PWM1X flag in TCCR1B register.  <a href="#a4"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a26">PWM_INVERT_OUTPUT</a>&nbsp;&nbsp;&nbsp;0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Selects inversion of PWM outputs.  <a href="#a26"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a11">PWM_PIN_MASK_PORTB</a>&nbsp;&nbsp;&nbsp;((1 &lt;&lt; UL) | (1 &lt;&lt; UH) | (1 &lt;&lt; VL) | (1 &lt;&lt; VH) | (1 &lt;&lt; WL) | (1 &lt;&lt; WH))</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Mask of all pins used for motor control PWM outputs.  <a href="#a11"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a35">PWM_TOP_VALUE</a>&nbsp;&nbsp;&nbsp;0x03ff</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Top value of Timer/Counter1.  <a href="#a35"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a30">SINE_TABLE_LENGTH</a>&nbsp;&nbsp;&nbsp;192U</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The number of elements in the sine modulation table per phase.  <a href="#a30"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a33">SINE_TABLE_SIZE</a>&nbsp;&nbsp;&nbsp;SINE_TABLE_SIZE_LARGE</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a31">SINE_TABLE_SIZE_LARGE</a>&nbsp;&nbsp;&nbsp;0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">SINE_TABLE_SIZE value for large (3 * 192 elements) sine table.  <a href="#a31"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a32">SINE_TABLE_SIZE_SMALL</a>&nbsp;&nbsp;&nbsp;1</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">SINE_TABLE_SIZE value for small (64 elements) sine table.  <a href="#a32"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a47">SPEED_CONTROL_CLOSED_LOOP</a>&nbsp;&nbsp;&nbsp;1</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Speed control selection for closed loop control.  <a href="#a47"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a48">SPEED_CONTROL_METHOD</a>&nbsp;&nbsp;&nbsp;SPEED_CONTROL_OPEN_LOOP</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a46">SPEED_CONTROL_OPEN_LOOP</a>&nbsp;&nbsp;&nbsp;0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Speed control selection for open loop control.  <a href="#a46"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a53">SPEED_CONTROLLER_MAX_INCREMENT</a>&nbsp;&nbsp;&nbsp;620</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a54">SPEED_CONTROLLER_MAX_INPUT</a>&nbsp;&nbsp;&nbsp;1024</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a49">SPEED_CONTROLLER_TIME_BASE</a>&nbsp;&nbsp;&nbsp;150</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a37">SYNCHRONIZATION_COUNT</a>&nbsp;&nbsp;&nbsp;2</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a34">TABLE_ELEMENTS_PER_COMMUTATION_SECTOR</a>&nbsp;&nbsp;&nbsp;(SINE_TABLE_LENGTH / 6)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The number of elements in the sine modulation table for each phase per commutation sector.  <a href="#a34"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a55">TC1_PWM6_SET_DUTY_CYCLE</a>(dutyCycle)&nbsp;&nbsp;&nbsp;TC1_WRITE_10_BIT_REGISTER(OCR1A, (dutyCycle))</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set duty cycle in PWM6 mode.  <a href="#a55"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a1">TRUE</a>&nbsp;&nbsp;&nbsp;(!FALSE)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">TRUE constant value, defined to be compatible with comparisons.  <a href="#a1"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a45">TURN_MODE</a>&nbsp;&nbsp;&nbsp;TURN_MODE_BRAKE</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a44">TURN_MODE_BRAKE</a>&nbsp;&nbsp;&nbsp;1</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">TURN_MODE value for braking (low side braking).  <a href="#a44"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a43">TURN_MODE_COAST</a>&nbsp;&nbsp;&nbsp;0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">TURN_MODE value for coasting (disabled drivers).  <a href="#a43"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a6">UH</a>&nbsp;&nbsp;&nbsp;PB1</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pin connected to UH.  <a href="#a6"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a18">UH_OCOE</a>&nbsp;&nbsp;&nbsp;OC1OE1</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a5">UL</a>&nbsp;&nbsp;&nbsp;PB0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pin connected to UL.  <a href="#a5"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a17">UL_OCOE</a>&nbsp;&nbsp;&nbsp;OC1OE0</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a8">VH</a>&nbsp;&nbsp;&nbsp;PB3</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pin connected to VH.  <a href="#a8"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a20">VH_OCOE</a>&nbsp;&nbsp;&nbsp;OC1OE3</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a7">VL</a>&nbsp;&nbsp;&nbsp;PB2</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pin connected to VL.  <a href="#a7"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a19">VL_OCOE</a>&nbsp;&nbsp;&nbsp;OC1OE2</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a38">WAVEFORM_BLOCK_COMMUTATION</a>&nbsp;&nbsp;&nbsp;0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Waveform status flag value for block commutation.  <a href="#a38"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a40">WAVEFORM_BRAKING</a>&nbsp;&nbsp;&nbsp;2</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Waveform status flag value for braking.  <a href="#a40"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a39">WAVEFORM_SINUSOIDAL</a>&nbsp;&nbsp;&nbsp;1</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Waveform status flag value for sinusoidal driving.  <a href="#a39"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a41">WAVEFORM_UNDEFINED</a>&nbsp;&nbsp;&nbsp;3</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Waveform status flag value used in transitions between different types of driving.  <a href="#a41"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a10">WH</a>&nbsp;&nbsp;&nbsp;PB5</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pin connected to WH.  <a href="#a10"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a22">WH_OCOE</a>&nbsp;&nbsp;&nbsp;OC1OE5</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a9">WL</a>&nbsp;&nbsp;&nbsp;PB4</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pin connected to WL.  <a href="#a9"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a21">WL_OCOE</a>&nbsp;&nbsp;&nbsp;OC1OE4</td></tr><tr><td colspan="2"><br><h2>Typedefs</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structPMSMflags.html">PMSMflags</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a56">PMSMflags_t</a></td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Collection of all motor control flags.  <a href="#a56"></a><br></td></tr><tr><td colspan="2"><br><h2>Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a74">ActualDirectionUpdate</a> (<a class="el" href="stdint_8h.html#a56">uint8_t</a> lastHall, const <a class="el" href="stdint_8h.html#a56">uint8_t</a> newHall)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a62">ADCInit</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a76">AdjustSineTableIndex</a> (const <a class="el" href="stdint_8h.html#a58">uint16_t</a> increment)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a71">BlockCommutate</a> (const <a class="el" href="stdint_8h.html#a56">uint8_t</a> direction, const <a class="el" href="stdint_8h.html#a56">uint8_t</a> hall)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a68">BlockCommutationSetDuty</a> (const <a class="el" href="stdint_8h.html#a58">uint16_t</a> compareValue)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a80">CommutationTicksUpdate</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a73">DesiredDirectionUpdate</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a79">DisablePWMOutputs</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a78">EnablePWMOutputs</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a64">ExternalInterruptInit</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="stdint_8h.html#a56">uint8_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a70">GetActualDirection</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="stdint_8h.html#a56">uint8_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a69">GetDesiredDirection</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="stdint_8h.html#a56">uint8_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a72">GetHall</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="stdint_8h.html#a56">uint8_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a82">IsMotorSynchronized</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a81">MotorSynchronizedUpdate</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a85">MultiplyUS15x8</a> (const <a class="el" href="stdint_8h.html#a58">uint16_t</a> m15, const <a class="el" href="stdint_8h.html#a56">uint8_t</a> m8)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a63">PinChangeInit</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a59">PLLInit</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a58">PortsInit</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a61">PWMInit</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a77">SetAdvanceCommutation</a> (const <a class="el" href="stdint_8h.html#a56">uint8_t</a> advanceCommutation)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a84">SineOutputUpdate</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="stdint_8h.html#a58">uint16_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a75">SineTableIncrementCalculate</a> (const <a class="el" href="stdint_8h.html#a58">uint16_t</a> ticks)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="stdint_8h.html#a56">uint8_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a83">SineTableSmallGetValue</a> (<a class="el" href="stdint_8h.html#a56">uint8_t</a> index)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a57">SpeedController</a> (<a class="el" href="stdint_8h.html#a58">uint16_t</a> speedReference)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a65">TimerSetModeBlockCommutation</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a67">TimerSetModeBrake</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a66">TimerSetModeSinusoidal</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="PMSM_8h.html#a60">TimersInit</a> (void)</td></tr></table><hr><h2>Define Documentation</h2><a class="anchor" name="a42"></a><!-- doxytag: member="PMSM.h::BLOCK_COMMUTATION_DUTY_MULTIPLIER" ref="a42" args="" --><p><table class="mdTable" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top">#define BLOCK_COMMUTATION_DUTY_MULTIPLIER&nbsp;&nbsp;&nbsp;3          </td>        </tr>      </table>    </td>  </tr></table><table cellspacing="5" cellpadding="0" border="0">  <tr>    <td>      &nbsp;    </td>    <td><p>The number to multiply speed input with to produce duty cycle compare value (0-255). <p><p>Definition at line <a class="el" href="PMSM_8h-source.html#l00210">210</a> of file <a class="el" href="PMSM_8h-source.html">PMSM.h</a>.<p>Referenced by <a class="el" href="main_8c-source.html#l00965">Timer1OverflowISR()</a>.    </td>  </tr>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -