freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)論文-基于at89c51單片機(jī)的電子琴設(shè)計(jì)(參考版)

2025-01-19 20:37本頁面
  

【正文】 通 過 Prouteus 軟件將電路模擬出來,然后,通過 Keil 軟件生成的可執(zhí)行文。實(shí)踐證明,在使用 Proteus 進(jìn)行系統(tǒng)仿真開發(fā)成功之后再進(jìn)行實(shí)際制作,能極大提高單片機(jī)系統(tǒng)設(shè)計(jì)效率。相信在單片機(jī)開發(fā)應(yīng)用中PROTEUS 也能茯得愈來愈廣泛的應(yīng)用。它具有設(shè)計(jì)靈活,結(jié)果、過程的統(tǒng)一的特點(diǎn) 。由于 PROTEUS提供了實(shí)驗(yàn)室無法相比的大量的元器件庫,提供了修改電路設(shè)計(jì)的靈活性、提供了實(shí)驗(yàn)室在數(shù)量、質(zhì)量上難以相比的虛擬儀器、儀表,因而也提供了培養(yǎng)學(xué)生實(shí)踐精神、創(chuàng)造精神的平臺 。這在相當(dāng)程度上替代了傳統(tǒng)的單片機(jī)實(shí)驗(yàn)教學(xué)的功能,例:元器件選擇、電路連接、電路檢測、電路修改、 軟件調(diào)試 、運(yùn)行結(jié)果等。前者可在相當(dāng)程度上得到實(shí)物演示實(shí)驗(yàn)的效果,后者則是實(shí)物演示實(shí)驗(yàn)難以達(dá)到的效果。 PROTEUS 是單片機(jī)課堂教學(xué)的先進(jìn)助手。這些測試信號包括模擬信號和數(shù)字信號。這些都盡可能減少了儀器對測量結(jié)果的影響。 ( 3) 除了現(xiàn)實(shí)存在的儀器外, Proteus 還提供了一個(gè)圖形顯示功能,可以將線路上變化的信號,以圖形的方式實(shí)時(shí)地顯示出來,其作用與示波器相似,但功能更多。 ( 2) Proteus 可提供的仿真儀表資源 :示波器、邏輯分析儀、虛擬終端、SPI 調(diào)試器、 I2C 調(diào)試器、信號發(fā)生器、模式發(fā)生器、交直流電壓表、 交直流電流表 。配合 系統(tǒng)配置 的虛擬邏輯分析儀、示波器 等, Proteus 建立了完備的電子設(shè)計(jì)開發(fā)環(huán)境。還可以直接在基于原理圖的虛擬原型 。這些功能是: ( 1)原理布圖 ; ( 2) PCB 自動或人工布線 ( 3) SPICE 電路仿真 ( 4)互動的電路仿真 用戶甚至可以實(shí)時(shí)采用諸如 RAM, ROM,鍵盤,馬達(dá), LED, LCD,AD/DA,部分 SPI 器件,部分 IIC 器件。 而基于圖表的仿真能夠在仿真過程中放大一些特別的部分,進(jìn)行一些細(xì)節(jié)上的分析,因此基于圖表的仿真可用于研究電路的工作狀態(tài)和進(jìn)行細(xì)節(jié)的測量。 PROUTEUS 有兩種截然不同的仿真方式:交互式仿真和基于圖表的仿真。 Proteus 軟件涵蓋了 PIC、 AVR、 MCS805 68HC1 ARM 等微處理器模型,以及多種常用電子元器件,包括 74 系列、 CMOS 4000 系列集成電路、 A/D 和 D/A 轉(zhuǎn)換器、鍵盤、 LCD 顯示器、 LED 顯示器,還提供示波器、邏輯分析儀、通信終端、電壓 /電流表、 12C/SPI 終端等各種虛擬儀表,這些都可以直接用于仿真設(shè)計(jì),極大地提高了設(shè)計(jì)效率和設(shè)計(jì)水平。 在設(shè)計(jì)中主要是將程序編寫到軟件(如圖所示)上進(jìn)行修改、調(diào)試生成 可執(zhí)行文件。開發(fā)系統(tǒng)仿真軟件可以使學(xué)習(xí)者和開發(fā)者脫離硬件進(jìn)行全軟件仿真。 Keil C51 能模擬開發(fā)軟件在計(jì)算機(jī)上實(shí)現(xiàn)對單片機(jī)硬件的仿真、指令仿真、運(yùn)行狀態(tài)仿真,不需要在線的仿真器和目標(biāo)板。 Keil C51 是美國 Keil Softwar 公司出品的 51 系列兼容單片機(jī) C 語言軟件開發(fā)系統(tǒng)。 uVision3 提供對多種最新的 8051 類微處理器的支持,包括 AnalogDevices 的ADuC83x 和 ADuC84x,以及 Infineon 的 XC866 等。 此外其內(nèi)置的仿真器可模擬目標(biāo) MCU,包括指令集、片上外圍設(shè)備及外部信號等。 編程 Keil uVision 軟件 KeilSoftware 公司推出的 uVision3 是一款可用于多種 8051MCU 的集成開發(fā)環(huán)境 (IDE),該 IDE 同時(shí)也是 PK51 及其它開發(fā)套件的一個(gè)重要組件。 * 仿真器上的復(fù)位按鈕只復(fù)位仿真芯片,不復(fù)位目標(biāo)系統(tǒng)。 ABS 文件由 OH51 轉(zhuǎn)換成標(biāo)準(zhǔn)的 Hex 文件,以供調(diào)試器 dScope51 或tScope51 使用進(jìn)行 源代碼 級調(diào)試,也可由仿真器使用直接對目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如 EPROM 中。然后分別由 C51及 C51編譯器編譯生成目標(biāo)文件 (.OBJ)。 C51 工具包的整體結(jié)構(gòu), uVision 與 Ishell 分別是 C51 for Windows 和for Dos 的集成開發(fā)環(huán)境 (IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開發(fā)流程。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會到 Keil C51 生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。用過匯編語言后再使用 C 來開發(fā),體會更加深刻。下面詳細(xì)介紹 Keil C51 開發(fā)系統(tǒng)各部分功能和使用。 另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會到 Keil C51 生 ??粕厴I(yè)設(shè)計(jì)(論文) 27 成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。 Keil C51 標(biāo)準(zhǔn) C 編譯器為 8051 微控制器的軟件開發(fā)提供了 C語言環(huán)境。掌握這一軟件的使用對于使用 51 系列單片機(jī)的愛好者來說是十分必要的,如果你使用 C 語言編程,那么 Keil 幾乎就是你的不二之選(目前在國內(nèi)你只能買到該軟件、而你買的仿真機(jī)也很可能只支持該軟件),即使不使用 C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會令你事半功倍。Keil 提供了包括 C 編譯器 、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè) 集成開發(fā)環(huán)境 ( uVision)將這些部分組合在一起。 單片機(jī)開發(fā)中除必要的硬件外,同樣離不開 軟件 ,我們寫的匯編語言源程序要變?yōu)?CPU 可以執(zhí)行的機(jī)器碼有兩種 方法,一種是手工匯編,另一種是機(jī)器匯編,目前已極少使用手工匯編的方法了。 } ??粕厴I(yè)設(shè)計(jì)(論文) 26 第 5章 系統(tǒng)調(diào)式與仿真 Keil 簡介 Keil C51 是 美國 Keil Software 公司出品的 51 系列兼容單片機(jī) C 語言軟件開發(fā)系統(tǒng),與匯編相比, C 語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。 } } void _EX0_2 0 interrupt 2 { flag==0。 } void _EX0_0 0 interrupt 0 { if(key_add==0) { t=t+1 Delay1ms(500)。 } if(key_dec==0) { t=t1。 } void _EX0_0 0 interrupt 0 { if (key_add=0) { t=t+1。 Play(Music_file[temp],0,3,360)。 temp=t。 //*********************************************************** main() { InitialSound()。j++)。i++) //延時(shí)程序 for(j=0。 for(i=0。 音符產(chǎn)生方法 一首音樂是許多不同的音階組成的,而每個(gè)音階對應(yīng)著不同的頻率,這樣我們就可以利用不同的頻率的組合,即可構(gòu)成我們所想要的音樂了,當(dāng)然對于單片機(jī)來生產(chǎn)不同的頻率非常方便 ,我們可以利用單片機(jī)的定時(shí) /計(jì)數(shù)器 T0 來生產(chǎn)這樣方波頻率信號,因此,我們只要把一首歌曲的音階對應(yīng)頻率關(guān)系弄正確即可。 音樂的音拍,一個(gè)節(jié)拍為單位( C 調(diào))如表所示: 表 一個(gè)節(jié)拍單位 曲調(diào)值 DELAY 曲調(diào)值 DELAY 調(diào) 4/4 125ms 調(diào) 4/4 62ms 調(diào) 3/4 187ms 調(diào) 3/4 94ms 調(diào) 2/4 250ms 調(diào) 2/4 125ms 對于不同的曲調(diào),我們也可以用單片機(jī)的定時(shí) /計(jì)數(shù)器來完成。 2247。 2247。 fr (22) 例如:設(shè) K=65536, fi=1MHz,求低音 DO(261Hz)、中音 DO(523Hz)、高音DO(1046Hz)的計(jì)數(shù)值。 其計(jì)數(shù)初值 T 的求法如下: T=65536N=65536fi247。 2247。 利用 AT89C51 的內(nèi)部定時(shí)器使其工作計(jì)數(shù)器模式( MODE1)下,改變計(jì)數(shù)值 TH0 及 TL0 以產(chǎn)生不同頻率的方法產(chǎn)生不同音階,例如,頻率為 523Hz,其周期 T=1/523=1912μ s,因此只要令計(jì)數(shù)器計(jì)時(shí) 956μ s/1μ s=956,每 計(jì)數(shù) 956 次時(shí)將 I/O 反相,就可得到中音 DO( 523Hz)。利用定時(shí)器計(jì)算半周期時(shí)間,每當(dāng)計(jì)時(shí)終止后就將 反相,然后重復(fù)計(jì)時(shí)再反相。 ??粕厴I(yè)設(shè)計(jì)(論文) 20 表 字形碼表 “ 0” 3FH “ 8” 7FH “ 1” 06H “ 9” 6FH “ 2” 5BH “ A” 77H “ 3” 4FH “ b” 7CH “ 4” 66H “ C” 39H “ 5” 6DH “ D” 5EH “ 6” 7DH “ E” 79H “ 7” 07H “ F” 71H 音樂產(chǎn)生原理 一首音樂是許多不同音階組成的,而每個(gè)音階對應(yīng)著不同的頻率,這樣我們就可以利用不同的頻率的組合,即可構(gòu)成我們所想要的音樂了,當(dāng)然對于單片機(jī)來生產(chǎn)不同的頻率非常方便,我們可以利用單片機(jī)的定時(shí) /計(jì)數(shù)器 T0 來生產(chǎn)這樣方波 頻率信號,因此,我們只要把一首歌曲的音階對應(yīng)頻率關(guān)系弄正確即可。 LED 數(shù)碼管的 g~a 七個(gè)發(fā)光二極管因加正電壓而發(fā)亮,因加零電壓而不以發(fā)亮,不同亮暗的組合就能形成不同的字形,這種組合稱之為字形碼,下面給出共陰極的字形碼表 : 由于顯示的數(shù)字 09 的字形碼沒有規(guī)律可循,只能采用查表的方式來完成我們所需的要求。所以必須加上晶體管把電流放大后再 ??粕厴I(yè)設(shè)計(jì)(論文) 19 驅(qū)動揚(yáng)聲器如圖所示,只要半周期 T 的時(shí)間,即看可改變輸出頻率。因此,若以程序不斷地輸出 1> 0> 1> 0>??就可令揚(yáng)聲器發(fā)出聲音。就可以在 引 腳上得到此頻率的脈沖。 若要產(chǎn)生音頻脈沖,只要算出某一音頻的周期 (1/頻率 ),再將此周期除以 2,即為半周期的時(shí)間。 一首音樂是許多不同音階組成的,而每個(gè)音階對應(yīng)著不同的頻率,這樣我們就可以利用不同的頻率的組合,即可構(gòu)成我們所想要的音樂了,當(dāng)然對于單片機(jī)來生產(chǎn)不同的頻率非常方便,我們可以利用單片機(jī)的定時(shí) /計(jì)數(shù)器 T0 來生產(chǎn)這樣方波頻率信號,因此,我們只要把一首歌曲的音階對應(yīng)頻率關(guān)系弄正確即可。除此之外 P3 端口還用于一些專門功能。 ??粕厴I(yè)設(shè)計(jì)(論文) 16 P10P17 為 輸入輸出腳,稱為 P3 口,是一個(gè)帶內(nèi)部上拉電阻的 8位雙向 I/O 口, P2 口能驅(qū)動 4 個(gè) LSTTL 負(fù)載,這 8 個(gè)引腳還用于專門的第二功能。在訪問外部程序和 16 位外部數(shù)據(jù)存儲器時(shí), P2 口送出高 8 位地址。端口置 1 時(shí),內(nèi)部上拉電阻將端口拉到高電平,作輸入用。端口置 1 時(shí),內(nèi)部上拉電阻將端口拉到高電平,作輸入用。 P1 口能驅(qū)動 4 個(gè) LSTTL 負(fù)載。在訪問外部程序和外部數(shù)據(jù)存儲器時(shí), P0 口是分時(shí)轉(zhuǎn)換的地址(低 8 位) /數(shù)據(jù)總線,不需要外接上拉電阻。內(nèi)部不帶上拉電阻時(shí), P0 口能以吸收電流的方式驅(qū)動八個(gè) LSTTL 負(fù)載電路。此外, RESET 還是一復(fù)用腳, Vcc 掉電期間,此腳可接上備用電源,以保證單片機(jī)內(nèi)部 RAM 的數(shù)據(jù)不丟失。什么叫復(fù)位?復(fù)位是單片機(jī)重新執(zhí)行程序代碼的意思。常用的復(fù)位電路如下圖所示: ??粕厴I(yè)設(shè)計(jì)(論文) 15 圖 復(fù)位電路圖 復(fù)位操作不會對內(nèi)部 RAM 有所影響。復(fù)位后P0P3 口均置 1 引腳表現(xiàn)為高電平,程序計(jì)數(shù)器和特殊功能寄存器 SFR 全部清零。如 AT89C51 24PC 就是最高震蕩頻率為24MHz, 40P6 封裝的普 通商用芯片。 型號同樣為 AT89C51 的芯片,在其后面還有頻率編號,有 12,16,20,24MHz可選。晶振的頻率可以在 1MHz24MHz 內(nèi)選擇。 專科生畢業(yè)設(shè)計(jì)(論文) 14 晶振電路原理 圖 時(shí)鐘電路 P19:時(shí)鐘 XTAL1 腳, P18:時(shí)鐘 XTAL1 是片內(nèi)振蕩器的反相放大器輸入端,XTAL2 則是輸出端,使用外部振蕩器時(shí),外部振蕩信號應(yīng)直接加到 XTAL1,而XTAL2 懸空。其大小是時(shí)鐘信號頻率的倒數(shù),通常用 fosc 表示。 C1, C2 的典型值為 30PF。外部振蕩源電路一般選用石英晶體振蕩器,此 電路在加點(diǎn)大約延遲 10ms 后振蕩器起振,在 XTAL2 引腳產(chǎn)生幅度為 3V 左右的正弦波時(shí)鐘信號,其振蕩頻率主要由石英晶振的頻率確定。 時(shí)鐘頻率 單片機(jī)必須在時(shí)鐘的驅(qū)動下才能工作。 ( 4)鍵碼產(chǎn)生:為了從鍵的行列坐標(biāo)編碼得到反映鍵功能的鍵碼,一般在內(nèi)存區(qū)中建立一個(gè)鍵盤編碼表,通過查表獲得被按鍵的鍵碼。行掃描法的基本思想是,由程序?qū)︽I盤逐行掃描,通過檢測到的列輸出狀態(tài)來確定閉合鍵,為此,需要設(shè)置入口、輸出口一個(gè),該方法在微機(jī)系統(tǒng)中被廣泛使用。 ( 3)被按鍵識別:如何識別被按鍵是借口解決的主
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1