這裡稍微整理一下思緒,自己對於公式的了解,以及該如何在程式上撰寫。
首先,這裡用C語言來做個驗證,之前是用過Matlab不過時間有點久遠,卻忘了做下筆記。
C語言有提供sin()函式,範圍值 1 ~ -1符合sinusoid的條件。
函式的argument則是填入弳度量(radian measure),跟我們知道的角度(phrase)有些不同。
轉換公式為
弳度量 = 角度量(phrase) * pi / 180
pi = 3.14159285
我們都知道角度量範圍值 0 ~ 360度,之後就是一個循環,這是一個以正旋波為主軸的表示方式。
但場景如果轉換成以時間單位為主軸那該如何表示呢?
就把角度量用時間來區分開來,所以公式就變成
(t(now) * 360 / t) * (pi / 180) 簡化一下,t(now) * 2 * pi / t = 2 * pi * f * t(now)
於是就成為了我們常見的[1]
2 * pi * f * t = wt
Reference
[1]http://en.wikipedia.org/wiki/Sine_wave
http://tw.knowledge.yahoo.com/question/question?qid=1510101414866
Thursday, November 7, 2013
Subscribe to:
Post Comments (Atom)
Register Transfer Level Design with Verilog (1) [ebook]
設計程式之所以有趣不外乎是它的千變萬化,同樣的結果卻有不同的寫法。 但這些不同寫法當中也並沒有分誰對誰錯,也沒有制定標準來規範何事該用何解。 這也就是我們設計者的珍貴!! [1] Primitive Instantiations 在Verilog中最基本的邏輯...
-
在之前的文章中有提到UEFI的系統大概可以區分兩個階段,起初是Boot Service再來就是Runtime Service(RS)如紅框所涵蓋的程序都可以稱為RS。 區分這兩個Service最重要的一項轉類點函數為 ExitBootServices()...
-
Handle的類型主要可以區分為這三種 executable image (drivers, application) – Agent Handles devices (network controller, hard drive partitions) – Cont...
-
無緣無故出現了一堆亂碼,測試了許久才找出問題。 有時候莫名其妙的問題真的會讓人束手無策。 原來其實是設定上有所不同,因為Serial Port同步問題是他最重要的部分。 這次是Parity的問題[1],這個設定主要是做資料確認。 有三個選項 odd, even和none...
No comments:
Post a Comment