亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

功率半導(dǎo)體

  • 世界著名單片機廠家簡介

    世界著名廠家單片機簡介1.Motorola 單片機:Motorola是世界上最大的單片機廠商,品種全,選擇余地大,新產品多,在8位機方面有68HC05和升級產品68HC08,68HC05有30多個系列200多個品種,產量超過20億片.8位增強型單片機68HC11也有30多個品種,年產量1億片以上,升級產品有68HC12.16位單片機68HC16也有十多個品種.32位單片機683XX系列也有幾十個品種.近年來以PowerPC,Codfire,M.CORE等作為CPU,用DSP作為輔助模塊集成的單片機也紛紛推出,目前仍是單片機的首選品牌.Motorola單片機特點之一是在同樣的速度下所用的時鐘較Intel類單片機低的多因而使得高頻噪聲低,抗干擾能力強,更適合用于工控領域以及惡劣環境.Motorola 8位單片機過去策略是掩膜為主,最近推出OTP計劃以適應單片機的發展,在32位機上,M.CORE在性能和功耗上都勝過ARM7.2.Microchip 單片機:Microchip 單片機是市場份額增長最快的單片機.他的主要產品是16C系列8位單片機,CPU采用RISC結構,僅33條指令,運行速度快,且以低價位著稱,一般單片機價格都在1美元以下.Microchip 單片機沒有掩膜產品,全部都是OTP器件(現已推出FLASH型單片機).Microchip強調節約成本的最優化設計,是使用量大,檔次低,價格敏感的產品.3.Scenix單片機:Scenix單片機的I/O模塊最有創意.I/O模塊的集成與組合技術是單片機技術不可缺少的重要方面.除傳統的I/O功能模塊如并行I/O,URT,SPI,I2C,A/D,PWM,PLL,DTMF等,新的I/O模塊不斷出現,如USB,CAN,J1850,最具代表的是Motorola 32位單片機,它集成了包括各種通信協議在內的I/O模塊,而Scenix單片機在I/O模塊的處理上引入了虛擬I/O的概念. Scenix單片機采用了RISC結構的CPU,使CPU最高工作頻率達50MHz.運算速度接近50MIPS.有了強有力的CPU,各種I/O功能便可以用軟件的辦法模擬.單片機的封裝采用20/28引腳.公司提供各種I/O的庫函數,用于實現各種I/O模塊的功能.這些軟件完成的模塊包括多路UART,多種A/D,PWM,SPI,DTMF,FSK,LCD驅動等,這些都是通常用硬件實現起來相當復雜的模塊.4.NEC單片機:NEC單片機自成體系,以8位機78K系列產量最高,也有16位,32位單片機.16位單片機采用內部倍頻技術,以降低外時鐘頻率.有的單片機采用內置操作系統.NEC的銷售策略注重服務大客戶,并投入相當大的技術力量幫助大客戶開發新產品.5.東芝單片機:東芝單片機從4位倒64位,門類齊全.4位機在家電領域仍有較大市場.8位機主要有870系列,90系列等.該類單片機允許使用慢模式,采用32KHz時鐘功耗低至10uA數量級.CPU內部多組寄存器的使用,使得中斷響應與處理更加快捷.東芝公司的32位機采用MIPS3000 ARISC的CPU結構,面向VCD,數字相機,圖象處理市場.6.富士通單片機:富士通也有8位,16位和32位單片機,但是8位機使用的是16位的CPU內核.也就是說8位機與16位機指令相同,使得開發比較容易.8位機有名是MB8900系列,16位機有MB90系列.富士通注重服務大公司,大客戶,幫助大客戶開發產品.7.Epson 單片機:Epson公司以擅長制造液晶顯示器著稱,故Epson單片機主要為該公司生產的LCD配套.其單片機的LCD驅動做的特別好.在低電壓,低功耗方面也很有特色.目前0.9V供電的單片機已經上市,不久LCD顯示手表將使用0.5V供電.

    標簽: 名單 片機

    上傳時間: 2014-12-28

    上傳用戶:leyesome

  • MCS-51單片機的系統擴展技術

    MCS-51單片機的系統擴展技術:在MCS-51單片機的的內部雖已集成了很多資源,但這類單片機屬于一種“通用”的單片機,單片機內部的各種資源都是折衷配置的,如片內程序存儲器、數據存儲器的容量都不大,并行I/O端口的數量也不很多,此外,在有些應用中,片內定時器、中斷、串行口等也顯得不足,還有一些功能是基本型MCS-51單片機所沒有的,比如A/D轉換,D/A轉換等等。實際應用中的要求是各種各樣的,如果用到了MCS-51單片機內部所沒有資源(如A/D,D/A等),或者單片機內部雖有,但卻不夠使用的資源,就要根據需要,對單片機進行擴展,以增加所需要的功能。MCS-51單片機所可能需要擴展的芯片種類非常多,但這里并不面面俱到,主要是通過對外擴程序存儲器、數據存儲器、I/O接口、A/D和D/A的介紹,使讀者熟悉單片機接口的一般方法。實際上,如果對于這些常規的擴展芯片能夠熟練地掌握和應用,并能理解其擴展的原理,拿到任何一塊需要擴展的芯片,只要有這塊芯片的數據手冊或接口時序之類的資料,就能自行設計芯片的接口電路部份。1. MCS-51單片機擴展的原理MCS-51單片機被設計成具有通用計算機那樣的外部總線結構,所以用MCS-51單片機進行擴展很方便,下面首先了解片外總線的工作原理。

    標簽: MCS 51 單片機

    上傳時間: 2014-04-28

    上傳用戶:古谷仁美

  • 數字I/O介紹

    數字I/O腳有專用和復用。數字I/O腳的功能通過9個16位控制寄存器來控制。控制寄存器分為兩類:(1)I/O復用控制寄存器(MCRX),來選擇I/O腳是外設功能還是I/O功能。(2)數據方向控制寄存器(PXDATDIR):控制雙向I/O腳的數據和數據方向。注意:數字I/O腳是通過映射在數據空間的控制寄存器來控制的,與器件的I/O空間無任何關系。240X/240XA多達41只數字I/O腳,多數具有復用功能。

    標簽: 數字

    上傳時間: 2013-10-31

    上傳用戶:qimingxing130

  • 《微機原理及應用》課程教程 (word文檔)

     《微機原理及應用》課程教案目    錄 下載WORD文檔前    言 下載WORD文檔第一章 51系列單片機概述 下載WORD文檔     第一節 概述     第二節 51系列單片機分類     思考題與習題 第二章 MCS-51系列單片機組成及工作原理 下載WORD文檔     第一節 MCS-51系列單片機組成     第二節 8051的內部數據存儲器(內部RAM)     第三節 8051的內部程序存儲器(內部ROM)     第四節 MCS-51系列單片機典型芯片的外部引腳功能    第五節 并行輸入/輸出口     第六節 CPU的時鐘電路和時序定時單位     第七節 單片機指令執行的過程     思考題與習題 第三章 指令系統 下載WORD文檔     第一節 指令格式和尋址方式     第二節 指令系統     思考題與習題 第四章 算法與結構程序設計 下載WORD文檔     第一節 算法     第二節 程序基本結構     第三節 結構化程序設計     第四節 匯編語言程序設計舉例     思考題與習題 第五章 中斷 下載WORD文檔     第一節 中斷技術概述     第二節 8051中斷系統     第三節 中斷控制     第四節 中斷響應     第五節 中斷系統應用舉例     思考題與習題 第六章 定時器/計數器 下載WORD文檔     第一節 概述     第二節 定時器/計數器基本結構 工作方式及應用     思考題與習題 第七章 8051單片機系統擴展與接口技術 下載WORD文檔     第一節 8051單片機系統擴展概述     第二節 單片機外部存儲器擴展     第三節 單片機輸入/輸出(I/O)口擴展     第四節 LED顯示器接口電路及顯示程序     第五節 單片機鍵盤接口技術     第六節 單片機與數模(D/A)及模數(A/D)轉換器的接口及應用     思考題與習題 第八章 8051單片機的異步串行通信技術 下載WORD文檔     第一節 概述     第二節 8051串行口基本結構     第三節 8051串行通信工作方式及應用     第四節 多機通信原理 下載WORD文檔     思考題與習題 第九章 單片機應用舉例 下載WORD文檔     第一節 單片機數據采集系統     第二節 電機轉速測量     第三節 步進電機控制系統     第四節 機器人三覺機械手信號處理及控制算法    思考題與習題 第十章 單片機與字符式液晶顯示模塊連接技術 下載WORD文檔     第一節 字符式液晶顯示模塊簡介     第二節 模塊指令系統     第三節 模塊與8051單片機的接口     第四節 模塊字符顯示舉例     第五節 自定義字符顯示     思考題與習題 附錄一 計算機數的運算基礎 下載WORD文檔     第一節 進位計數制及相互轉換     第二節 計算機中數和字符的表示附錄二 美國標準信息交換碼(ASCII)字符表附錄三 MCS-51指令表 下載WORD文檔

    標簽: word 微機原理 教程 文檔

    上傳時間: 2014-04-16

    上傳用戶:hhkpj

  • 用PIC16C73 單片機實現十二位A/D轉換器

    介紹用PIC16C73 自帶的八位A/D 轉換器擴展為十二位A/D 轉換器,給出了具體的設計方案和程序流程。它是用以 PIC16C73 為MCU 構成的海水有機磷測控儀A/D 轉換部分的一種解決方案。為監測海洋生態環境,研制了用于海水有機磷農藥現場監測的生物傳感器。為測定生物傳感器的信號,使傳感器可用于船載及臺站的海洋生態環境現場自動監測,需要對整個的采樣和排液裝置進行控制以及對傳感器來的信號進行實時采集處理,形成有機磷的濃度傳給上位機。為此,開發了以PIC16C73 單片機為核心的小型測控儀器,很好的完成了上述功能。PIC1673 單片機自帶8 位的A/D 轉換器,但不能滿足系統對精度的要求,本設計在單片機自帶8 位A/D 基礎上加少量的硬件和軟件開銷,使其擴展為十二位A/D 轉換器,滿足了系統的要求。

    標簽: PIC 16C C73 16

    上傳時間: 2013-10-30

    上傳用戶:a296386173

  • 波形發生器,含原理圖+電路圖+源程序

    含原理圖+電路圖+程序的波形發生器:在工作中,我們常常會用到波形發生器,它是使用頻度很高的電子儀器?,F在的波形發生器都采用單片機來構成。單片機波形發生器是以單片機核心,配相應的外圍電路和功能軟件,能實現各種波形發生的應用系統,它由硬件部分和軟件部分組成,硬件是系統的基礎,軟件則是在硬件的基礎上,對其合理的調配和使用,從而完成波形發生的任務。 波形發生器的技術指標:(1) 波形類型:方型、正弦波、三角波、鋸齒波;(2) 幅值電壓:1V、2V、3V、4V、5V;(3) 頻率值:10HZ、20HZ、50HZ、100HZ、200HZ、500HZ、1KHZ;(4) 輸出極性:雙極性操作設計1、 機器通電后,系統進行初始化,LED在面板上顯示6個0,表示系統處于初始狀態,等待用戶輸入設置命令,此時,無任何波形信號輸出。2、 用戶按下“F”、“V”、“W”,可以分別進入頻率,幅值波形設置,使系統進入設置狀態,相應的數碼管顯示“一”,此時,按其它鍵,無效;3、 在進入某一設置狀態后,輸入0~9等數字鍵,(數字鍵僅在設置狀態時,有效)為欲輸出的波形設置相應參數,LED將參數顯示在面板上;4、 如果在設置中,要改變已設定的參數,可按下“CL”鍵,清除所有已設定參數,系統恢復初始狀態,LED顯示6個0,等待重新輸入命令;5、 當必要的參數設定完畢后,所有參數顯示于LED上,用戶按下“EN”鍵,系統會將各波形參數傳遞到波形產生模塊中,以便控制波形發生,實現不同頻率,不同電壓幅值,不同類型波形的輸出;6、 用戶按下“EN”鍵后,波形發生器開始輸出滿足參數的波形信號,面板上相應類型的運行指示燈閃爍,表示波形正在輸出,LED顯示波形類型編號,頻率值、電壓幅值等波形參數;7、 波形發生器在輸出信號時,按下任意一個鍵,就停止波形信號輸出,等待重新設置參數,設置過程如上所述,如果不改變參數,可按下“EN”鍵,繼續輸出原波形信號;8、 要停止波形發生器的使用,可按下復位按鈕,將系統復位,然后關閉電源。硬件組成部分通過綜合比較,決定選用獲得廣泛應用,性能價格高的常用芯片來構成硬件電路。單片機采用MCS-51系列的89C51(一塊),74LS244和74LS373(各一塊),反相驅動器 ULN2803A(一塊),運算放大器 LM324(一塊)  波形發生器的硬件電路由單片機、鍵盤顯示器接口電路、波形轉換(D/ A)電路和電源線路等四部分構成。1.單片機電路功能:形成掃描碼,鍵值識別,鍵功能處理,完成參數設置;形成顯示段碼,向LED顯示接口電路輸出;產生定時中斷;形成波形的數字編碼,并輸出到D/A接口電路;如電路原理圖所示: 89C51的P0口和P2口作為擴展I/O口,與8255、0832、74LS373相連接,可尋址片外的寄存器。單片機尋址外設,采用存儲器映像方式,外部接口芯片與內部存儲器統一編址,89C51提供16根地址線P0(分時復用)和P2,P2口提供高8位地址線,P0口提供低8位地址線。P0口同時還要負責與8255,0832的數據傳遞。P2.7是8255的片選信號,P2.6是0832(1)的片選,P2.5是0832(2)的片選,低電平有效,P0.0、P0.1經過74LS373鎖存后,送到8255的A1、A2作,片內A口,B口,C口,控制口等寄存器的字選。89C51的P1口的低4位連接4只發光三極管,作為波形類型指示燈,表示正在輸出的波形是什么類型。單片機89C51內部有兩個定時器/計數器,在波形發生器中使用T0作為中斷源。不同的頻率值對應不同的定時初值,定時器的溢出信號作為中斷請求??刂贫〞r器中斷的特殊功能寄存器設置如下:定時控制寄存器TCON=(00010000)工作方式選擇寄存器(TMOD)=(00000000)中斷允許控制寄存器(IE)=(10000010)2、鍵盤顯示器接口電路功能:驅動6位數碼管動態顯示;           提供響應界面;           掃面鍵盤;           提供輸入按鍵。由并口芯片8255,鎖存器74LS273,74LS244,反向驅動器ULN2803A,6位共陰極數碼管(LED)和4×4行列式鍵盤組成。8255的C口作為鍵盤的I/O接口,C口的低4位輸出到掃描碼,高4位作為輸入行狀態,按鍵的分布如圖所示。8255的A口作為LED段碼輸出口,與74LS244相連接,B口作為LED的位選信號輸出口,與ULN2803A相連接。8255內部的4個寄存器地址分配如下:控制口:7FFFH , A口:7FFFCH , B口:7FFDH ,  C口:7FFEH    3、D/A電路功能:將波形樣值的數字編碼轉換成模擬值;完成單極性向雙極性的波形輸出;構成由兩片0832和一塊LM324運放組成。0832(1)是參考電壓提供者,單片機向0832(1)內的鎖存器送數字編碼,不同的編碼會產生不同的輸出值,在本發生器中,可輸出1V、2V、3V、4V、5V等五個模擬值,這些值作為0832(2)的參考電壓,使0832(2)輸出波形信號時,其幅度是可調的。0832(2)用于產生各種波形信號,單片機在波形產生程序的控制下,生成波形樣值編碼,并送到0832(2)中的鎖存器,經過D/A轉換,得到波形的模擬樣值點,假如N個點就構成波形的一個周期,那么0832(2)輸出N個樣值點后,樣值點形成運動軌跡,就是波形信號的一個周期。重復輸出N個點后,由此成第二個周期,第三個周期……。這樣0832(2)就能連續的輸出周期變化的波形信號。運放A1是直流放大器,運放A2是單極性電壓放大器,運放A3是雙極性驅動放大器,使波形信號能帶得起負載。地址分配:0832(1):DFFFH ,0832(2):BFFFH4、電源電路:功能:為波形發生器提供直流能量;構成由變壓器、整流硅堆,穩壓塊7805組成。220V的交流電,經過開關,保險管(1.5A/250V),到變壓器降壓,由220V降為10V,通過硅堆將交流電變成直流電,對于諧波,用4700μF的電解電容給予濾除。為保證直流電壓穩定,使用7805進行穩壓。最后,+5V電源配送到各用電負載。

    標簽: 波形發生器 原理圖 電路圖 源程序

    上傳時間: 2013-11-08

    上傳用戶:685

  • 用單片機AT89C51改造普通雙桶洗衣機

    用單片機AT89C51改造普通雙桶洗衣機:AT89C2051作為AT89C51的簡化版雖然去掉了P0、P2等端口,使I/O口減少了,但是卻增加了一個電壓比較器,因此其功能在某些方面反而有所增強,如能用來處理模擬量、進行簡單的模數轉換等。本文利用這一功能設計了一個數字電容表,可測量容量小于2微法的電容器的容量,采用3位半數字顯示,最大顯示值為1999,讀數單位統一采用毫微法(nf),量程分四檔,讀數分別乘以相應的倍率。電路工作原理  本數字電容表以電容器的充電規律作為測量依據,測試原理見圖1。電源電路圖。 壓E+經電阻R給被測電容CX充電,CX兩端原電壓隨充電時間的增加而上升。當充電時間t等于RC時間常數τ時,CX兩端電壓約為電源電壓的63.2%,即0.632E+。數字電容表就是以該電壓作為測試基準電壓,測量電容器充電達到該電壓的時間,便能知道電容器的容量。例如,設電阻R的阻值為1千歐,CX兩端電壓上升到0.632E+所需的時間為1毫秒,那么由公式τ=RC可知CX的容量為1微法。  測量電路如圖2所示。A為AT89C2051內部構造的電壓比較器,AT89C2051 圖2 的P1.0和P1.1口除了作I/O口外,還有一個功能是作為電壓比較器的輸入端,P1.0為同相輸入端,P1.1為反相輸入端,電壓比較器的比較結果存入P3.6口對應的寄存器,P3.6口在AT89C2051外部無引腳。電壓比較器的基準電壓設定為0.632E+,在CX兩端電壓從0升到0.632E+的過程中,P3.6口輸出為0,當電池電壓CX兩端電壓一旦超過0.632E+時,P3.6口輸出變為1。以P3.6口的輸出電平為依據,用AT89C2051內部的定時器T0對充電時間進行計數,再將計數結果顯示出來即得出測量結果。整機電路見圖3。電路由單片機電路、電容充電測量電路和數碼顯示電路等 圖3 部分組成。AT89C2051內部的電壓比較器和電阻R2-R7等組成測量電路,其中R2-R5為量程電阻,由波段開關S1選擇使用,電壓比較器的基準電壓由5V電源電壓經R6、RP1、R7分壓后得到,調節RP1可調整基準電壓。當P1.2口在程序的控制下輸出高電平時,電容CX即開始充電。量程電阻R2-R5每檔以10倍遞減,故每檔顯示讀數以10倍遞增。由于單片機內部P1.2口的上拉電阻經實測約為200K,其輸出電平不能作為充電電壓用,故用R5兼作其上拉電阻,由于其它三個充電電阻和R5是串聯關系,因此R2、R3、R4應由標準值減去1K,分別為999K、99K、9K。由于999K和1M相對誤差較小,所以R2還是取1M。數碼管DS1-DS4、電阻R8-R14等組成數碼顯示電路。本機采用動態掃描顯示的方式,用軟件對字形碼譯碼。P3.0-P3.5、P3.7口作數碼顯示七段筆劃字形碼的輸出,P1.3-P1.6口作四個數碼管的動態掃描位驅動碼輸出。這里采用了共陰數碼管,由于AT89C2051的P1.3-P1.6口有25mA的下拉電流能力,所以不用三極管就能驅動數碼管。R8-R14為P3.0-P3.5、P3.7口的上拉電阻,用以驅動數碼管的各字段,當P3的某一端口輸出低電平時其對應的字段筆劃不點亮,而當其輸出高電平時,則對應的上拉電阻即能點亮相應的字段筆劃。

    標簽: 89C C51 AT 89

    上傳時間: 2013-12-31

    上傳用戶:ming529

  • 用AT89C2051單片機制作的數字電容表

    用AT89C2051單片機制作的數字電容表:AT89C2051作為AT89C51的簡化版雖然去掉了P0、P2等端口,使I/O口減少了,但是卻增加了一個電壓比較器,因此其功能在某些方面反而有所增強,如能用來處理模擬量、進行簡單的模數轉換等。本文利用這一功能設計了一個數字電容表,可測量容量小于2微法的電容器的容量,采用3位半數字顯示,最大顯示值為1999,讀數單位統一采用毫微法(nf),量程分四檔,讀數分別乘以相應的倍率。

    標簽: C2051 2051 89C AT

    上傳時間: 2013-11-19

    上傳用戶:wuyuying

  • 單片機音樂中音調和節拍的確定方法

    單片機音樂中音調和節拍的確定方法:調號-音樂上指用以確定樂曲主音高度的符號。很明顯一個八度就有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調”。同樣是“導”,不同的調唱起來的高低是不一樣的。各調的對應的標準頻率為: 單片機演奏音樂時音調和節拍的確定方法 經??吹揭恍﹦倢W單片機的朋友對單片機演奏音樂比較有興趣,本人也曾是這樣。在此,本人將就這方面的知識做一些簡介,但愿能對單片機演奏音樂比較有興趣而又不知其解的朋友能有所啟迪。 一般說來,單片機演奏音樂基本都是單音頻率,它不包含相應幅度的諧波頻率,也就是說不能象電子琴那樣能奏出多種音色的聲音。因此單片機奏樂只需弄清楚兩個概念即可,也就是“音調”和“節拍”。音調表示一個音符唱多高的頻率,節拍表示一個音符唱多長的時間。 在音樂中所謂“音調”,其實就是我們常說的“音高”。在音樂中常把中央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

  • AVR單片機GCC程序設計

    AVR單片機GCC程序設計:第一章 概述1.1 AVR 單片機GCC 開發概述1.2 一個簡單的例子1.3 用MAKEFILE 管理項目1.4 開發環境的配置1.5 實驗板CA-M8第二章 存儲器操作編程2.1 AVR 單片機存儲器組織結構2.2 I/O 寄存器操作2.3 SRAM 內變量的使用2.4 在程序中訪問FLASH 程序存儲器2.5 EEPROM 數據存儲器操作2.6 avr-gcc 段結構與再定位2.7 外部RAM 存儲器操作2.8 堆應用第三章 GCC C 編譯器的使用3.1 編譯基礎3.2 生成靜態連接庫第四章 AVR 功能模塊應用實驗4.1 中斷服務程序4.2 定時器/計數器應用4.3 看門狗應用4.4 UART 應用4.5 PWM 功能編程4.6 模擬比較器4.7 A/D 轉換模塊編程4.8 數碼管顯示程序設計4.9 鍵盤程序設計4.10 蜂鳴器控制第五章 使用C 語言標準I/O 流調試程序5.1 avr-libc 標準I/O 流描述5.2 利用標準I/0 流調試程序5.3 最小化的格式化的打印函數第六章 CA-M8 上實現AT89S52 編程器的實現6.1 編程原理6.2 LuckyProg2004 概述6.3 AT989S52 isp 功能簡介6.4 下位機程序設計第七章 硬件TWI 端口編程7.1 TWI 模塊概述7.2 主控模式操作實時時鐘DS13077.3 兩個Mega8 間的TWI 通信第八章 BootLoader 功能應用8.1 BootLoader 功能介紹8.2 avr-libc 對BootLoader 的支持8.3 BootLoader 應用實例8.4 基于LuckyProg2004 的BootLoader 程序第九章 匯編語言支持9.1 C 代碼中內聯匯編程序9.2 獨立的匯編語言支持9.3 C 與匯編混合編程第十章 C++語言支持附錄 1 avr-gcc 選項附錄 2 Intel HEX 文件格式描述

    標簽: AVR GCC 單片機

    上傳時間: 2014-04-03

    上傳用戶:ligi201200

主站蜘蛛池模板: 迁西县| 三门县| 延津县| 华坪县| 泊头市| 康马县| 阜南县| 东至县| 东阿县| 甘泉县| 财经| 大竹县| 高台县| 堆龙德庆县| 兴隆县| 连州市| 方城县| 彰武县| 沙洋县| 西宁市| 东辽县| 济源市| 昭平县| 沾化县| 将乐县| 勃利县| 河北区| 黄浦区| 老河口市| 女性| 祁连县| 和平区| 璧山县| 河北省| 海南省| 平果县| 鄂州市| 新乡市| 霍林郭勒市| 广昌县| 肥西县|