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

正文內(nèi)容

基于單片機的多功能電子琴的設計 畢業(yè)設計-文庫吧

2025-02-06 11:56 本頁面


【正文】 AT89S52 可降至 0Hz 靜態(tài)邏輯操作,支持 2 種軟件可選擇節(jié)電模式??臻e模式下, CPU 停止工作,允許RAM、定時器 /計數(shù)器、串口、中斷繼 續(xù)工作。掉電保護方式下, RAM 內(nèi)容被保存,振蕩器被凍結(jié),單片機一切工作停止,直到下一個中斷或硬件復位為止。 主要性能:與 MCS51單片機產(chǎn)品兼容、 8K 字節(jié)在系統(tǒng)可編程 Flash 存儲器、1000 次擦寫周期、全靜態(tài)操作: 0Hz~ 33Hz 、三級加密程序存儲器 、 32 個可編程 I/O 口線 、三個 16位定時器 /計數(shù)器八個中斷源、全雙工 UART 串行通道、低功耗空閑和掉電模式、掉電后中斷可喚醒、看門狗定時器、雙數(shù)據(jù)指針、掉電標識符。 引腳說明: VCC:供電電壓。 GND:接地。 P0 口: P0 口為一個 8位漏級開路雙向 I/O 口,每腳可吸收 8TTL 門電流。當P1口的管腳第一次寫 1 時,被定義為高阻輸入。 P0 能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù) /地址的第八位。在 FIASH 編程時, P0 口作為原碼輸入口,當 FIASH 進行校驗時, P0輸出原碼,此時 P0 外部必須被拉高。 P1 口: P1 口是一個內(nèi)部提供上拉電阻的 8 位雙向 I/O 口, P1 口緩沖器能接收輸出 4TTL 門電流。 P1 口管腳寫入 1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在 FLASH編程和校驗時, P1 口作為第八位 地址接收。 P2 口: P2 口為一個內(nèi)部上拉電阻的 8位雙向 I/O口, P2 口緩沖器可接收,輸出 4個 TTL 門電流,當 P2 口被寫“ 1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時, P2 口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。 P2口當用于外部程序存儲器或 16 位地址外部數(shù)據(jù)存儲器進行存取時, P2口輸出地址的高八位。在給出地址“ 1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時, P2 口輸出其特殊功能寄存器的內(nèi)容。P2口在 FLASH 編程和校驗時接收高八位地址信號和控制信號。 P3 口 : P3 口管腳是 8個帶內(nèi)部上拉電阻的雙向 I/O 口,可接收輸出 4 個 TTL門電流。當 P3 口寫入“ 1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平, P3 口將輸出電流( ILL)這是由于上拉的緣故。 P3 口也可作為 AT89C51 的一些特殊功能口,如下表所示: 表 管腳備選功能 端口 功能 RXD(串行輸入口) 5 TXD(串行輸出口) /INT0(外部中斷 0) /INT1(外部中斷 1) T0(記時器 0 外部輸入) T1(記時器 1 外部輸入) /WR(外部數(shù)據(jù)存儲器寫選通) /RD(外部數(shù)據(jù)存儲器讀選通) P3 口同時為閃爍編程和編程校驗接收一些控制信號。 RST:復位輸入。當振蕩器復位器件時,要保持 RST 腳兩個機器周期的高電平時間。 ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在 FLASH 編程期間,此引腳用于輸入編程脈沖。在平時, ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的 1/6。因此它可用作對外部輸出的脈沖或用 于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個 ALE 脈沖。如想禁止 ALE 的輸出可在 SFR8EH 地址上置 0。此時, ALE只有在執(zhí)行 MOVX, MOVC 指令是 ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài) ALE 禁止,置位無效。 PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次 /PSEN 有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的 /PSEN 信號將不出現(xiàn)。 EA/VPP:當 /EA 保持低電平時,則在此期間外部程序存儲器( 0000HFFFFH),不 管是否有內(nèi)部程序存儲器。注意加密方式 1 時, /EA 將內(nèi)部鎖定為 RESET;當/EA 端保持高電平時,此間內(nèi)部程序存儲器。在 FLASH 編程期間,此引腳也用于施加 12V 編程電源( VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。 LED 數(shù)碼管 本次畢業(yè)設計的顯示電路采用 LED 數(shù)碼管顯示, LED( LightEmitting Diode)是一種外加電壓從而流過電流并發(fā)出可見光的器件。 LED 是屬于電流控制器件,使用時必須加限流電阻。 LED 有單個 LED 和八段 LED 之分,也有共陰和共陽兩種。 常用的七段顯示器的結(jié)構(gòu)如圖下圖所示。發(fā)光二極管的陽極連在一起的稱為共陽極顯示器 (如圖 b所示 ),陰極連在一起的稱為共陰極顯示器 (如圖 c所示 )。1位顯示器由八個發(fā)光二極管組成,其中七個發(fā)光二極管 a~g 控制七個筆畫(段) 6 的亮或暗,另一個控制一個小數(shù)點的亮和暗,這種筆畫式的七段顯示器能顯示的字符較少,字符的開頭有些失真,但控制簡單,使用方便。 此外,要畫出電路圖,首先還要搞清楚他的引腳圖的分布,在了解了正確的引腳圖后才能進行正確的字型段碼編碼。才能顯示出正確的數(shù)字來。 ( a)外形 ( b)共陽極 (C)共陰極 圖 22 數(shù)碼管引腳 顯示電路 本次畢業(yè)設計的顯示電路采用 LED 數(shù)碼管顯示,由于 LED 是屬于電流控制器件,使用時必須加限流電阻。通過單片機查表得出數(shù)碼管顯示編碼,傳送給數(shù)碼管顯示,以此來實現(xiàn)按鍵與顯示程序的一致性。 各功能模塊原理圖 和工作原理 AT89S51 模塊電路原理圖 單片機主程序模塊通過對鍵盤掃描程序信號的讀取,在通過對應的表,取出數(shù)碼管顯示編碼和定時器初始值以產(chǎn)生不同的聲音信號。在這一 過程中,對數(shù)碼管編碼是直接賦值,對聲音信號則是通過中斷程序進行控制。 圖 23 AT89S51引腳圖 7 鍵盤掃描模塊電路原理圖 對鍵盤掃描電路的掃描方式有行掃描法和線反轉(zhuǎn)法,在此次程序編寫中,采用行掃描法,通過在 p0^0~p0^3 上循環(huán)送出 0 掃描信號, p0^4~p0^7 輸入按鍵上的高低電平信息給單片機,經(jīng)處理程序,判斷出是哪個開關按下,并送主程序以實現(xiàn)不同功能。 X T A L 218X T A L 119A L E30EA31P S E N29RS T9P 0 .0 /A D 039P 0 .1 /A D 138P 0 .2 /A D 237P 0 .3 /A D 336P 0 .4 /A D 435P 0 .5 /A D 534P 0 .6 /A D 633P 0 .7 /A D 732P 1 . 01P 1 . 12P 1 . 23P 1 . 34P 1 . 45P 1 . 56P 1 . 67P 1 . 78P 3 .0 /R X D10P 3 .1 /T X D11P 3 .2 /I NT 012P 3 .3 /I NT 113P 3 .4 /T 014P 3 .7 / R D17P 3 . 6 / W R16P 3 .5 /T 115P 2 .7 /A 1 528P 2 .0 / A 821P 2 .1 / A 922P 2 .2 /A 1 023P 2 .3 /A 1 124P 2 .4 /A 1 225P 2 .5 /A 1 326P 2 .6 /A 1 427U1A T 8 9 C5 1R21 0 kR31 0 kR41 0 kR51 0 kR61 0 kR71 0 kR81 0 kR91 0 k 圖 24 鍵盤電路圖 鍵盤掃描模塊的工作原理 確定矩陣式鍵盤上何鍵被按下介紹一種“行掃描法”。 行掃描法 行掃描法又稱為逐行(或列)掃描查詢法,是一種最常用的按鍵 識別方法,其工作原理如下: 判斷鍵盤中有無鍵按下 將全部行線置低電平,然后檢測列線的狀 態(tài)。只要有一列的電平為低,則表示鍵盤中有鍵被按下,閉合的鍵位于低 電 平線與 4根行線相交叉的 4個按鍵之中。若所有列線均為高電平,則無鍵按下。 判斷閉合鍵所在的位置 在確認有鍵按下后,可進入確定具體哪個鍵閉合的過程。其方法是:依次將行線置為低電平,即在置某根行線為低電平時,其它線為高電平。在確定某根行線位置為低電平后,再逐行檢測各列線的電平狀態(tài)。若某列為低,則該列線與置為低電平的行線交叉處的按鍵就是閉合的按鍵。 鍵盤接口必須具有的 4 個基本功能。 1) 去抖動 :每個按鍵在按下或松開時,都會產(chǎn)生短時間的抖動。抖動的持續(xù)時間與鍵的質(zhì)量相關,一般為 5— 20mm。所謂抖動是 指在識別被按鍵是必須避開抖動狀態(tài),只有處在穩(wěn)定接通或穩(wěn)定斷開狀態(tài)才能保證識別正確無誤。去抖問題可通過軟件延時或硬件電路解決。 2) 防串鍵:防串鍵是為了解決多個鍵同時按下或者前一按鍵沒有釋放又有 8 新的按鍵按下時產(chǎn)生的問題。被按鍵識別:如何識別被按鍵是接口解決的主要問題,一般可通過軟硬結(jié)合的方法完成。常用的方法有行掃描法和線反轉(zhuǎn)法兩種。行掃描法的基本思想是,由程序?qū)︽I盤逐行掃描,通過檢測到的列輸出狀態(tài)來確定閉合鍵,為此需要設置入口、輸出口一個,該方法在微機系統(tǒng)中被廣泛使用。線反轉(zhuǎn)法的基本思想是通過行列顛倒兩次掃描來識 別閉合鍵,為此需要提供兩個可編程的雙向輸入 /輸出 端口 。 4)鍵碼產(chǎn)生:為了從鍵的行列坐標編碼得到反映鍵功能的鍵碼,一般在內(nèi)存區(qū)中建立一個鍵盤編碼表,通過查表獲得被按鍵的鍵碼。用 AT89C51的并行口 P0接 4 4矩陣鍵盤,以 - ,以 - ;在數(shù)碼管上顯示每個按鍵的“ 0- F”序號。 按鍵子程序流程圖如下: 9 K1鍵按下數(shù)碼管顯示0并播放DO的低音K2鍵按下數(shù)碼管顯示1并播放re的低音K3鍵按下數(shù)碼管顯示2并播放mi的低音K4鍵按下數(shù)碼管顯示3并播放fa的低音K5鍵按下數(shù)碼管顯示4并播放so的低音K6鍵按下 數(shù)碼管顯示5并播放la的低音K7鍵按下 數(shù)碼管顯示6并播放si的低音K8鍵按下 數(shù)碼管顯示7并播放do的中音 按 鍵 流 程 子 程 序 圖 ( a ) 10 K 9 鍵 按 下數(shù) 碼 管 顯 示 8 并 播 放 f a 的中 音K 1 0 鍵 按 下數(shù) 碼 管 顯 示 9 并 播 放 s o 的中 音K 1 1 鍵 按 下數(shù) 碼 管 顯 示 A 并 播 放 l a 的 中音K 1 2 鍵 按 下數(shù) 碼 管 顯 示 b 并 播 放 s i 的 中音K 1 3 鍵 按 下數(shù) 碼 管 顯 示 c 并 播 放 d o 的 高音K 1 4 鍵 按 下 數(shù) 碼 管 顯 示 d 并 播 放 r e 的 高 音K 1 5 鍵 按 下 數(shù) 碼 管 顯 示 e 并 播 放 m i 的 高 音K 1 6 鍵 按 下 數(shù) 碼 管 顯 示 f 并 播 放 f a 的 高 音K 1 7 按 下單 片 機 處 于 彈 奏 模 式K 1 8 按 下單 片 機 處 于 演 唱 模 式 圖 25 按鍵流程子程序圖( b) 數(shù)碼管工作原理及電路圖 共陽數(shù)碼管應將公共極接到 +5V,共 7 個發(fā)光二極管組成。當某一字段發(fā)光二 11 極管的陰極為低電平時,相應字段就點亮。當某一字段的陰極為高電平時,相應字段就不亮。共陰數(shù)碼管則相反。 驅(qū)動方式:要使數(shù)碼管要正常顯示,就要用驅(qū)動電路來驅(qū)動數(shù)碼管的各個段碼,從而顯示出我們要的數(shù)字,數(shù)碼管的驅(qū)動方式可分為以下兩種: ① 靜態(tài)顯示驅(qū)動:靜態(tài)驅(qū)動是指每個數(shù)碼管的每一個發(fā)光二極管都由一個單片機的 I/O 端口進行驅(qū)動,或 者使用如 BCD碼二 十進制譯碼器譯碼進行驅(qū)動。靜態(tài)驅(qū)動的優(yōu)點很明顯,編程簡單,顯示亮度較高,缺點是占用 I/O 端口多。 ② 動態(tài)顯示驅(qū)動:數(shù)碼管動態(tài)顯示是在單片機驅(qū)動數(shù)碼管顯示方式中應用廣泛的一種,動態(tài)驅(qū)動是將所有數(shù)碼管的 7 個顯示筆劃 a,b,c,d,e,f,g的同名端連在一起,此外為每個數(shù)碼管的公共極增加位選通控制電路,位選通是由各自獨立的 I/O 線控制,當單片機輸出字形碼時,所有數(shù)碼管中的 LED 都會接收到相同的字形碼,單片機對位選通端電路的控制決定到底數(shù)碼管會顯示出什么字形,因此要使得數(shù)碼 管就顯示出需要的字形只要將需要顯示的數(shù)碼管的相應選通控制打開,而沒有選通的數(shù)碼管就不會亮。 本設計所用的數(shù)碼管顯示模塊是共陰級數(shù)碼管
點擊復制文檔內(nèi)容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1