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

正文內(nèi)容

畢業(yè)設(shè)計-基于單片機(jī)at89c51的簡易電子琴系統(tǒng)(參考版)

2024-12-05 19:05本頁面
  

【正文】 R5 存節(jié)拍 數(shù) RET 節(jié)拍與節(jié)拍碼對照表 : 節(jié)拍碼 節(jié)拍數(shù) (拍 ) 節(jié)拍碼 節(jié)拍數(shù) (拍 ) 1 1/4 1 1/8 2 2/4 2 1/4 3 3/4 3 3/8 4 1 4 4 1/2 5 1 又 1/4 5 5/8 6 1 又 1/2 6 3/4 8 2 8 1 A 2 又 1/2 A 1 又 1/4 C 3 C C 1 又 1/2 F 3 又 1/2 F 1 又 3/4 各調(diào)值 1/4 節(jié)拍的時間設(shè)定 各調(diào)值 1/8 節(jié)拍的時間設(shè)定 曲調(diào)值 DELAY 6MHZ(H) 曲調(diào)值 DELAY 6MHZ(H) 調(diào) 4/4 125 亳秒 3E 調(diào) 4/4 62 亳秒 1F 3/4 187 5D 3/4 94 2F 2/4 250 7D 2/4 125 。兩個并行口中,一個輸出掃描碼,使按鍵逐行動態(tài)接地,另一個并行口輸入按鍵狀態(tài),由行掃描值和回饋信號共同形成鍵編碼而識別按鍵,通過軟件查表,查出該鍵的功能。每個按鍵的狀態(tài)同樣需變成數(shù)字量 “0” 和 “1” ,開關(guān)的一端(列線)通過電阻接 VCC,而接地是通過程序輸出數(shù)字 “0” 實(shí)現(xiàn)的。對應(yīng)的按鍵的序號排列如圖所示 按鍵的序號排列圖 25 硬件電路原理圖 1. 44 矩陣鍵盤識別處理 2. 每個按鍵有它的行值和列值 ,行值和列值的組合就是識別這個按鍵的編碼。列線電平為低,則行線電平為低;列線電平為高,則行線電平為高。矩陣鍵盤工作原理:行線通過上拉電阻接到 +5V 上。 四、鍵盤電路結(jié)構(gòu) 矩陣式鍵盤接口設(shè)計 : 矩陣式鍵盤適用于按鍵數(shù)量較多的場合,由行線 和列線組成,按鍵位于行列的交叉點(diǎn)上。鍵盤的工作方式選取的原則是:既要保證能及時響應(yīng)按鍵的操作,又不過多的占用 CPU的工作時間。 CPU 忙于各項(xiàng)任務(wù)時,如何兼顧鍵盤的輸入,取決于鍵盤的工作方式。連擊對于用計數(shù)法設(shè)計的多功能鍵特別有效。否則的話,鍵功能程序的執(zhí)行次數(shù)將是不可預(yù)知,由按 鍵時間決定。連擊:是一次按鍵產(chǎn)生多次擊鍵的效果。通常采取的策略:單鍵按下有效,多鍵同時按下無效。) 。通常采用軟件延時的方法:在第一次檢測到有鍵按下時,執(zhí)行一段延時 10ms 的子程 序后,再確認(rèn)電平是否仍保持閉合狀態(tài)電平,如果保持閉合狀態(tài)電平,則確認(rèn)真正有鍵按下,進(jìn)行相應(yīng)處理工作,消除了抖動的影響。按鍵的消抖,通常有軟件,硬件兩種消除方法這種方法只適用于鍵的數(shù)目較少的情況。抖動過程引起電平信號的波動,有可能令 CPU 誤解為多次按鍵操作,從而引起誤處理。鍵盤按鍵所用開關(guān)為機(jī)械彈性開關(guān),利用了機(jī)械觸點(diǎn)的合、斷作用 。 。 本設(shè)計中采用的是編碼矩陣式鍵盤 。然后,設(shè)計硬件電路。 23 3. 4 鍵盤設(shè)計 首先,確定鍵盤編碼方案:采用。通過變壓器變壓, 再 通過橋式整流,電容的濾波作用,穩(wěn)壓器的穩(wěn)壓作用,可輸出 5V 的穩(wěn)定電壓。 本設(shè)計數(shù)碼管采用了共陽極的工作方式,沒有時間顯示的功能。 由于選用的是 7段譯碼器,因此沒有用到數(shù)碼管的 h 段,不能在數(shù)碼管中顯示小數(shù)點(diǎn)。為了每位數(shù)碼管能夠充分被點(diǎn)亮,二極管應(yīng)持續(xù)發(fā)光一段時間。每只數(shù)碼管的共陰極則與另一 I/O 口相連,控制被點(diǎn)亮的位。選擇動態(tài)顯示方式,可以使耗電量更小。 動態(tài)顯示方式的每位數(shù)碼管都需要 一個數(shù)據(jù)鎖存器,因此,其硬件電路比較復(fù)雜。要在某一位數(shù)碼管上顯示字符時,只要從對應(yīng)的 I/O 口輸出并鎖存其顯示代碼即可。 22 數(shù)碼管顯示器有兩種工作方式,即靜態(tài)顯示方式和動態(tài)顯示方式。例如:當(dāng)I/O 口控制芯片輸出的代碼是 00111111 時,數(shù)碼管顯示的字符為 0。每個二極管就是一個筆劃,若干個二極管發(fā)光時,就構(gòu)成了一個顯示字符。本文用到的數(shù)碼管均是共陰極的。 數(shù)碼管是由 8 個發(fā)光二極管構(gòu)成的顯示器件。 電路圖如下: 21 將某一首音樂的簡譜變換成為常數(shù)表 ,計算機(jī)順序調(diào)入時間常數(shù)并以中斷方式執(zhí)行 ,從 來輸出方波驅(qū)動喇叭 ,發(fā)出不同音節(jié)的聲音 ,節(jié)拍的控制可通過調(diào)用 200Ms 延時子程序的次數(shù)來實(shí)現(xiàn) .單片機(jī)的晶振頻率為 12M Hz,樂譜中的音符 ,頻率及定時常數(shù)的關(guān)系 :T0=2^161/2f*ti; 其中 f 為音符對應(yīng)的頻率 。此外,結(jié)束符和體止符可以分別用代碼 00H和 FFH 來表示,若查表結(jié)果為 00H,則表示曲子終了;若查表結(jié)果為 FFH,則產(chǎn)生相應(yīng)的停頓效果。例如對 1/4 拍音符,定時時間為 秒,相應(yīng)的時間常數(shù)為 16(即 10H);對 3拍音符,定時時間為 秒,相應(yīng)時間長數(shù)為 192(即C0H)。我們可以用 T0 來產(chǎn)生 10 毫秒的時間基準(zhǔn),然后設(shè)置一個中斷計數(shù)器,通過判別中斷計數(shù)器的值來控制節(jié)拍時間的長短。其它節(jié)拍與時間的對應(yīng)關(guān)系見表 2。音符的節(jié)拍我們可以用定時器T0 來控制,送入不同的初值,就可以產(chǎn)生不同的定時時間。根據(jù)表 1可以奏出音符。樂曲中,每一音符對應(yīng)著確定的頻率,表 1給出 C 調(diào)時各音符頻率及其相應(yīng)的時間常數(shù)。這樣,當(dāng) 的高電平或低電平的持續(xù)時間為 ,即 R3 的時間常數(shù)取 2500/20=125(7DH)時,就能發(fā)出 200HZ 的音調(diào)。打鈴一定時間,標(biāo)志位置 0, 輸出低電平,三極管打開,蜂鳴器停止工作。主體硬件圖下圖: 20 3. 1 發(fā)聲電路 口控制繼電器進(jìn)而控制蜂鳴器工作。若系統(tǒng)中只有一個中斷源,則 響應(yīng)時間在 3個同期到 8 個周期之間。若正在執(zhí)行的一條指令還沒有進(jìn)行到最后一個周期,那么附加的等待時間不會超過 3個周期,因?yàn)橐粭l指令的最長執(zhí)行時間為 4 個周期 (MUL 和 DIV)。 如果發(fā)生了第 3 節(jié)所述的 3 種情況之一,那么中斷請求受阻,中斷響應(yīng)時間會更長些。調(diào)用本身要花費(fèi)兩個機(jī)器周期。在每個機(jī)器周期的 S5P2,0INT 和 1INT 端的電平被鎖到內(nèi)部保持寄存器中,而實(shí)際上在下一個周期才會查詢這些值。例如,可以利用單穩(wěn)態(tài)觸發(fā)器對中斷源信號進(jìn)行整形,使之 符合要求。 對于電平激活的外部中斷,由于在硬件上, CPU 對 0INT 和 1INT 引腳的信號完全沒有控制 (在專用寄存器中,沒有相應(yīng)的中斷請求標(biāo)志 ),也不像某些微處理機(jī)那樣.響應(yīng)中斷后會自動發(fā)出一個應(yīng)答信號。 對于定時器 0 或 1 溢出中斷, CPU 在響應(yīng)中斷后,就用硬件清除了有關(guān)的中斷請求標(biāo)志 TF0()或 TFl(TCON.?),即中斷請求是自動撤除的,無需采取其他措施。 如果采用電平激活外部中斷方式,外部中斷源應(yīng)一直保持中斷請求有效.直至所請求的中斷得到響應(yīng)時為止。 由于外部中斷引腳每個機(jī)器周期被采樣一次,為確保采樣,由引腳 INTx 輸入的信號應(yīng)至少保持一個機(jī)器周期,即 12 個振蕩器周期。若 ITX= 0(X 為 0 18 或 l,后文中用到類同的符號,其含意相似 ),則 采用電平激活方式:在 INTx 引腳上檢測到低電平,將觸發(fā)外部中斷。 外部中斷的激活方式分為兩種:一種是電平激活.另一種是邊沿激活。 RETI 指令將清除”優(yōu)先級激活”觸發(fā)器 (該觸發(fā)器在響應(yīng)中斷時被置位 )。 硬件中斷服務(wù)子程序調(diào)用時,把當(dāng)時程序計數(shù)器 PC 的內(nèi)容壓入堆棧 (在 MCS— 5l 中 , PC是 16垃的,占用了 2 個字節(jié),沒有自動保存程序狀態(tài)字 PSW 的內(nèi)容 ),同時還根據(jù)中斷的來源,把相應(yīng)的向量單元地址裝入 PC 中。 當(dāng)某中斷源提出中斷請求后,作為應(yīng)答, CPU 首先使相應(yīng)的“優(yōu)先級激活”觸發(fā)器置位,以阻斷同級和低級的中斷。 若存在上述任一種情況,中斷查詢結(jié)果就被取消。在下一機(jī)器周期的 S1 狀態(tài),只要不受阻斷就開始響應(yīng)其中最高優(yōu)先級的中斷請求。 當(dāng)同時收到幾個同一優(yōu)先級的中斷要求時,哪一個要求得到服務(wù),取決于內(nèi)部的查詢順序,相當(dāng)于在每個優(yōu)先級內(nèi),還同時存在另一個輔助優(yōu)先結(jié)構(gòu)。其中一個觸發(fā)器指示某高優(yōu)先級的中斷正在得到服務(wù),所有后來的中斷都被阻斷。它們遵循這樣兩條基本規(guī)則: (1)低優(yōu)先級中斷可被高優(yōu)先級中斷所中斷,反之不能; (2)一種中斷 (不管是什么優(yōu)先級 )一旦得到響應(yīng),與它同級的中斷不能再中斷它。 PX0= 1,設(shè)定為高優(yōu)先級。 PT0= 1,設(shè)定為高優(yōu)先級。 PXl= 1,設(shè)定為高優(yōu)先級。 PTl= 1.設(shè)定為高優(yōu)先級。 (4PS()串行口中斷優(yōu)先級設(shè)定位。 (3)PT2()定時器 2中斷優(yōu)先級設(shè)定位。 其中: (1)一 ()保留位。 EX0= 0,禁止外部中斷 0 IP MCS— 51 的中斷分為 2 個優(yōu)先級。 ET0= 0,禁止定時器 0中斷。 EX1= 0,禁止外部中斷 1。 ET1= 0,禁止定時器 1中斷。 ES= 0,禁止串行口中斷。 ET2= 0,禁止定時器 2 中斷。 (2)一 (IE 6)保留位。 EA=0.禁止一切中 斷。 52子系列的中斷系統(tǒng)與此類同,只不過增加了一個中斷源。它們可分為 2個優(yōu)先級.其中每一個中斷源的優(yōu)先級都可以由程序排定。 (3)控制總線( CB) 控制總線包括片外系統(tǒng)擴(kuò)展用控制線和 片外信號對單片微機(jī)的控制線。 16 數(shù)據(jù)總線是并連到多個連接的外圍芯片的數(shù)據(jù)線上,而在同一時間里只能夠有一個是有效的數(shù)據(jù)傳送通道。 P0 口為三態(tài)雙向 口為三態(tài)雙向口,是應(yīng)用系統(tǒng)中使用最為頻繁的通道。由于地址總線寬度為 16位,故可尋址范圍為 64 KB。在 ALE 的下降沿將 P0 口輸出的地址 A0~ A7 鎖存。故 P0 口輸出的低 8 位地址 A0~ A7 必須用鎖存器鎖存。 ( 1)地址總線( AB) 地址總線由單片微機(jī) P0 口提供 低 8 位地址 A0~ A7, P2 口提供高 8 位地址A8~ A15。 80C51 系列帶總線的單片微機(jī)芯片引腳可以構(gòu)成圖 8- 1 所示的 三總線結(jié)構(gòu).即地址總線( AB)數(shù)據(jù)總線( DB)和控制總線( CB)。本次設(shè)計中采用的是按鍵式復(fù)位電路。簡單復(fù)位電路有上電復(fù)位和手動復(fù)位。 二、 單片機(jī)的工作方式 單片機(jī)有三種工作方式:復(fù)位方式、程序執(zhí)行方式以及節(jié)電工作方式。其圖 就是本次設(shè)計中時鐘信號產(chǎn)生的外部電路圖。 根據(jù)以上兩種方式的特點(diǎn),在次設(shè)計中從而采用了第一種方式。這種方式適用于多塊芯片同時工作,便于同步。 圖 單片機(jī)外接振蕩電路 15 ⑵外部時鐘方式 此方式是利用外部振蕩脈沖接入 XTAL1 或 XTAL2。 C C2對頻率有微調(diào)作用,晶體或陶瓷諧振器的頻率范圍可在 ~12MHz 之間選擇。 單片機(jī)的工作原理 一、 振蕩器與時鐘電路 時鐘電路用于產(chǎn)生單片機(jī)工作所需要的時鐘信號。 ● P3 口也是一個 8 位準(zhǔn)雙向 I/O口,不但可以作通用 I/O 口使用,還具有第二功能。一是作通用 I/O 口用,與P1口相同。 P1 口的驅(qū)動部分與 P0 口不同 ,內(nèi)部有上拉電阻。 P0 口作為分時復(fù)用的地址 /數(shù)據(jù)總線 : P0 口一般是作為地址 /數(shù)據(jù)總線 ,這時控制線 C=1,MUX 開關(guān)向上 ,使數(shù)據(jù) /地址經(jīng)反向器與場效應(yīng)管 VT2 接通 ,當(dāng)數(shù)據(jù)輸入時 ,數(shù)據(jù)信號從引腳通過輸入緩沖器 2 進(jìn)入內(nèi)部總線。 P0 口作為普通 I/O 口使用 : 當(dāng)控制線 C=0 時 , MUX 開關(guān)向 下 , P0口作通用 I/O 口。 ● P0 口有8位, P0 口有兩個用途 ,一是作為普通 I/O 口使用 。其中 R0、 R1 寄存器除做工作寄存器外還常做間址尋址的地址指針 ⑷單片機(jī)的輸入 /輸出端口 C51 中有 4 個8位并行輸入 /輸出端口記為 P0、 P P P3 共 32 根線。 00H1FH 共32個單元。 ⑶ 工作寄存器 MCS51 有 32個工作寄存器,分為四個區(qū)(或組)每個區(qū)為 8 個寄存器 R0、R R R R R R
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1