本書從應(yīng)用的角度,詳細(xì)地介紹了MCS-51單片機(jī)的硬件結(jié)構(gòu)、指令系統(tǒng)、各種硬件接口設(shè)計(jì)、各種常用的數(shù)據(jù)運(yùn)算和處理程序及接口驅(qū)動(dòng)程序的設(shè)計(jì)以及MCS-51單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì),并對(duì)MCS-51單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)中的抗干擾技術(shù)以及各種新器件也作了詳細(xì)的介紹。本書突出了選取內(nèi)容的實(shí)用性、典型性。書中的應(yīng)用實(shí)例,大多來自科研工作及教學(xué)實(shí)踐,且經(jīng)過檢驗(yàn),內(nèi)容豐富、翔實(shí)。 本書可作為工科院校的本科生、研究生、專科生學(xué)習(xí)MCS-51單片機(jī)課程的教材,也可供從事自動(dòng)控制、智能儀器儀表、測(cè)試、機(jī)電一體化以及各類從事MCS-51單片機(jī)應(yīng)用的工程技術(shù)人員參考。 第一章 單片微型計(jì)等機(jī)概述 1.1 單片機(jī)的歷史及發(fā)展概況 1.2 單片機(jī)的發(fā)展趨勢(shì) 1.3 單片機(jī)的應(yīng)用 1.3.1 單片機(jī)的特點(diǎn) 1.3.2 單片機(jī)的應(yīng)用范圍 1.4 8位單片機(jī)的主要生產(chǎn)廠家和機(jī)型 1.5 MCS-51系列單片機(jī) 第二章 MCS-51單片機(jī)的硬件結(jié)構(gòu) 2.1 MCS-51單片機(jī)的硬件結(jié)構(gòu) 2.2 MCS-51的引腳 2.2.1 電源及時(shí)鐘引腳 2.2.2 控制引腳 2.2.3 I/O口引腳 2.3 MCS-51單片機(jī)的中央處理器(CPU) 2.3.1 運(yùn)算部件 2.3.2 控制部件 2.4 MCS-51存儲(chǔ)器的結(jié)構(gòu) 2.4.1 程序存儲(chǔ)器 2.4.2 內(nèi)部數(shù)據(jù)存儲(chǔ)器 2.4.3 特殊功能寄存器(SFR) 2.4.4 位地址空間 2.4.5 外部數(shù)據(jù)存儲(chǔ)器 2.5 I/O端口 2.5.1 I/O口的內(nèi)部結(jié)構(gòu) 2.5.2 I/O口的讀操作 2.5.3 I/O口的寫操作及負(fù)載能力 2.6 復(fù)位電路 2.6.1 復(fù)位時(shí)各寄存器的狀態(tài) 2.6.2 復(fù)位電路 2.7 時(shí)鐘電路 2.7.1 內(nèi)部時(shí)鐘方式 2.7.2 外部時(shí)鐘方式 2.7.3 時(shí)鐘信號(hào)的輸出 第三章 MCS-51的指令系統(tǒng) 3.1 MCS-51指令系統(tǒng)的尋址方式 3.1.1 寄存器尋址 3.1.2 直接尋址 3.1.3 寄存器間接尋址 3.1.4 立即尋址 3.1.5 基址寄存器加變址寄存器間址尋址 3.2 MCS-51指令系統(tǒng)及一般說明 3.2.1 數(shù)據(jù)傳送類指令 3.2.2 算術(shù)操作類指令 3.2.3 邏輯運(yùn)算指令 3.2.4 控制轉(zhuǎn)移類指令 3.2.5 位操作類指令 第四章 MCS-51的定時(shí)器/計(jì)數(shù)器 4.1 定時(shí)器/計(jì)數(shù)器的結(jié)構(gòu) 4.1.1 工作方式控制寄存器TMOD 4.1.2 定時(shí)器/計(jì)數(shù)器控制寄存器TCON 4.2 定時(shí)器/計(jì)數(shù)器的四種工作方式 4.2.1 方式0 4.2.2 方式1 4.2.3 方式2 4.2.4 方式3 4.3 定時(shí)器/計(jì)數(shù)器對(duì)輸入信號(hào)的要求 4.4 定時(shí)器/計(jì)數(shù)器編程和應(yīng)用 4.4.1 方式o應(yīng)用(1ms定時(shí)) 4.4.2 方式1應(yīng)用 4.4.3 方式2計(jì)數(shù)方式 4.4.4 方式3的應(yīng)用 4.4.5 定時(shí)器溢出同步問題 4.4.6 運(yùn)行中讀定時(shí)器/計(jì)數(shù)器 4.4.7 門控制位GATE的功能和使用方法(以T1為例) 第五章 MCS-51的串行口 5.1 串行口的結(jié)構(gòu) 5.1.1 串行口控制寄存器SCON 5.1.2 特殊功能寄存器PCON 5.2 串行口的工作方式 5.2.1 方式0 5.2.2 方式1 5.2.3 方式2 5.2.4 方式3 5.3 多機(jī)通訊 5.4 波特率的制定方法 5.4.1 波特率的定義 5.4.2 定時(shí)器T1產(chǎn)生波特率的計(jì)算 5.5 串行口的編程和應(yīng)用 5.5.1 串行口方式1應(yīng)用編程(雙機(jī)通訊) 5.5.2 串行口方式2應(yīng)用編程 5.5.3 串行口方式3應(yīng)用編程(雙機(jī)通訊) 第六章 MCS-51的中斷系統(tǒng) 6.1 中斷請(qǐng)求源 6.2 中斷控制 6.2.1 中斷屏蔽 6.2.2 中斷優(yōu)先級(jí)優(yōu) 6.3 中斷的響應(yīng)過程 6.4 外部中斷的響應(yīng)時(shí)間 6.5 外部中斷的方式選擇 6.5.1 電平觸發(fā)方式 6.5.2 邊沿觸發(fā)方式 6.6 多外部中斷源系統(tǒng)設(shè)計(jì) 6.6.1 定時(shí)器作為外部中斷源的使用方法 6.6.2 中斷和查詢結(jié)合的方法 6.6.3 用優(yōu)先權(quán)編碼器擴(kuò)展外部中斷源 第七章 MCS-51單片機(jī)擴(kuò)展存儲(chǔ)器的設(shè)計(jì) 7.1 概述 7.1.1 只讀存儲(chǔ)器 7.1.2 可讀寫存儲(chǔ)器 7.1.3 不揮發(fā)性讀寫存儲(chǔ)器 7.1.4 特殊存儲(chǔ)器 7.2 存儲(chǔ)器擴(kuò)展的基本方法 7.2.1 MCS-51單片機(jī)對(duì)存儲(chǔ)器的控制 7.2.2 外擴(kuò)存儲(chǔ)器時(shí)應(yīng)注意的問題 7.3 程序存儲(chǔ)器EPROM的擴(kuò)展 7.3.1 程序存儲(chǔ)器的操作時(shí)序 7.3.2 常用的EPROM芯片 7.3.3 外部地址鎖存器和地址譯碼器 7.3.4 典型EPROM擴(kuò)展電路 7.4 靜態(tài)數(shù)據(jù)存儲(chǔ)的器擴(kuò)展 7.4.1 外擴(kuò)數(shù)據(jù)存儲(chǔ)器的操作時(shí)序 7.4.2 常用的SRAM芯片 7.4.3 64K字節(jié)以內(nèi)SRAM的擴(kuò)展 7.4.4 超過64K字節(jié)SRAM擴(kuò)展 7.5 不揮發(fā)性讀寫存儲(chǔ)器擴(kuò)展 7.5.1 EPROM擴(kuò)展 7.5.2 SRAM掉電保護(hù)電路 7.6 特殊存儲(chǔ)器擴(kuò)展 7.6.1 雙口RAMIDT7132的擴(kuò)展 7.6.2 快擦寫存儲(chǔ)器的擴(kuò)展 7.6.3 先進(jìn)先出雙端口RAM的擴(kuò)展 第八章 MCS-51擴(kuò)展I/O接口的設(shè)計(jì) 8.1 擴(kuò)展概述 8.2 MCS-51單片機(jī)與可編程并行I/O芯片8255A的接口 8.2.1 8255A芯片介紹 8.2.2 8031單片機(jī)同8255A的接口 8.2.3 接口應(yīng)用舉例 8.3 MCS-51與可編程RAM/IO芯片8155H的接口 8.3.1 8155H芯片介紹 8.3.2 8031單片機(jī)與8155H的接口及應(yīng)用 8.4 用MCS-51的串行口擴(kuò)展并行口 8.4.1 擴(kuò)展并行輸入口 8.4.2 擴(kuò)展并行輸出口 8.5 用74LSTTL電路擴(kuò)展并行I/O口 8.5.1 用74LS377擴(kuò)展一個(gè)8位并行輸出口 8.5.2 用74LS373擴(kuò)展一個(gè)8位并行輸入口 8.5.3 MCS-51單片機(jī)與總線驅(qū)動(dòng)器的接口 8.6 MCS-51與8253的接口 8.6.1 邏輯結(jié)構(gòu)與操作編址 8.6.2 8253工作方式和控制字定義 8.6.3 8253的工作方式與操作時(shí)序 8.6.4 8253的接口和編程實(shí)例 第九章 MCS-51與鍵盤、打印機(jī)的接口 9.1 LED顯示器接口原理 9.1.1 LED顯示器結(jié)構(gòu) 9.1.2 顯示器工作原理 9.2 鍵盤接口原理 9.2.1 鍵盤工作原理 9.2.2 單片機(jī)對(duì)非編碼鍵盤的控制方式 9.3 鍵盤/顯示器接口實(shí)例 9.3.1 利用8155H芯片實(shí)現(xiàn)鍵盤/顯示器接口 9.3.2 利用8031的串行口實(shí)現(xiàn)鍵盤/顯示器接口 9.3.3 利用專用鍵盤/顯示器接口芯片8279實(shí)現(xiàn)鍵盤/顯示器接口 9.4 MCS-51與液晶顯示器(LCD)的接口 9.4.1 LCD的基本結(jié)構(gòu)及工作原理 9.4.2 點(diǎn)陣式液晶顯示控制器HD61830介紹 9.5 MCS-51與微型打印機(jī)的接口 9.5.1 MCS-51與TPμp-40A/16A微型打印機(jī)的接口 9.5.2 MCS-51與GP16微型打印機(jī)的接口 9.5.3 MCS-51與PP40繪圖打印機(jī)的接口 9.6 MCS-51單片機(jī)與BCD碼撥盤的接口設(shè)計(jì) 9.6.1 BCD碼撥盤 9.6.2 BCD碼撥盤與單片機(jī)的接口 9.6.3 撥盤輸出程序 9.7 MCS-51單片機(jī)與CRT的接口 9.7.1 SCIBCRT接口板的主要特點(diǎn)及技術(shù)參數(shù) 9.7.2 SCIB接口板的工作原理 9.7.3 SCIB與MCS-51單片機(jī)的接口 9.7.4 SCIB的CRT顯示軟件設(shè)計(jì)方法 第十章 MCS-51與D/A、A/D的接口 10.1 有關(guān)DAC及ADC的性能指標(biāo)和選擇要點(diǎn) 10.1.1 性能指標(biāo) 10.1.2 選擇ABC和DAC的要點(diǎn) 10.2 MCS-51與DAC的接口 10.2.1 MCS-51與DAC0832的接口 10.2.2 MCS-51同DAC1020及DAC1220的接口 10.2.3 MCS-51同串行輸入的DAC芯片AD7543的接口 10.3 MCS-51與ADC的接口 10.3.1 MCS-51與5G14433(雙積分型)的接口 10.3.2 MCS-51與ICL7135(雙積分型)的接口 10.3.3 MCS-51與ICL7109(雙積分型)的接口 10.3.4 MCS-51與ADC0809(逐次逼近型)的接口 10.3.5 8031AD574(逐次逼近型)的接口 10.4 V/F轉(zhuǎn)換器接口技術(shù) 10.4.1 V/F轉(zhuǎn)換器實(shí)現(xiàn)A/D轉(zhuǎn)換的方法 10.4.2 常用V/F轉(zhuǎn)換器LMX31簡(jiǎn)介 10.4.3 V/F轉(zhuǎn)換器與MCS-51單片機(jī)接口 10.4.4 LM331應(yīng)用舉例 第十一章 標(biāo)準(zhǔn)串行接口及應(yīng)用 11.1 概述 11.2 串行通訊的接口標(biāo)準(zhǔn) 11.2.1 RS-232C接口 11.2.2 RS-422A接口 11.2.3 RS-485接口 11.2.4 各種串行接口性能比較 11.3 雙機(jī)串行通訊技術(shù) 11.3.1 單片機(jī)雙機(jī)通訊技術(shù) 11.3.2 PC機(jī)與8031單片機(jī)雙機(jī)通訊技術(shù) 11.4 多機(jī)串行通訊技術(shù) 11.4.1 單片機(jī)多機(jī)通訊技術(shù) 11.4.2 IBM-PC機(jī)與單片機(jī)多機(jī)通訊技術(shù) 11.5 串行通訊中的波特率設(shè)置技術(shù) 11.5.1 IBM-PC/XT系統(tǒng)中波特率的產(chǎn)生 11.5.2 MCS-51單片機(jī)串行通訊波特率的確定 11.5.3 波特率相對(duì)誤差范圍的確定方法 11.5.4 SMOD位對(duì)波特率的影響 第十二章 MCS-51的功率接口 12.1 常用功率器件 12.1.1 晶閘管 12.1.2 固態(tài)繼電器 12.1.3 功率晶體管 12.1.4 功率場(chǎng)效應(yīng)晶體管 12.2 開關(guān)型功率接口 12.2.1 光電耦合器驅(qū)動(dòng)接口 12.2.2 繼電器型驅(qū)動(dòng)接口 12.2.3 晶閘管及脈沖變壓器驅(qū)動(dòng)接口 第十三章 MCS-51單片機(jī)與日歷的接口設(shè)計(jì) 13.1 概述 13.2 MCS-51單片機(jī)與實(shí)時(shí)日歷時(shí)鐘芯片MSM5832的接口設(shè)計(jì) 13.2.1 MSM5832性能及引腳說明 13.2.2 MSM5832時(shí)序分析 13.2.3 8031單片機(jī)與MSM5832的接口設(shè)計(jì) 13.3 MCS-51單片機(jī)與實(shí)時(shí)日歷時(shí)鐘芯片MC146818的接口設(shè)計(jì) 13.3.1 MC146818性能及引腳說明 13.3.2 MC146818芯片地址分配及各單元的編程 13.3.3 MC146818的中斷 13.3.4 8031單片機(jī)與MC146818的接口電路設(shè)計(jì) 13.3.5 8031單片機(jī)與MC146818的接口軟件設(shè)計(jì) 第十四章 MCS-51程序設(shè)計(jì)及實(shí)用子程序 14.1 查表程序設(shè)計(jì) 14.2 散轉(zhuǎn)程序設(shè)計(jì) 14.2.1 使用轉(zhuǎn)移指令表的散轉(zhuǎn)程序 14.2.2 使用地地址偏移量表的散轉(zhuǎn)程序 14.2.3 使用轉(zhuǎn)向地址表的散轉(zhuǎn)程序 14.2.4 利用RET指令實(shí)現(xiàn)的散轉(zhuǎn)程序 14.3 循環(huán)程序設(shè)計(jì) 14.3.1 單循環(huán) 14.3.2 多重循環(huán) 14.4 定點(diǎn)數(shù)運(yùn)算程序設(shè)計(jì) 14.4.1 定點(diǎn)數(shù)的表示方法 14.4.2 定點(diǎn)數(shù)加減運(yùn)算 14.4.3 定點(diǎn)數(shù)乘法運(yùn)算 14.4.4 定點(diǎn)數(shù)除法 14.5 浮點(diǎn)數(shù)運(yùn)算程序設(shè)計(jì) 14.5.1 浮點(diǎn)數(shù)的表示 14.5.2 浮點(diǎn)數(shù)的加減法運(yùn)算 14.5.3 浮點(diǎn)數(shù)乘除法運(yùn)算 14.5.4 定點(diǎn)數(shù)與浮點(diǎn)數(shù)的轉(zhuǎn)換 14.6 碼制轉(zhuǎn)換 ……
標(biāo)簽: MCS 51 單片機(jī) 應(yīng)用設(shè)計(jì)
上傳時(shí)間: 2013-11-06
上傳用戶:xuanjie
四位數(shù)碼管從一數(shù)到F,LED就向下移一位c語言代碼
上傳時(shí)間: 2014-12-25
上傳用戶:1214209695
HT45F23 MCU 含有兩個(gè)運(yùn)算放大器,OPA1 和OPA2,可用於用戶特定的模擬信號(hào)處理,通 過控制暫存器,OPA 相關(guān)的應(yīng)用可以很容易實(shí)現(xiàn)。本文主要介紹OPA 的操作,暫存器設(shè)定 以及基本OPA 應(yīng)用,例如:同相放大器、反相放大器和電壓跟隨器。 HT45F23 運(yùn)算放大器OPA1/OPA2 具有多個(gè)開關(guān),輸入路徑可選以及多種參考電壓選擇,此 外OPA2 內(nèi)部有8 種增益選項(xiàng),直接通過軟體設(shè)定。適應(yīng)於各種廣泛的應(yīng)用。
上傳時(shí)間: 2013-11-21
上傳用戶:immanuel2006
基于HT47C20L的R-F型低電壓八位Mask單片機(jī) HT47C20L 是8 位高性能精簡(jiǎn)指令集單片機(jī)。單指令周期和兩級(jí)流水線結(jié)構(gòu),使其適合高速應(yīng)用的場(chǎng)合。特別適用于帶LCD 的低功耗產(chǎn)品,例如:電子計(jì)算機(jī)、時(shí)鐘計(jì)數(shù)器、游戲產(chǎn)品、電子秤、玩具、溫度計(jì)、濕度計(jì)、體溫計(jì)、電容測(cè)量?jī)x,以及其它掌上型LCD 產(chǎn)品,尤其是電池供電的系統(tǒng)。
上傳時(shí)間: 2013-11-13
上傳用戶:assef
基于HT45R37V的低功耗C/R-F型八位OTP單片機(jī) HT45R37V 是一款低功耗C/R-F 型具有8 位高性能精簡(jiǎn)指令集的單片機(jī),專門為需要VFD 功能的產(chǎn)品而設(shè)計(jì)。作為一款C/R-F 型的單片機(jī),它可以連接9 個(gè)外部電容型或電阻型傳感器,并把它們的電容值或電阻值轉(zhuǎn)換成相應(yīng)的頻率進(jìn)行處理。此外,單片機(jī)帶有內(nèi)部A/D 轉(zhuǎn)換器,能夠直接與模擬信號(hào)相連接,且它還集成了一個(gè)雙通道的脈沖寬度調(diào)節(jié)器,用于控制外部的馬達(dá)和LED 燈等。這款單片機(jī)是專門為VFD 產(chǎn)品應(yīng)用而設(shè)計(jì)的,它能直接驅(qū)動(dòng)VFD 面板。
上傳時(shí)間: 2013-10-16
上傳用戶:packlj
基于HT45R37的低功耗C/R-F型八位OTP單片機(jī) HT45R37 是一款低功耗C/R-F 型具有8 位高性能精簡(jiǎn)指令集的單片機(jī)。作為一款C/R-F 型的單片機(jī),它可以連接16 個(gè)外部電容/電阻式傳感器,并把它們的電容值或電阻值轉(zhuǎn)換成相應(yīng)的頻率進(jìn)行處理。此外,單片機(jī)帶有內(nèi)部A/D 轉(zhuǎn)換器,能夠直接與模擬信號(hào)相連接,且它還集成了雙通道的脈沖寬度調(diào)節(jié)器,用于控制外部的馬達(dá)和LED 燈等。
上傳時(shí)間: 2013-11-23
上傳用戶:chenlong
HT45R35VC/R-F型八位OTP單片機(jī) HT45R35V 是一款C/R-F 型具有8 位高性能精簡(jiǎn)指令集的單片機(jī),專門為需要VFD 功能的產(chǎn)品而設(shè)計(jì)。 秉承HOLTEK MCU 一般特性,該單片機(jī)帶有暫停和喚醒功能,振蕩器選項(xiàng)等等,這些都保證使用者的應(yīng)用只需極少的外部元器件便可實(shí)現(xiàn)。這款單片機(jī)專門為直接與VFD 面板相連的VFD 應(yīng)用而設(shè)計(jì)。集成C/R-F 功能,外加功耗低、性能良好、I/O 使用靈活、成本低等優(yōu)勢(shì),使這款單片機(jī)可以廣泛應(yīng)用于VFD 相關(guān)產(chǎn)品中,例如家電定時(shí)產(chǎn)品,各種消費(fèi)產(chǎn)品,子系統(tǒng)控制器,其他家電應(yīng)用等方面。
上傳時(shí)間: 2013-11-07
上傳用戶:semi1981
SPMC75F2413A在三相交流感應(yīng)電機(jī)的開環(huán)V/F控制的應(yīng)用:系統(tǒng)輸入電源電壓為AC110V/AC220V,經(jīng)全波整流后供系統(tǒng)使用。系統(tǒng)使用Sunplus公司的SPMC75F2413A產(chǎn)生AC三相異步電機(jī)的VVVF控制所需的SPWM信號(hào),并完成系統(tǒng)控制。使用三菱公司的智能功率模塊PS21865實(shí)現(xiàn)電機(jī)的功率驅(qū)動(dòng)。在AC220V輸入時(shí),系統(tǒng)最大能驅(qū)動(dòng)1.5KW的負(fù)載。系統(tǒng)的變頻區(qū)間為2Hz~200Hz。
標(biāo)簽: 2413A F2413 SPMC 2413
上傳時(shí)間: 2013-11-06
上傳用戶:924484786
離散傅里葉變換,(DFT)Direct Fouriet Transformer(PPT課件) 一、序列分類對(duì)一個(gè)序列長(zhǎng)度未加以任何限制,則一個(gè)序列可分為: 無限長(zhǎng)序列:n=-∞~∞或n=0~∞或n=-∞~ 0 有限長(zhǎng)序列:0≤n≤N-1有限長(zhǎng)序列在數(shù)字信號(hào)處理是很重要的一種序列。由于計(jì)算機(jī)容量的限制,只能對(duì)過程進(jìn)行逐段分析。二、DFT引入由于有限長(zhǎng)序列,引入DFT(離散付里葉變換)。DFT它是反映了“有限長(zhǎng)”這一特點(diǎn)的一種有用工具。DFT變換除了作為有限長(zhǎng)序列的一種付里葉表示,在理論上重要之外,而且由于存在著計(jì)算機(jī)DFT的有效快速算法--FFT,因而使離散付里葉變換(DFT)得以實(shí)現(xiàn),它使DFT在各種數(shù)字信號(hào)處理的算法中起著核心的作用。三、本章主要討論離散付里葉變換的推導(dǎo)離散付里葉變換的有關(guān)性質(zhì)離散付里葉變換逼近連續(xù)時(shí)間信號(hào)的問題第二節(jié)付里葉變換的幾種形式傅 里 葉 變 換 : 建 立 以 時(shí) 間 t 為 自 變 量 的 “ 信 號(hào) ” 與 以 頻 率 f為 自 變 量 的 “ 頻 率 函 數(shù) ”(頻譜) 之 間 的 某 種 變 換 關(guān) 系 . 所 以 “ 時(shí) 間 ” 或 “ 頻 率 ” 取 連 續(xù) 還 是 離 散 值 , 就 形 成 各 種 不 同 形 式 的 傅 里 葉 變 換 對(duì) 。, 在 深 入 討 論 離 散 傅 里 葉 變 換 D F T 之 前 , 先 概 述 四種 不 同 形式 的 傅 里 葉 變 換 對(duì) . 一、四種不同傅里葉變換對(duì)傅 里 葉 級(jí) 數(shù)(FS):連 續(xù) 時(shí) 間 , 離 散 頻 率 的 傅 里 葉 變 換 。連 續(xù) 傅 里 葉 變 換(FT):連 續(xù) 時(shí) 間 , 連 續(xù) 頻 率 的 傅 里 葉 變 換 。序 列 的 傅 里 葉 變 換(DTFT):離 散 時(shí) 間 , 連 續(xù) 頻 率 的 傅 里 葉 變 換.離 散 傅 里 葉 變 換(DFT):離 散 時(shí) 間 , 離 散 頻 率 的 傅 里 葉 變 換1.傅 里 葉 級(jí) 數(shù)(FS)周期連續(xù)時(shí)間信號(hào) 非周期離散頻譜密度函數(shù)。 周期為Tp的周期性連續(xù)時(shí)間函數(shù) x(t) 可展成傅里葉級(jí)數(shù)X(jkΩ0) ,是離散非周期性頻譜 , 表 示為:例子通過以下 變 換 對(duì) 可 以 看 出 時(shí) 域 的 連 續(xù) 函 數(shù) 造 成 頻 域 是 非 周 期 的 頻 譜 函 數(shù) , 而 頻 域 的 離 散 頻 譜 就 與 時(shí) 域 的 周 期 時(shí) 間 函 數(shù) 對(duì) 應(yīng) . (頻域采樣,時(shí)域周期延 拓)2.連 續(xù) 傅 里 葉 變 換(FT)非周期連續(xù)時(shí)間信號(hào)通過連續(xù)付里葉變換(FT)得到非周期連續(xù)頻譜密度函數(shù)。
標(biāo)簽: Fouriet Direct DFT Tr
上傳時(shí)間: 2013-11-19
上傳用戶:fujiura
單片機(jī)音樂中音調(diào)和節(jié)拍的確定方法:調(diào)號(hào)-音樂上指用以確定樂曲主音高度的符號(hào)。很明顯一個(gè)八度就有12個(gè)半音。A、B、C、D、E、F、G。經(jīng)過聲學(xué)家的研究,全世界都用這些字母來表示固定的音高。比如,A這個(gè)音,標(biāo)準(zhǔn)的音高為每秒鐘振動(dòng)440周。 升C調(diào):1=#C,也就是降D調(diào):1=BD;277(頻率)升D調(diào):1=#D,也就是降E調(diào):1=BE;311升F調(diào):1=#F,也就是降G調(diào):1=BG;369升G調(diào):1=#G,也就是降A(chǔ)調(diào):1=BA;415升A調(diào):1=#A,也就是降B調(diào):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,就是說,這首歌曲的“導(dǎo)”要唱得同A一樣高,人們也把這首歌曲叫做A調(diào)歌曲,或叫“唱A調(diào)”。1=C,就是說,這首歌曲的“導(dǎo)”要唱得同C一樣高,或者說“這歌曲唱C調(diào)”。同樣是“導(dǎo)”,不同的調(diào)唱起來的高低是不一樣的。各調(diào)的對(duì)應(yīng)的標(biāo)準(zhǔn)頻率為: 單片機(jī)演奏音樂時(shí)音調(diào)和節(jié)拍的確定方法 經(jīng)常看到一些剛學(xué)單片機(jī)的朋友對(duì)單片機(jī)演奏音樂比較有興趣,本人也曾是這樣。在此,本人將就這方面的知識(shí)做一些簡(jiǎn)介,但愿能對(duì)單片機(jī)演奏音樂比較有興趣而又不知其解的朋友能有所啟迪。 一般說來,單片機(jī)演奏音樂基本都是單音頻率,它不包含相應(yīng)幅度的諧波頻率,也就是說不能象電子琴那樣能奏出多種音色的聲音。因此單片機(jī)奏樂只需弄清楚兩個(gè)概念即可,也就是“音調(diào)”和“節(jié)拍”。音調(diào)表示一個(gè)音符唱多高的頻率,節(jié)拍表示一個(gè)音符唱多長(zhǎng)的時(shí)間。 在音樂中所謂“音調(diào)”,其實(shí)就是我們常說的“音高”。在音樂中常把中央C上方的A音定為標(biāo)準(zhǔn)音高,其頻率f=440Hz。當(dāng)兩個(gè)聲音信號(hào)的頻率相差一倍時(shí),也即f2=2f1時(shí),則稱f2比f1高一個(gè)倍頻程, 在音樂中1(do)與 ,2(來)與 ……正好相差一個(gè)倍頻程,在音樂學(xué)中稱它相差一個(gè)八度音。在一個(gè)八度音內(nèi),有12個(gè)半音。以1—i八音區(qū)為例, 12個(gè)半音是: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個(gè)音階的分度基本上是以對(duì)數(shù)關(guān)系來劃分的。如果我們只要知道了這十二個(gè)音符的音高,也就是其基本音調(diào)的頻率,我們就可根據(jù)倍頻程的關(guān)系得到其他音符基本音調(diào)的頻率。 知道了一個(gè)音符的頻率后,怎樣讓單片機(jī)發(fā)出相應(yīng)頻率的聲音呢?一般說來,常采用的方法就是通過單片機(jī)的定時(shí)器定時(shí)中斷,將單片機(jī)上對(duì)應(yīng)蜂鳴器的I/O口來回取反,或者說來回清零,置位,從而讓蜂鳴器發(fā)出聲音,為了讓單片機(jī)發(fā)出不同頻率的聲音,我們只需將定時(shí)器予置不同的定時(shí)值就可實(shí)現(xiàn)。那么怎樣確定一個(gè)頻率所對(duì)應(yīng)的定時(shí)器的定時(shí)值呢?以標(biāo)準(zhǔn)音高A為例: A的頻率f = 440 Hz,其對(duì)應(yīng)的周期為:T = 1/ f = 1/440 =2272μs 由上圖可知,單片機(jī)上對(duì)應(yīng)蜂鳴器的I/O口來回取反的時(shí)間應(yīng)為:t = T/2 = 2272/2 = 1136μs這個(gè)時(shí)間t也就是單片機(jī)上定時(shí)器應(yīng)有的中斷觸發(fā)時(shí)間。一般情況下,單片機(jī)奏樂時(shí),其定時(shí)器為工作方式1,它以振蕩器的十二分頻信號(hào)為計(jì)數(shù)脈沖。設(shè)振蕩器頻率為f0,則定時(shí)器的予置初值由下式來確定: t = 12 *(TALL – THL)/ f0 式中TALL = 216 = 65536,THL為定時(shí)器待確定的計(jì)數(shù)初值。因此定時(shí)器的高低計(jì)數(shù)器的初值為: TH = THL / 256 = ( TALL – t* f0/12) / 256 TL = THL % 256 = ( TALL – t* f0/12) %256 將t=1136μs代入上面兩式(注意:計(jì)算時(shí)應(yīng)將時(shí)間和頻率的單位換算一致),即可求出標(biāo)準(zhǔn)音高A在單片機(jī)晶振頻率f0=12Mhz,定時(shí)器在工作方式1下的定時(shí)器高低計(jì)數(shù)器的予置初值為 : TH440Hz = (65536 – 1136 * 12/12) /256 = FBH TL440Hz = (65536 – 1136 * 12/12)%256 = 90H根據(jù)上面的求解方法,我們就可求出其他音調(diào)相應(yīng)的計(jì)數(shù)器的予置初值。 音符的節(jié)拍我們可以舉例來說明。在一張樂譜中,我們經(jīng)常會(huì)看到這樣的表達(dá)式,如1=C 、1=G …… 等等,這里1=C,1=G表示樂譜的曲調(diào),和我們前面所談的音調(diào)有很大的關(guān)聯(lián), 、 就是用來表示節(jié)拍的。以 為例加以說明,它表示樂譜中以四分音符為節(jié)拍,每一小結(jié)有三拍。比如: 其中1 、2 為一拍,3、4、5為一拍,6為一拍共三拍。1 、2的時(shí)長(zhǎng)為四分音符的一半,即為八分音符長(zhǎng),3、4的時(shí)長(zhǎng)為八分音符的一半,即為十六分音符長(zhǎng),5的時(shí)長(zhǎng)為四分音符的一半,即為八分音符長(zhǎng),6的時(shí)長(zhǎng)為四分音符長(zhǎng)。那么一拍到底該唱多長(zhǎng)呢?一般說來,如果樂曲沒有特殊說明,一拍的時(shí)長(zhǎng)大約為400—500ms 。我們以一拍的時(shí)長(zhǎng)為400ms為例,則當(dāng)以四分音符為節(jié)拍時(shí),四分音符的時(shí)長(zhǎng)就為400ms,八分音符的時(shí)長(zhǎng)就為200ms,十六分音符的時(shí)長(zhǎng)就為100ms。可見,在單片機(jī)上控制一個(gè)音符唱多長(zhǎng)可采用循環(huán)延時(shí)的方法來實(shí)現(xiàn)。首先,我們確定一個(gè)基本時(shí)長(zhǎng)的延時(shí)程序,比如說以十六分音符的時(shí)長(zhǎng)為基本延時(shí)時(shí)間,那么,對(duì)于一個(gè)音符,如果它為十六分音符,則只需調(diào)用一次延時(shí)程序,如果它為八分音符,則只需調(diào)用二次延時(shí)程序,如果它為四分音符,則只需調(diào)用四次延時(shí)程序,依次類推。通過上面關(guān)于一個(gè)音符音調(diào)和節(jié)拍的確定方法,我們就可以在單片機(jī)上實(shí)現(xiàn)演奏音樂了。具體的實(shí)現(xiàn)方法為:將樂譜中的每個(gè)音符的音調(diào)及節(jié)拍變換成相應(yīng)的音調(diào)參數(shù)和節(jié)拍參數(shù),將他們做成數(shù)據(jù)表格,存放在存儲(chǔ)器中,通過程序取出一個(gè)音符的相關(guān)參數(shù),播放該音符,該音符唱完后,接著取出下一個(gè)音符的相關(guān)參數(shù)……,如此直到播放完畢最后一個(gè)音符,根據(jù)需要也可循環(huán)不停地播放整個(gè)樂曲。另外,對(duì)于樂曲中的休止符,一般將其音調(diào)參數(shù)設(shè)為FFH,F(xiàn)FH,其節(jié)拍參數(shù)與其他音符的節(jié)拍參數(shù)確定方法一致,樂曲結(jié)束用節(jié)拍參數(shù)為00H來表示。下面給出部分音符(三個(gè)八度音)的頻率以及以單片機(jī)晶振頻率f0=12Mhz,定時(shí)器在工作方式1下的定時(shí)器高低計(jì)數(shù)器的予置初值 : C調(diào)音符 頻率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調(diào)音符 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調(diào)音符 頻率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
上傳時(shí)間: 2013-10-20
上傳用戶:哈哈haha
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1