tag:blogger.com,1999:blog-9307457.post116626497454535558..comments2022-03-26T19:54:05.018+08:00Comments on Yukuan's Blog: Motor-controlling PWMsYorkhttp://www.blogger.com/profile/16278534857437994661noreply@blogger.comBlogger6125tag:blogger.com,1999:blog-9307457.post-62125150503121657192007-05-30T00:08:00.000+08:002007-05-30T00:08:00.000+08:00會逛到這裡的,應該都是機器人 DIY 同好吧,我在 diigo 那成立了 Robotics 版,並把...會逛到這裡的,應該都是機器人 DIY 同好吧,我在 diigo 那成立了 <A HREF="http://groups.diigo.com/groups/robotics" REL="nofollow">Robotics</A> 版,並把相關資訊整理一份到那,希望能為大家省些時間,達到拋磚引玉的效果 :)<BR/><BR/>那兒分成 <BR/><A HREF="http://groups.diigo.com/robotics/bookmark" REL="nofollow">Robotics Bookmarks</A> 及<BR/><A HREF="http://groups.diigo.com/robotics/forum" REL="nofollow">Robotics Forum</A><BR/>兩大塊。Yorkhttps://www.blogger.com/profile/16278534857437994661noreply@blogger.comtag:blogger.com,1999:blog-9307457.post-24323935411434618302007-05-05T17:24:00.000+08:002007-05-05T17:24:00.000+08:00後來查一下資料,人眼不同的感光細胞,對光線有不同的反應,以視覺暫留來說,主要有 1/25 sec 及...後來查一下資料,<BR/><BR/>人眼不同的感光細胞,對光線有不同的反應,以視覺暫留來說,主要有 1/25 sec 及 1/4 sec 兩大類。<BR/><BR/>且眼睛要接受到一定強度的光線,才感測得到,所以 PWM 的 duty cycle 也不可以太小。Yorkhttps://www.blogger.com/profile/16278534857437994661noreply@blogger.comtag:blogger.com,1999:blog-9307457.post-80162733449639721902007-05-04T16:06:00.000+08:002007-05-04T16:06:00.000+08:00我是指 list2 裡面重複把 GPIO 設成 LOW ,照程式的邏輯是不必要的。因為設成 LOW ...我是指 list2 裡面重複把 GPIO 設成 LOW ,照程式的邏輯是不必要的。因為設成 LOW 後,你不去改它,理論上不會自己變成 HIGH;但在一些罕見的意外下,很難說這種見鬼的事絕對不會發生 :p<BR/><BR/>LED PWM 要調多快,還有 duty cycle 要多長,就如你說的,我沒特別堅持,這原本就要實際調調看最準 :)<BR/><BR/>就如你所說的 List1 的 Pause 在 servo 組數夠多時,當然不必要。這裡只是把它一般化,避免一些特例。畢竟這是虛擬碼,不是實際要拿來用的 :)Yorkhttps://www.blogger.com/profile/16278534857437994661noreply@blogger.comtag:blogger.com,1999:blog-9307457.post-64151608706778251752007-04-28T15:14:00.000+08:002007-04-28T15:14:00.000+08:00今天又重看了一次你的虛擬碼,終於看懂了(可能最近FPPA寫太多變笨)你的list1應該就同等於FPP...今天又重看了一次你的虛擬碼,終於<BR/>看懂了(可能最近FPPA寫太多變笨)<BR/><BR/>你的list1應該就同等於FPPA中的作法<BR/>,只不過我們是用2顆CPU去做,不過<BR/>看來用你的作法應該1顆也辦得到<BR/>(因為最近終於對servo的特性夠清楚<BR/>了)<BR/><BR/>此外我弄錯了,其實我指的是list5<BR/>(不過這不重要了)<BR/><BR/>還有你這句:<BR/>"去除動作冗餘來換取較少的 interrupt instruction cycles"<BR/><BR/>是什麼意思呢?(list2 & list3看不出<BR/>有多大分別)<BR/><BR/>感覺起來list5比較適合給有RTOS<BR/>的場合使用。<BR/><BR/>另外假如你是要給servo用,其實list1中Pause是不太必要的,因為servo要求的是duty精準但是Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-9307457.post-80965044870159339612007-04-27T15:36:00.000+08:002007-04-27T15:36:00.000+08:00To Godspeed,首先Pause(PERIOD-INNATE_DELAY-pulse_dela...To Godspeed,<BR/><BR/>首先<BR/><BR/>Pause(PERIOD-INNATE_DELAY-pulse_delay)<BR/><BR/>是指 busy waiting 時間。<BR/><BR/>PERIOD 是 PWM 的週期;<BR/>pulse_delay 可以看成是同時運作的那幾個 PWM 的脈衝(duty cycle)的加總;<BR/>INNATE_DELAY 指的是固有的時間延遲,像是 CPU 指令運算等需要消耗的時間所造成的延遲等。<BR/><BR/>上述作法,你應該比我還熟,只是大家的用語,及程式切割方式等不大一樣罷了。<BR/><BR/><BR/>再來,<BR/><BR/>list3 的 PWM pull low?<BR/>你是指 PWM[i] = LOW 這行嗎?<BR/>不是很確定你指的是那一部份。<BR/><BR/>無論如何,這只是虛擬Yorkhttps://www.blogger.com/profile/16278534857437994661noreply@blogger.comtag:blogger.com,1999:blog-9307457.post-13556196506503660832007-04-27T10:53:00.000+08:002007-04-27T10:53:00.000+08:00Hi, Yukuan:最近比較有空看了一下你這篇文章,有些問題想請教你:list 1.Pause(P...Hi, Yukuan:<BR/><BR/>最近比較有空看了一下你這篇文章,有些<BR/>問題想請教你:<BR/><BR/>list 1.<BR/>Pause(PERIOD - INNATE_DELAY - pulse_delay); <BR/><BR/>這是什麼意思呢?<BR/><BR/>還有 list 3. 我找不到 PWM pull low<BR/>的地方,有點怪怪的<BR/><BR/>我作過PWM LED與Servo,其實兩者<BR/>的 PWM 不太一樣,PWM LED頻率<BR/>比較高(顏色變化時才自然),而且<BR/>RGB三個PWM period要幾乎同步。<BR/><BR/>但是servo相對duty cycle很短period卻<BR/>很長,所以可以在period裡偷塞一些<BR/>其他servo的PWM,當然把PWM LED的<BR/>作法拿來用也不是不行,但是Anonymousnoreply@blogger.com