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

正文內(nèi)容

畢業(yè)論文-基于單片機(jī)at89c51的簡(jiǎn)易電子琴系統(tǒng)(編輯修改稿)

2025-07-09 03:26 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 音節(jié)的聲音 .再利用延遲來控制發(fā)音時(shí)間的長(zhǎng)短 ,即可控制音調(diào)中的節(jié)拍 .把樂譜中的音符對(duì)應(yīng)的頻率轉(zhuǎn)換為定時(shí)常數(shù) ,把相應(yīng)的節(jié)拍變換為定時(shí)常數(shù) ,然后作成表格存放在儲(chǔ)存器中 ,由程序查表得到定時(shí)常數(shù)和延時(shí)常數(shù) ,分別用以控制定時(shí)器產(chǎn)生方波的頻率和該頻率方波的持續(xù)時(shí)間 .當(dāng)延遲常數(shù)到時(shí) ,再查下一個(gè)音符的定時(shí)常數(shù)和延遲常數(shù) .依次進(jìn)行下去 ,就可演奏悅耳動(dòng)聽的音樂。 其電路圖見附錄 1 所示。 主控器 AT89C51 的結(jié)構(gòu)及工作原理 AT89C51 單片機(jī)的結(jié)構(gòu) 一、 單片機(jī)的主要性能特點(diǎn) ATMEL 公司生產(chǎn)的 AT89C51 單片機(jī)采用高性能的靜態(tài) 80C51 設(shè)計(jì),欲先進(jìn)工藝制造,并帶有非易失性 FLASH 程序儲(chǔ)存器。它是一它是一種高性能,低功耗的 8 位 CMOS微處理芯片。主要性能特點(diǎn)有: ● 8KB Flash ROM,可以擦除 1000 次以上。數(shù)據(jù)保存 10 年, ● 256 字節(jié)內(nèi)部 RAM ●電源控制模式:時(shí)鐘可停止和恢復(fù);空閑模式;掉電模式。 ● 6 個(gè)中斷源 ● 4 個(gè)中斷優(yōu)先級(jí) ● 4 個(gè) 8 位 I/O 口 ●全雙工增強(qiáng)型 UART ● 3 個(gè) 16 位定時(shí) /計(jì)數(shù) 器, T9, T1和增加的 T2 顯示電路 ( 89C51) 主控模塊 鍵掃描電路 發(fā)聲電路 ●全靜態(tài)工作方式: 0~24MHz 二 、單片機(jī)的引腳功能 89C51單片機(jī)的引腳圖見圖 ,其中有 2條主電源引腳 ,2條外接晶體引腳 ,4條控制或其他電源復(fù)用引腳 ,32 條 I/O 引腳。下面分別敘述這些引腳的功能。 圖 89C51 單片機(jī)的引腳圖 ● VCC( 40腳):接電源 +5V。 ● VSS( 20腳):接地 也就是 GND。 ● XTAL1 ( 19 腳) 和 XATL2( 18 腳):接振蕩電路,單片機(jī)是一種時(shí)序電路 必須有脈沖信號(hào)才能工 作 在它的內(nèi)部有一個(gè)時(shí)鐘產(chǎn)生電路。 ● PSEN( 29 腳):片外 ROM 選通信號(hào) ,低電平有效 .他同樣可以驅(qū)動(dòng) 8 個(gè) LSTTL輸入。 ● ALE/PROG( 30 腳):地址鎖存信號(hào)輸出端 /EPROM 編程脈沖輸入端。為了使地址與數(shù)據(jù)不混淆 ,通常是先送地址再傳送數(shù)據(jù)。 ALE將 P0 口輸出的低 8 位地址鎖存 ,從而實(shí)現(xiàn)低位地址與數(shù)據(jù)的分離。 ● RST/VPD( 9 腳):復(fù)位信號(hào)輸入端 /備用電源輸入端。當(dāng)振蕩器運(yùn)行時(shí),在此引腳上出現(xiàn)兩個(gè)機(jī)器周期以上的高電平,將使單片機(jī)復(fù)位。 VCC 掉電期間 ,此引腳可以接上備用電源 ,以保存內(nèi)部 RAM 的數(shù)據(jù)不丟失 。當(dāng) VCC 低于規(guī)定水平時(shí) ,VPD 向內(nèi)部 RAM 提供備用電源。 ● EA/VPP( 31):內(nèi) /外部 ROM 選擇端。當(dāng) EA 端保持高電平時(shí),不管是否有內(nèi)部程序存儲(chǔ)器,只訪問外部程序存儲(chǔ)器。當(dāng) EA 端保持低電平時(shí),訪問內(nèi)部程序存儲(chǔ)器。 ● P0 口( ~ 共 8個(gè)引腳 ,既 3932 腳):雙向 三態(tài) I/O 口。在訪問外部存儲(chǔ)器時(shí) ,可分別用低 8位地址線和 8位數(shù)據(jù)線 。P0 口可以驅(qū)動(dòng) 8個(gè) LSTTL P1 輸入。 ● P1 口( ~ 共 8個(gè)引腳 ,既 18 腳) P1口是一個(gè)帶有內(nèi)部上拉電阻的 8位 雙向 I/0 口 ,在 EPROM 編程和程序驗(yàn)證時(shí) ,它接受低 8 位地址 ,能驅(qū)動(dòng) 4 個(gè) LSTTL 輸入。 ● P2 口( ~ 共 8 個(gè)引腳 ,既 2128 腳): P2口是一個(gè)帶有內(nèi)部上拉電阻的 8位雙向 I/0 口 , 在 EPROM編程和程序驗(yàn)證時(shí) ,它接受高 8位地址 ,能驅(qū)動(dòng) 4個(gè) LSTTL輸入。 ● P3 口 ( ~ 共 8 個(gè)引腳 ,既 1017 腳): P3口是一個(gè)帶有內(nèi)部上拉電阻的 8 位雙向 I/0 口。他是個(gè)多用途口。在這 8 個(gè)引腳里,其中 的第二功能是外部中斷 0申請(qǐng)輸入端; 的第二功能是外部中斷 1申請(qǐng)輸入 端; 的第二功能是定時(shí)器 0申請(qǐng)輸入端。 三 、單片機(jī)內(nèi)部結(jié)構(gòu)及組成結(jié)構(gòu) 單片機(jī)是由中央處理器( CPU)、片內(nèi)數(shù)據(jù)存儲(chǔ)器( RAM)、片內(nèi)程序存儲(chǔ)器( ROM)和輸入輸出接口( I/O 口)四大部分組成: ⑴ CPU 是單片機(jī)的核心部分。其作用是讀入和分析每條指令,根據(jù)指令要求控制各個(gè)部件執(zhí)行相應(yīng)的操作,它包括運(yùn)算器和控制器兩大部分:一是運(yùn)算器包括算術(shù)/邏輯部件 (ALU)、累加器 A、暫存寄存器、寄存器 B、程序狀態(tài)寄存器( PSW),十進(jìn)制調(diào)整電路等。運(yùn)算器主要用于實(shí)現(xiàn)算術(shù) /邏輯運(yùn)算及位操作運(yùn)算。二是控制器包括時(shí)鐘發(fā) 生器 ,定時(shí)控制邏輯 ,指令寄存器 ,指令譯碼器 ,程序計(jì)數(shù)器 PC,程序地址寄存器 ,數(shù)據(jù)指令寄存器 DPTR 和堆棧指針 SP等??刂破魇怯脕斫y(tǒng)一指揮和控制計(jì)算機(jī)進(jìn)行工作的部件。 ⑵ 單片機(jī)存儲(chǔ)器 ,單片機(jī)在物理上有 4 個(gè)存儲(chǔ)空間 :片內(nèi)程序存儲(chǔ)器和片外程序存儲(chǔ)器 , 片內(nèi)數(shù)據(jù)存儲(chǔ)器和片外數(shù)據(jù)存儲(chǔ)器 .8051片內(nèi)有 4KB的程序存儲(chǔ)器和 256B數(shù)據(jù)存儲(chǔ)器。下面分別介紹程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器。程序存儲(chǔ)器用于存放編好的程序、表格和常數(shù)。 8051 單片機(jī)內(nèi)部有 4KB 的片內(nèi) ROM和 64KB 的片外 ROM,兩者是統(tǒng)一編址的。 數(shù)據(jù)存儲(chǔ)器 8051 內(nèi)部有 256B RAM,片外最多可以擴(kuò)展 64KB RAM。片內(nèi) 256 KB RAM按其功能劃分兩部分 :低 128B 位片內(nèi)數(shù)據(jù) RAM 區(qū) ,地址空間為 00H~7FH。高 128B 位特殊功能寄存器的區(qū)域 .地址空間為 80H~FFH。內(nèi)部數(shù)據(jù)存儲(chǔ)器低 128 單元, 8051 內(nèi)部低128B RAM 是真正的 RAM,可用于暫存運(yùn)算結(jié)果及標(biāo)志位等 .按其用途可以分為三部分 :工作寄存器區(qū) 。位尋址區(qū) 。用戶 RAM 區(qū)。內(nèi)部 RAM 的高于 128 單元是供給特殊功能寄存器使用,因此稱特殊功能寄存器: ① 指令寄存器 IR 和指令譯碼器 ID。指令寄存器是存放 指令代碼的地方。當(dāng)執(zhí)行指令時(shí), CPU 把從程序存儲(chǔ)器中讀取的指令代碼送入指令寄存器,然后指令譯碼器譯碼后由定時(shí)控制電路發(fā)生相應(yīng)的控制信號(hào),最終完成指令所規(guī)定的操作。 ② 程序計(jì)數(shù)器 PC 是一個(gè) 16 位的計(jì)數(shù)器。用于存放將要執(zhí)行的指令地址 ,CPU 每讀取指令的一個(gè)字節(jié) PC便自動(dòng)加 1,指向本指令的下一個(gè)字節(jié)或下一條指令地址 ,PC可以尋址 64KB 范圍 ROM。 ③ 累加器是一個(gè)最常用的 8 位特殊功能寄存器 ,它可以用于存放操作數(shù) ,也沒有用于來存放運(yùn)算結(jié)果。 ④ 寄存器 B是一個(gè) 8位寄存器 ,主要用于乘法和除法的運(yùn)算 , ⑤ 狀態(tài)字寄 存器 PSW 是 8 位寄存器 ,用于存放程序運(yùn)行狀態(tài)信息 ,其格式如下圖 所示 。 圖 程序狀態(tài)字 PSW CY( ):進(jìn)位標(biāo)志位。在進(jìn)行加法(或減法)運(yùn)算時(shí),若運(yùn)算結(jié)果最高位有進(jìn)位或借位,則 CY自動(dòng)置 “1” ,否則 CY置 “0” ,在進(jìn)行布爾操作運(yùn)算時(shí), CY(簡(jiǎn)稱 C)作為布爾處理器。 AC():輔助進(jìn)位標(biāo)志位。當(dāng)進(jìn)行加法或減法時(shí),若低 4 位向高 4 位有進(jìn)位(或借位)時(shí), AC 被置 “1” ,否則 AC被置 “0” 。在十進(jìn)制調(diào)整指令中 AC還作為十進(jìn)制調(diào)整的判別位。 F0():用戶標(biāo) 志位。用戶可用軟件對(duì) F0 位置 “1” 或清 “0” 以決定程序的流向。 OV(()):溢出標(biāo)志位,當(dāng)運(yùn)算結(jié)果溢出時(shí) OV 為 “1” ,否則為 “0” ,此標(biāo)志位反映了運(yùn)算結(jié)果是否溢出。 P( ):奇偶標(biāo)志位。 MCS51 單片機(jī)采用的是偶校驗(yàn)。當(dāng)累加器 A 中 “1”的個(gè)數(shù)為奇數(shù)時(shí), P置 “1” ,否則 P置 “0” 。此位反映累加器 A中內(nèi)容 “1” 的奇偶性,它常常用于機(jī)間通信。 RS1()、 RS0():工作寄存器區(qū)選擇位。用來選擇當(dāng)前工作的寄存器區(qū)。用戶通過改變 RS1 、 RS0的內(nèi)容來選擇當(dāng)前工作寄存器區(qū) 。 ⑥ 堆棧指針 SP ⑦ 數(shù)據(jù)指針寄存器 DPTR 是一個(gè) 16 位寄存器 ,由高位字節(jié) DPH 和低位字節(jié) DPL 組成 ,用來存放 16位數(shù)據(jù)存儲(chǔ)器的地址 ,以便對(duì)外部數(shù)據(jù)存儲(chǔ)器 RAM 數(shù)據(jù)進(jìn)行讀寫。 ⑶ 工作寄存器 MCS51 有 32 個(gè)工作寄存器,分為四個(gè)區(qū)(或組)每個(gè)區(qū)為 8 個(gè)寄存器 R0、 RR R R R R R7,每一時(shí)刻只有一個(gè)區(qū)工作。由 PSW 寄存器中的 RS RS0的值來決定當(dāng)前的工作區(qū): 當(dāng) RS1 RS0= 00 時(shí), 0區(qū)為工作區(qū), RS1 RS0= 01時(shí), 1 區(qū)為工作區(qū) RS1 RS0= 10時(shí), 2 區(qū)為工作區(qū) RS1 RS0= 11時(shí), 3 區(qū)為工作區(qū) 這 32 個(gè)工作寄存器不但有它們的名稱和區(qū)號(hào),而且還有地址。 00H1FH 共 32 個(gè)單元。 00H~ 07H 為 0區(qū),分別對(duì)應(yīng) R0~ R7 08H~ 0FH 為 1區(qū),分別對(duì)應(yīng) R0~ R7 10H~ 17H 為 2區(qū),分別對(duì)應(yīng) R0~ R7 18H~ 1FH 為 3區(qū),分別對(duì)應(yīng) R0~ R7 這 32 個(gè)單元為內(nèi)部數(shù)據(jù)存儲(chǔ)器(即片內(nèi) RAM)的 00H~ 1FH 存貯空間,這與普通微機(jī)中的通用寄存器基本相同,所不同的是,普通微機(jī)的通用寄存器只有名稱,不占有 RAM空間,因此只有名字,沒有對(duì)應(yīng)的地址;而 MCS51 單片機(jī)的工作寄存器 R0~ R7既可以用名字也可以用它的地址來表示。其中 R0、 R1寄存器除做工作寄存器外還常做間址尋址的地址指針 ⑷單片機(jī)的輸入 /輸出端口 C51 中有 4個(gè)8位并行輸入 /輸出端口記為 P0、 P P P3 共 32 根線。每個(gè)并行I/O 口都可以用作輸入 /輸出 ,所以稱它們?yōu)殡p向 I/O 口。 ● P0 口有8位, P0口有兩個(gè)用途 ,一是作為普通 I/O 口使用 。二是作為地址 /數(shù)據(jù)總線使用。 P0 口作為普通 I/O口使用 : 當(dāng)控制線 C=0時(shí) , MUX 開關(guān)向下 , P0口作通用I/O 口。這時(shí)與門輸入為 0,場(chǎng)效應(yīng)管 VT1 截止。 P0 口作為分時(shí)復(fù)用的地址 /數(shù)據(jù)總線 : P0口一般是作為地址 /數(shù)據(jù)總線 ,這時(shí)控制線 C=1,MUX開關(guān)向上 ,使數(shù)據(jù) /地址經(jīng)反向器與場(chǎng)效應(yīng)管 VT2接通 ,當(dāng)數(shù)據(jù)輸入時(shí) ,數(shù)據(jù)信號(hào)從引腳通過輸入緩沖器 2進(jìn)入內(nèi)部總線。 ● P1 口是一個(gè)專用的 8位準(zhǔn)雙向 I/O 口,只具有通用輸入 /輸出口功能,每一位都能設(shè)定為輸入或輸 出。 P1 口的驅(qū)動(dòng)部分與 P0 口不同 ,內(nèi)部有上拉電阻。 ● P2 口是一個(gè) 8 位準(zhǔn)雙向 I/O 口,具有兩種功能。一是作通用 I/O 口用,與 P1口相同。二是作擴(kuò)展系統(tǒng)的高 8 位地址總線。 ● P3 口也是一個(gè) 8位準(zhǔn)雙向 I/O 口,不但可以作通用 I/O 口使用,還具有第二功能。當(dāng)工作在第二功能時(shí),每位都具有新的功能,當(dāng) P3 口作通用 I/O 口時(shí),與 P1 口相同。 單片機(jī)的工作原理 一、 振蕩器與時(shí)鐘電路 時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號(hào)。 AT89C51 的時(shí)鐘產(chǎn)生方法有以下兩種: ⑴內(nèi)部時(shí)鐘方式 利用芯片內(nèi)部的振蕩 器,然后在引腳 XTAL1 和引腳 XTAL2 兩端接晶體或陶瓷諧振器,就構(gòu)成了穩(wěn)定的自激振蕩器,其發(fā)出的脈沖直接送入內(nèi)部的時(shí)鐘電路,如圖 (在圖中的外接線,上面的外接線接引腳 XTAL1,下面的外接線接引腳 XTAL2)外接晶振時(shí), C1和 C2的值通常選擇我 30pF左右;外接陶瓷諧振器時(shí) C1和 C2的值大約為 47pF。C C2 對(duì)頻率有微調(diào)作用,晶體或陶瓷諧振器的頻率范圍可在 ~12MHz 之間選擇。為了減少寄生電容,更好地保證振蕩器穩(wěn)定、可靠地工作,振蕩器和電容應(yīng)盡可能安裝得與單片機(jī)芯片靠近。 圖 單片機(jī)外接振蕩電路 ⑵外部時(shí)鐘方式 此方式是利用外部振蕩脈沖接入 XTAL1 或 XTAL2。 CHMOS(互補(bǔ)金屬氧化物 HMOS)是 CMOS 和 HMOS(高密度溝道 MOS 工藝 )的結(jié)合 ,除了保持 HMOS 高速度和高密度之外 ,還有 CMOS低功耗的特點(diǎn) .兩類器件的功能是完全兼容的 ,區(qū)別在 CHMOS器件具有低功耗的特點(diǎn) .它所消耗的電流比 HMOS 器件少很多 ,主要在于其采用了兩種降低功耗的方式 :空閑方式和掉電方式 .CHMOS 器件在掉電方式 (CPU 停止工作 ,片內(nèi) RAM 的數(shù)據(jù)繼續(xù)保持 ) 下時(shí) ,消耗的電流可低于 10μ CHMOS 的器件在編號(hào)中用一個(gè) C 來加以區(qū)別 : 如80C51,80C31 等 . 外部時(shí)鐘信號(hào)通過一個(gè)二分頻的觸發(fā)器而成為內(nèi)部的時(shí)鐘信號(hào),要求高、低電平的持續(xù)時(shí)間都大于 20ns,一般為頻率低于 12Hz 的方波。這種方式適用于多塊芯片同時(shí)工作,便于同步。片內(nèi)時(shí)鐘發(fā)生器就是上述的二分頻觸發(fā)器,它向芯片提供了一個(gè) 2 節(jié)拍的時(shí)鐘信號(hào)。 根據(jù)以上兩種方式的特點(diǎn),在次設(shè)計(jì)中從而采用了第一種方式。第一種方式比第二種更簡(jiǎn)潔為次設(shè)計(jì)而變的簡(jiǎn)單化。其圖 就是本次設(shè)計(jì)中時(shí)鐘信號(hào)產(chǎn)生的外部電路圖。其中電容值所選用的是 30Pf,為了提高秒計(jì)時(shí)的精確度,采用 12MHZ 的晶振。 二、 單片機(jī)的工作方式 單片機(jī)有三種工作方式:復(fù)位方式、程序執(zhí)行方式以及節(jié)電工作方式。 ⑴單片機(jī)復(fù)位方式 : 單片機(jī)復(fù)位方式有上簡(jiǎn)單復(fù)位電路和采用專用復(fù)位電路芯片構(gòu)成復(fù)位電路兩種。簡(jiǎn)單復(fù)位電路有上電復(fù)位和手動(dòng)復(fù)位。不管那種方式都要保證在 RESET 引腳上提供10ms 以上的穩(wěn)定高電壓。本次設(shè)計(jì)中采用的是按鍵式復(fù)位電路。 ⑵程序執(zhí)行方式: ( a)連續(xù)執(zhí)行方式 ( b)單步執(zhí)行方式 ⑶節(jié)電工作方式: ( a) HMOS 單片機(jī)的掉電工作方式 ( b) CHMOS 單片機(jī)的節(jié) 電工作方式 三 、單片機(jī)外部并行擴(kuò)展原理 單片微機(jī)是通過芯片的引腳進(jìn)行系統(tǒng)擴(kuò)展的。 80C51 系列帶總線的單片微機(jī)芯片引腳可以構(gòu)成圖 8- 1 所示的三總線結(jié)構(gòu).即地址總線( AB)數(shù)據(jù)總線( DB)和控制總線( CB)。具有總線的外部芯片都通過這三組總線進(jìn)行擴(kuò)展。 ( 1)地址總線( AB) 地址總線由單片微機(jī) P0口提供 低 8位地址 A0~ A7, P2口提供高 8位地址 A8~ A15。P0 口是地址總線低 8 位和 8 位數(shù)據(jù)總線復(fù)用口,只能分時(shí)用作地址線。故 P0 口輸出的低 8位地址 A0~ A7 必須用鎖存器鎖存。 鎖存器的鎖存控制信號(hào) 為單片微機(jī) ALE 引腳輸出的控制信號(hào)。在 ALE 的下降沿將P0 口輸出的地址 A0~ A7鎖存。 P0、 P2口在系統(tǒng)擴(kuò)展中用做地址線后便不能作為一般I/O 口使用。由于地址總線寬度為 16 位,故可尋址范圍為 64 KB。 ( 2)數(shù)據(jù)總線( DB) 數(shù)據(jù)總線由 P0 口提供,用 D0~ D7 表示。 P0口為三態(tài)雙向 口為三態(tài)雙向口,是應(yīng)用系統(tǒng)中使用最為頻繁的通道。所有單片微機(jī)與外部交換的數(shù)據(jù)、指令、信息,除少數(shù)可直接通過 P1 口外,全部通過 P0 口傳送。 數(shù)據(jù)總線是并連到多個(gè)連接的外圍芯片的數(shù)據(jù)線上,而在同一時(shí)間里只能夠有一個(gè)是有 效的數(shù)據(jù)傳送通道。哪個(gè)芯片的數(shù)據(jù)通道有效,則由地址線控制各個(gè)芯片的片選線來選擇。 (3)控制總線( CB) 控制總線包括片外系統(tǒng)擴(kuò)展用控制線和片外信號(hào)對(duì)單片微機(jī)的控制線。 MCS— 51 系列中.有 5 個(gè)中斷源 (或 6 個(gè)中斷源 ),如圖所示。它們可分為 2 個(gè)優(yōu) 先級(jí).其中每一個(gè)中斷源的優(yōu)先級(jí)都可以由程序排定。 5 個(gè)中斷源的中斷要求是否會(huì)得到響應(yīng),受允許中斷寄存器 IE 中各位的控制;它們的優(yōu)先級(jí)分別由中斷優(yōu)先級(jí)寄存器 IP的各位確定;同 — 優(yōu)先級(jí)內(nèi)的各中斷源同時(shí)要求中斷時(shí),還要靠?jī)?nèi)部的查詢邏輯來確定響應(yīng)的次序,不同的中斷源有不 同的中斷向量。 52 子系列的中斷系統(tǒng)與
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1