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

📄 bldc_8h-source.html

📁 一个用GCC做的atmel芯片控制的无刷无传感器的程序.包括各种参考文档!
💻 HTML
📖 第 1 页 / 共 2 页
字号:
<a name="l00169"></a>00169 <span class="preprocessor"></span><a name="l00171"></a><a class="code" href="BLDC_8h.html#a47">00171</a> <span class="preprocessor">#define ADC_PRESCALER_8     ((0 &lt;&lt; ADPS2) | (1 &lt;&lt; ADPS1) | (1 &lt;&lt; ADPS0))</span><a name="l00172"></a>00172 <span class="preprocessor"></span><a name="l00174"></a><a class="code" href="BLDC_8h.html#a48">00174</a> <span class="preprocessor">#define ADC_PRESCALER_16     ((1 &lt;&lt; ADPS2) | (0 &lt;&lt; ADPS1) | (0 &lt;&lt; ADPS0))</span><a name="l00175"></a>00175 <span class="preprocessor"></span><a name="l00177"></a><a class="code" href="BLDC_8h.html#a49">00177</a> <span class="preprocessor">#define ADC_PRESCALER       ADC_PRESCALER_8</span><a name="l00178"></a>00178 <span class="preprocessor"></span><a name="l00180"></a><a class="code" href="BLDC_8h.html#a50">00180</a> <span class="preprocessor">#define ADC_TRIGGER_SOURCE  ((1 &lt;&lt; ADTS2) | (0 &lt;&lt; ADTS1) | (0 &lt;&lt; ADTS0))</span><a name="l00181"></a>00181 <span class="preprocessor"></span><a name="l00186"></a><a class="code" href="BLDC_8h.html#a51">00186</a> <span class="preprocessor">#define STARTUP_NUM_COMMUTATIONS  8</span><a name="l00187"></a>00187 <span class="preprocessor"></span><a name="l00189"></a><a class="code" href="BLDC_8h.html#a52">00189</a> <span class="preprocessor">#define STARTUP_DELAY_MULTIPLIER  100</span><a name="l00190"></a>00190 <span class="preprocessor"></span><a name="l00195"></a><a class="code" href="BLDC_8h.html#a53">00195</a> <span class="preprocessor">#define STARTUP_LOCK_DELAY        10000</span><a name="l00196"></a>00196 <span class="preprocessor"></span><a name="l00198"></a><a class="code" href="BLDC_8h.html#a54">00198</a> <span class="preprocessor">#define MAX_RESTART_ATTEMPTS    10</span><a name="l00199"></a>00199 <span class="preprocessor"></span><a name="l00201"></a><a class="code" href="BLDC_8h.html#a55">00201</a> <span class="preprocessor">#define ZC_DETECTION_HOLDOFF_TIME_US (filteredTimeSinceCommutation / 2)</span><a name="l00202"></a>00202 <span class="preprocessor"></span><a name="l00204"></a><a class="code" href="BLDC_8h.html#a56">00204</a> <span class="preprocessor">#define SET_PWM_COMPARE_VALUE(compareValue)          (OCR0B = compareValue)</span><a name="l00205"></a>00205 <span class="preprocessor"></span><a name="l00207"></a><a class="code" href="BLDC_8h.html#a57">00207</a> <span class="preprocessor">#define CLEAR_ALL_TIMER0_INT_FLAGS    (TIFR0 = TIFR0)</span><a name="l00208"></a>00208 <span class="preprocessor"></span><a name="l00210"></a><a class="code" href="BLDC_8h.html#a58">00210</a> <span class="preprocessor">#define DISABLE_ALL_TIMER0_INTS       (TIMSK0 = 0)</span><a name="l00211"></a>00211 <span class="preprocessor"></span><a name="l00213"></a><a class="code" href="BLDC_8h.html#a59">00213</a> <span class="preprocessor">#define SET_TIMER0_INT_ZC_DETECTION   (TIMSK0 = (1 &lt;&lt; TOIE0))</span><a name="l00214"></a>00214 <span class="preprocessor"></span><a name="l00216"></a><a class="code" href="BLDC_8h.html#a60">00216</a> <span class="preprocessor">#define CLEAR_ALL_TIMER1_INT_FLAGS    (TIFR1 = TIFR1)</span><a name="l00217"></a>00217 <span class="preprocessor"></span><a name="l00219"></a><a class="code" href="BLDC_8h.html#a61">00219</a> <span class="preprocessor">#define DISABLE_ALL_TIMER1_INTS       (TIMSK1 = 0)</span><a name="l00220"></a>00220 <span class="preprocessor"></span><a name="l00222"></a><a class="code" href="BLDC_8h.html#a62">00222</a> <span class="preprocessor">#define SET_TIMER1_INT_COMMUTATION    (TIMSK1 = (1 &lt;&lt; OCIE1A))</span><a name="l00223"></a>00223 <span class="preprocessor"></span><a name="l00225"></a><a class="code" href="BLDC_8h.html#a63">00225</a> <span class="preprocessor">#define SET_TIMER1_INT_HOLDOFF        (TIMSK1 = (1 &lt;&lt; OCIE1B))</span><a name="l00226"></a>00226 <span class="preprocessor"></span><a name="l00228"></a><a class="code" href="BLDC_8h.html#a64">00228</a> <span class="preprocessor">#define EXTERNAL_REF_VOLTAGE      ((4930UL * 10) / 43)</span><a name="l00229"></a>00229 <span class="preprocessor"></span><a name="l00231"></a><a class="code" href="BLDC_8h.html#a65">00231</a> <span class="preprocessor">#define SHUNT_RESISTANCE          220</span><a name="l00232"></a>00232 <span class="preprocessor"></span><a name="l00234"></a><a class="code" href="BLDC_8h.html#a66">00234</a> <span class="preprocessor">#define ADC_RESOLUTION   256</span><a name="l00235"></a>00235 <span class="preprocessor"></span><a name="l00240"></a><a class="code" href="BLDC_8h.html#a67">00240</a> <span class="preprocessor">#define TICKS_PER_SECOND    1000000UL</span><a name="l00241"></a>00241 <span class="preprocessor"></span><a name="l00243"></a><a class="code" href="BLDC_8h.html#a68">00243</a> <span class="preprocessor">#define TICKS_PER_MINUTE    (TICKS_PER_SECOND * 60)</span><a name="l00244"></a>00244 <span class="preprocessor"></span><a name="l00251"></a><a class="code" href="BLDC_8h.html#a69">00251</a> <span class="preprocessor">#define COMMUTATION_TIMING_IIR_COEFF_A      1</span><a name="l00252"></a>00252 <span class="preprocessor"></span><a name="l00259"></a><a class="code" href="BLDC_8h.html#a70">00259</a> <span class="preprocessor">#define COMMUTATION_TIMING_IIR_COEFF_B      3</span><a name="l00260"></a>00260 <span class="preprocessor"></span><a name="l00262"></a><a class="code" href="BLDC_8h.html#a71">00262</a> <span class="preprocessor">#define SPEED_CONTROL_OPEN_LOOP</span><a name="l00263"></a>00263 <span class="preprocessor"></span><span class="comment">//#define SPEED_CONTROL_CLOSED_LOOP</span><a name="l00264"></a>00264 <a name="l00266"></a><a class="code" href="BLDC_8h.html#a72">00266</a> <span class="preprocessor">#define CURRENT_LIMITER_START         2500</span><a name="l00267"></a>00267 <span class="preprocessor"></span><a name="l00269"></a><a class="code" href="BLDC_8h.html#a73">00269</a> <span class="preprocessor">#define CURRENT_LIMITER_CRITICAL      3000</span><a name="l00270"></a>00270 <span class="preprocessor"></span><a name="l00275"></a><a class="code" href="BLDC_8h.html#a74">00275</a> <span class="preprocessor">#define ANALOG_COMPARATOR_ENABLE</span><a name="l00276"></a>00276 <span class="preprocessor"></span><a name="l00281"></a><a class="code" href="BLDC_8h.html#a75">00281</a> <span class="preprocessor">#define CURRENT_LIMITER_FACTOR   (1 / 5)</span><a name="l00282"></a>00282 <span class="preprocessor"></span><a name="l00284"></a><a class="code" href="BLDC_8h.html#a76">00284</a> <span class="preprocessor">#define DISABLE_DRIVING               (DRIVE_PORT = 0x00)</span><a name="l00285"></a>00285 <span class="preprocessor"></span><a name="l00287"></a><a class="code" href="BLDC_8h.html#a77">00287</a> <span class="preprocessor">#define STARTUP_PWM_COMPARE_VALUE  130</span><a name="l00288"></a>00288 <span class="preprocessor"></span><a name="l00290"></a><a class="code" href="BLDC_8h.html#a78">00290</a> <span class="preprocessor">#define ADC_ZC_THRESHOLD 0x98</span><a name="l00291"></a>00291 <span class="preprocessor"></span><a name="l00296"></a><a class="code" href="BLDC_8h.html#a79">00296</a> <span class="preprocessor">#define COMMUTATION_CORRECTION 50</span><a name="l00297"></a>00297 <span class="preprocessor"></span><a name="l00299"></a><a class="code" href="BLDC_8h.html#a80">00299</a> <span class="preprocessor">#define MIN_PWM_COMPARE_VALUE    90</span><a name="l00300"></a>00300 <span class="preprocessor"></span><a name="l00302"></a><a class="code" href="BLDC_8h.html#a81">00302</a> <span class="preprocessor">#define MAX_PWM_COMPARE_VALUE    200</span><a name="l00303"></a>00303 <span class="preprocessor"></span><a name="l00305"></a><a class="code" href="BLDC_8h.html#a82">00305</a> <span class="preprocessor">#define MIN_SPEED 3000UL</span><a name="l00306"></a>00306 <span class="preprocessor"></span><a name="l00308"></a><a class="code" href="BLDC_8h.html#a83">00308</a> <span class="preprocessor">#define MAX_SPEED 8000UL</span><a name="l00309"></a>00309 <span class="preprocessor"></span><a name="l00311"></a><a class="code" href="BLDC_8h.html#a84">00311</a> <span class="preprocessor">#define P_REG_K_P 64</span><a name="l00312"></a>00312 <span class="preprocessor"></span><a name="l00314"></a><a class="code" href="BLDC_8h.html#a85">00314</a> <span class="preprocessor">#define P_REG_SCALING 65536</span><a name="l00315"></a>00315 <span class="preprocessor"></span><a name="l00316"></a>00316 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="BLDC_8h.html#a86">ResetHandler</a>(<span class="keywordtype">void</span>);<a name="l00317"></a>00317 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="BLDC_8h.html#a87">InitPorts</a>(<span class="keywordtype">void</span>);<a name="l00318"></a>00318 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="BLDC_8h.html#a88">InitTimers</a>(<span class="keywordtype">void</span>);<a name="l00319"></a>00319 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="BLDC_8h.html#a89">InitADC</a>(<span class="keywordtype">void</span>);<a name="l00320"></a>00320 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="BLDC_8h.html#a90">InitAnalogComparator</a>(<span class="keywordtype">void</span>);<a name="l00321"></a>00321 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="BLDC_8h.html#a91">WatchdogTimerEnable</a>(<span class="keywordtype">void</span>);<a name="l00322"></a>00322 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="BLDC_8h.html#a92">MakeTables</a>(<span class="keywordtype">void</span>);<a name="l00323"></a>00323 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="BLDC_8h.html#a93">StartMotor</a>(<span class="keywordtype">void</span>);<a name="l00324"></a>00324 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="BLDC_8h.html#a94">PWMControl</a>(<span class="keywordtype">void</span>);<a name="l00325"></a>00325 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="BLDC_8h.html#a95">StartupDelay</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> delay);<a name="l00326"></a>00326 <span class="keyword">static</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="BLDC_8h.html#a96">CalculateSpeed</a>();<a name="l00327"></a>00327 <span class="keyword">static</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="BLDC_8h.html#a97">CalculateSpeedSetpoint</a>();<a name="l00328"></a>00328 <span class="keyword">static</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="BLDC_8h.html#a98">CalculateCurrent</a>();<a name="l00329"></a>00329 <span class="keyword">static</span> <span class="keywordtype">signed</span> <span class="keywordtype">int</span> <a class="code" href="BLDC_8h.html#a99">SpeedControl</a>(<span class="keywordtype">void</span>);<a name="l00330"></a>00330 <span class="keyword">static</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> <a class="code" href="BLDC_8h.html#a100">CurrentControl</a>(<span class="keywordtype">void</span>);<a name="l00331"></a>00331 <a name="l00332"></a>00332 <a name="l00333"></a>00333 <span class="preprocessor">#endif  // File guard</span></pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Oct 11 10:57:02 2005 for Sensorless control of 3-phase brushless DC motors by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address></body></html>

⌨️ 快捷键说明

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