單片機音樂中音調和節拍的確定方法:調號-音樂上指用以確定樂曲主音高度的符號。很明顯一個八度就有12個半音。A、B、C、D、E、F、G。經過聲學家的研究,全世界都用這些字母來表示固定的音高。比如,A這個音,標準的音高為每秒鐘振動440周。 升C調:1=#C,也就是降D調:1=BD;277(頻率)升D調:1=#D,也就是降E調:1=BE;311升F調:1=#F,也就是降G調:1=BG;369升G調:1=#G,也就是降A調:1=BA;415升A調:1=#A,也就是降B調:1=BB。466,C 262 #C277 D 294 #D(bE)311 E 330 F 349 #F369 G 392 #G415A 440. #A466 B 494 所謂1=A,就是說,這首歌曲的“導”要唱得同A一樣高,人們也把這首歌曲叫做A調歌曲,或叫“唱A調”。1=C,就是說,這首歌曲的“導”要唱得同C一樣高,或者說“這歌曲唱C調”。同樣是“導”,不同的調唱起來的高低是不一樣的。各調的對應的標準頻率為: 單片機演奏音樂時音調和節拍的確定方法 經常看到一些剛學單片機的朋友對單片機演奏音樂比較有興趣,本人也曾是這樣。在此,本人將就這方面的知識做一些簡介,但愿能對單片機演奏音樂比較有興趣而又不知其解的朋友能有所啟迪。 一般說來,單片機演奏音樂基本都是單音頻率,它不包含相應幅度的諧波頻率,也就是說不能象電子琴那樣能奏出多種音色的聲音。因此單片機奏樂只需弄清楚兩個概念即可,也就是“音調”和“節拍”。音調表示一個音符唱多高的頻率,節拍表示一個音符唱多長的時間。 在音樂中所謂“音調”,其實就是我們常說的“音高”。在音樂中常把中央C上方的A音定為標準音高,其頻率f=440Hz。當兩個聲音信號的頻率相差一倍時,也即f2=2f1時,則稱f2比f1高一個倍頻程, 在音樂中1(do)與 ,2(來)與 ……正好相差一個倍頻程,在音樂學中稱它相差一個八度音。在一個八度音內,有12個半音。以1—i八音區為例, 12個半音是:1—#1、#1—2、2—#2、#2—3、3—4、4—#4,#4—5、5一#5、#5—6、6—#6、#6—7、7—i。這12個音階的分度基本上是以對數關系來劃分的。如果我們只要知道了這十二個音符的音高,也就是其基本音調的頻率,我們就可根據倍頻程的關系得到其他音符基本音調的頻率。 知道了一個音符的頻率后,怎樣讓單片機發出相應頻率的聲音呢?一般說來,常采用的方法就是通過單片機的定時器定時中斷,將單片機上對應蜂鳴器的I/O口來回取反,或者說來回清零,置位,從而讓蜂鳴器發出聲音,為了讓單片機發出不同頻率的聲音,我們只需將定時器予置不同的定時值就可實現。那么怎樣確定一個頻率所對應的定時器的定時值呢?以標準音高A為例: A的頻率f = 440 Hz,其對應的周期為:T = 1/ f = 1/440 =2272μs 由上圖可知,單片機上對應蜂鳴器的I/O口來回取反的時間應為:t = T/2 = 2272/2 = 1136μs這個時間t也就是單片機上定時器應有的中斷觸發時間。一般情況下,單片機奏樂時,其定時器為工作方式1,它以振蕩器的十二分頻信號為計數脈沖。設振蕩器頻率為f0,則定時器的予置初值由下式來確定: t = 12 *(TALL – THL)/ f0 式中TALL = 216 = 65536,THL為定時器待確定的計數初值。因此定時器的高低計數器的初值為: TH = THL / 256 = ( TALL – t* f0/12) / 256 TL = THL % 256 = ( TALL – t* f0/12) %256 將t=1136μs代入上面兩式(注意:計算時應將時間和頻率的單位換算一致),即可求出標準音高A在單片機晶振頻率f0=12Mhz,定時器在工作方式1下的定時器高低計數器的予置初值為 : TH440Hz = (65536 – 1136 * 12/12) /256 = FBH TL440Hz = (65536 – 1136 * 12/12)%256 = 90H根據上面的求解方法,我們就可求出其他音調相應的計數器的予置初值。 音符的節拍我們可以舉例來說明。在一張樂譜中,我們經常會看到這樣的表達式,如1=C 、1=G …… 等等,這里1=C,1=G表示樂譜的曲調,和我們前面所談的音調有很大的關聯, 、 就是用來表示節拍的。以 為例加以說明,它表示樂譜中以四分音符為節拍,每一小結有三拍。比如: 其中1 、2 為一拍,3、4、5為一拍,6為一拍共三拍。1 、2的時長為四分音符的一半,即為八分音符長,3、4的時長為八分音符的一半,即為十六分音符長,5的時長為四分音符的一半,即為八分音符長,6的時長為四分音符長。那么一拍到底該唱多長呢?一般說來,如果樂曲沒有特殊說明,一拍的時長大約為400—500ms 。我們以一拍的時長為400ms為例,則當以四分音符為節拍時,四分音符的時長就為400ms,八分音符的時長就為200ms,十六分音符的時長就為100ms。可見,在單片機上控制一個音符唱多長可采用循環延時的方法來實現。首先,我們確定一個基本時長的延時程序,比如說以十六分音符的時長為基本延時時間,那么,對于一個音符,如果它為十六分音符,則只需調用一次延時程序,如果它為八分音符,則只需調用二次延時程序,如果它為四分音符,則只需調用四次延時程序,依次類推。通過上面關于一個音符音調和節拍的確定方法,我們就可以在單片機上實現演奏音樂了。具體的實現方法為:將樂譜中的每個音符的音調及節拍變換成相應的音調參數和節拍參數,將他們做成數據表格,存放在存儲器中,通過程序取出一個音符的相關參數,播放該音符,該音符唱完后,接著取出下一個音符的相關參數……,如此直到播放完畢最后一個音符,根據需要也可循環不停地播放整個樂曲。另外,對于樂曲中的休止符,一般將其音調參數設為FFH,FFH,其節拍參數與其他音符的節拍參數確定方法一致,樂曲結束用節拍參數為00H來表示。下面給出部分音符(三個八度音)的頻率以及以單片機晶振頻率f0=12Mhz,定時器在工作方式1下的定時器高低計數器的予置初值 : C調音符 頻率Hz 262 277 293 311 329 349 370 392 415 440 466 494TH/TL F88B F8F2 F95B F9B7 FA14 FA66 FAB9 FB03 FB4A FB8F FBCF FC0BC調音符 1 1# 2 2# 3 4 4# 5 5# 6 6# 7頻率Hz 523 553 586 621 658 697 739 783 830 879 931 987TH/TL FC43 FC78 FCAB FCDB FD08 FD33 FD5B FD81 FDA5 FDC7 FDE7 FE05C調音符 頻率Hz 1045 1106 1171 1241 1316 1393 1476 1563 1658 1755 1860 1971TH/TL FB21 FE3C FE55 FE6D FE84 FE99 FEAD FEC0 FE02 FEE3 FEF3 FF02
上傳時間: 2013-10-20
上傳用戶:哈哈haha
利用加速度信號測量位移是油田抽油井光桿位移測量的主要方法,而加速度信號的隨機噪聲和趨勢項是影響測量精度的主要因素,本文提出了一種基于學習的實時消噪和剔除趨勢項方法。學習時先獲取一段時間的加速度信號,再通過時間序列分析技術得出ARIMA模型及其參數,最后基于FFT變換的Rife-Jane頻率估計方法求出加速度信號的周期;在線實時消噪和剔除趨勢項方法是基于學習階段所得模型參數,運用卡爾曼濾波技術消除加速度信號隨機噪聲;按周期兩次積分得到光桿位移,用加窗遞推最小二乘法在線消除趨勢項。通過抽油機半實物仿真平臺測試和分析加速度信號,結果表明,該方法有效地去除了加速度信號中的噪聲和趨勢項,極大地提高了位移的測量精度。
上傳時間: 2013-11-16
上傳用戶:稀世之寶039
為了克服復雜環境下單振動傳感器誤報率高的問題,采用了傳感器陣列的定位(定區域)技術消除環境干擾的方法。首先首次提出了傳感器陣列的最佳分布模型和傳感器陣列消除環境干擾的算法模型,然后給出了目標定位(定區域)的具體算法,最后將傳感器陣列定位(定區域)方法與單傳感器方法進行實驗對比。實驗結果表明:本方法消除環境干擾效果好,目標定位(定區域)的精度高、檢測率高。
上傳時間: 2013-11-11
上傳用戶:hopy
TKS仿真器B系列快速入門
上傳時間: 2013-10-31
上傳用戶:aix008
附件有二個文當,都是dxp2004教程 ,第一部份DXP2004的相關快捷鍵,以及中英文對照的意思。第二部份細致的講解的如何使用DXP2004。 dxp2004教程第一部份: 目錄 1 快捷鍵 2 常用元件及封裝 7 創建自己的集成庫 12 板層介紹 14 過孔 15 生成BOM清單 16 頂層原理圖: 16 生成PCB 17 包地 18 電路板設計規則 18 PCB設計注意事項 20 畫板心得 22 DRC 規則英文對照 22 一、Error Reporting 中英文對照 22 A : Violations Associated with Buses 有關總線電氣錯誤的各類型(共 12 項) 22 B :Violations Associated Components 有關元件符號電氣錯誤(共 20 項) 22 C : violations associated with document 相關的文檔電氣錯誤(共 10 項) 23 D : violations associated with nets 有關網絡電氣錯誤(共 19 項) 23 E : Violations associated with others 有關原理圖的各種類型的錯誤 (3 項 ) 24 二、 Comparator 規則比較 24 A : Differences associated with components 原理圖和 PCB 上有關的不同 ( 共 16 項 ) 24 B : Differences associated with nets 原理圖和 PCB 上有關網絡不同(共 6 項) 25 C : Differences associated with parameters 原理圖和 PCB 上有關的參數不同(共 3 項) 25 Violations Associated withBuses欄 —總線電氣錯誤類型 25 Violations Associated with Components欄 ——元件電氣錯誤類型 26 Violations Associated with documents欄 —文檔電氣連接錯誤類型 27 Violations Associated with Nets欄 ——網絡電氣連接錯誤類型 27 Violations Associated with Parameters欄 ——參數錯誤類型 28 dxp2004教程第二部份 路設計自動化( Electronic Design Automation ) EDA 指的就是將電路設計中各種工作交由計算機來協助完成。如電路圖( Schematic )的繪制,印刷電路板( PCB )文件的制作執行電路仿真( Simulation )等設計工作。隨著電子工業的發展,大規模、超大規模集成電路的使用是電路板走線愈加精密和復雜。電子線路 CAD 軟件產生了, Protel 是突出的代表,它操作簡單、易學易用、功能強大。 1.1 Protel 的產生及發展 1985 年 誕生 dos 版 Protel 1991 年 Protel for Widows 1998 年 Protel98 這個 32 位產品是第一個包含 5 個核心模塊的 EDA 工具 1999 年 Protel99 既有原理圖的邏輯功能驗證的混合信號仿真,又有了 PCB 信號完整性 分析的板級仿真,構成從電路設計到真實板分析的完整體系。 2000 年 Protel99se 性能進一步提高,可以對設計過程有更大控制力。 2002 年 Protel DXP 集成了更多工具,使用方便,功能更強大。 1.2 Protel DXP 主要特點 1 、通過設計檔包的方式,將原理圖編輯、電路仿真、 PCB 設計及打印這些功能有機地結合在一起,提供了一個集成開發環境。 2 、提供了混合電路仿真功能,為設計實驗原理圖電路中某些功能模塊的正確與否提供了方便。 3 、提供了豐富的原理圖組件庫和 PCB 封裝庫,并且為設計新的器件提供了封裝向導程序,簡化了封裝設計過程。 4 、提供了層次原理圖設計方法,支持“自上向下”的設計思想,使大型電路設計的工作組開發方式成為可能。 5 、提供了強大的查錯功能。原理圖中的 ERC (電氣法則檢查)工具和 PCB 的 DRC (設計規則檢查)工具能幫助設計者更快地查出和改正錯誤。 6 、全面兼容 Protel 系列以前版本的設計文件,并提供了 OrCAD 格式文件的轉換功能。 7 、提供了全新的 FPGA 設計的功能,這好似以前的版本所沒有提供的功能。
上傳時間: 2015-01-01
上傳用戶:zhyfjj
一、臺達變頻器的超級密碼 -B系列的 :57522 -H系列的:33582 S1系列變頻的萬能密碼:575222、 二、歐瑞變頻器(也就是之前的惠豐變頻器)超級密碼是: 18881500-G 1500-P 1000-G 200-G的都是通用的。 三、爍普變頻高級菜單P301輸入321A000輸入11,刷新程序; P301輸入321A000輸入9,進菜單E001,輸入機器G; PE002額定電壓,E003額定電流,E004電壓校正,E005不動,E006電流校正。 四、普傳PI2000刷新設定方法:
上傳時間: 2013-11-11
上傳用戶:macarco
一個簡單好用的B+樹算法實現
上傳時間: 2015-01-04
上傳用戶:縹緲
一個用Basic實現的B-Tree算法
上傳時間: 2013-12-30
上傳用戶:ccclll
一個用Java applet實現的B-Tree算法
上傳時間: 2013-12-25
上傳用戶:qiao8960
用C++實現的B-Tree算法
上傳時間: 2014-01-20
上傳用戶:jiahao131