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

正文內(nèi)容

基于單片機的音樂數(shù)字鐘的設(shè)計與仿真畢業(yè)設(shè)計-wenkub.com

2025-06-25 15:57 本頁面
   

【正文】 然后還要感謝大學幾年來所有的老師,為我們打下電子專業(yè)知識的基礎(chǔ);同 時還要感謝所有的同學們,正是因為有了你們的支持和鼓勵。 在這里首先要感謝我的導師 徐艷 老師。在祁老師的多次解釋分析之后,我決定使用 AT89C51單片機與 DAC0832數(shù)模轉(zhuǎn)換芯片來協(xié)作完成一個基于單片機的信號發(fā)生器。仿真單片機應(yīng)用系統(tǒng)時,應(yīng)將應(yīng)用程序目標文件( HEX 文件)載入單片機,就好像是燒錄到單片機的程序存儲器。機器匯編是通過匯編軟件將源程序變?yōu)闄C器碼,用于 MCS51 單片機的匯編軟件有早期的 A51,隨著單片機開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展, Keil 軟件是目前最流行開發(fā) MCS51 系列單片機的軟件,這從近年來各仿真機廠商紛紛宣布全面支持 Keil 即可看出。 基于單片機的音樂數(shù)字鐘的設(shè)計與仿真 33 圖 11 使用 Proteus 設(shè)計電路板流程圖 Proteus 軟件仿真 基于單片機的音樂數(shù)字鐘的設(shè)計與仿真 34 集成開發(fā)軟件 Keil C51 簡介 KEIL 是德國開發(fā)的一個 51 單片機開發(fā)軟件平臺,最開始只是一個支持 C 語言和匯編語言的編譯器軟件。 Proteus 軟件的功能強大,它集電路設(shè)計、印刷電路板設(shè)計及仿真等多種功能于一身, 軟件提供了大量模擬與數(shù)字元器件及外部設(shè)備,各種虛擬儀器(如電壓表、電流表、示波器、邏輯分析儀、信號發(fā)生器等), 不僅能夠?qū)﹄姽?、電子技術(shù)學科涉及的電路進行設(shè)計與分析,還能夠?qū)χ髁鲉纹瑱C進行設(shè)計和仿真,并且功能齊全,界面多彩,是近年來備受電子設(shè)計愛好者青睞的一款新型電子線路設(shè)計與 仿真軟件。 break。 break。 if (hour==24) { hour=0。 if ( sec==60 ) { sec=0。 TL0=0xb0。amp。 sounder=0。 } int main( ) //主函數(shù) { init( )。 TL0=0xb0。 //保證小時不閃爍時是亮著的 ge_shi=0。 ge_shi=!ge_shi。 ge_shi=!ge_shi。 } } } if (set==3) //鬧鐘小時數(shù)值調(diào)整 { if (ge_shi) { alarm_hour=alarm_hour/10*10+keyNum。 } } } if (set==2) //分鐘數(shù)值調(diào)整 { if (ge_shi) { min=min/10*10+keyNum。 基于單片機的音樂數(shù)字鐘的設(shè)計與仿真 29 if (hour23) { hour=23。 } } return num。 case 0xb7:num=11。 case 0xe7:num=0。 case 0xdb:num=8。 case 0xbd:num=6。 case 0xed:num=4。 case 0xde:num=2。 //讀取列值 P1=0x0f。 P1=0xf0。 P0=0xff。 P0=0xff。i++) { P2=wk。 } else { buf[0]=tab[alarm_min%10]。 buf[4]=tab[alarm_hour/10]。 //顯示字母 A( ALARM:鬧鐘的意思) 基于單片機的音樂數(shù)字鐘的設(shè)計與仿真 27 buf[5]=0xff。 } else { buf[6]=tab[hour%10]。 buf[4]=tab[min/10]。 buf[2]=0xbf。 } display( ) //顯示子函數(shù) { unsigned char i,wk=0x01。 //count 和 count_f 對中斷次數(shù)計數(shù), count 控制秒 //count_f 控制數(shù)碼管閃爍頻率 unsigned char set。 串行輸入口 (RXD) 串行輸出口 (TXD) 外中斷 0(INT0) 外中斷 1(INT1) 定時 /計數(shù)器 0的外部輸入口 (T0) 定時 /計數(shù)器 1的外部輸入口 (T1) 外部數(shù)據(jù)存儲器寫選通 (WR) 外部數(shù)據(jù)存儲器讀選通 (RD 5 軟件設(shè)計 程序 include include sbit key1=P1^6。 4) P3口:對應(yīng) ~ 。 3) P2口:對應(yīng) ~ 。 P0口可驅(qū)動 8個 TTL 負載。當用作數(shù)據(jù)輸出時,鎖存器對端口引腳上的數(shù)據(jù)進行鎖存;當用作輸入時,緩沖器對端口引腳上的數(shù)據(jù)進行緩沖。 4 硬件電路端口分配 I/O 端口是單片機對外部電路實現(xiàn)控制和進行信息交換的通路, AT89C51片內(nèi)有 4組 8位并行 I/O 端口 P0、 P P2和 P3。工作狀態(tài)的選擇由特殊功能寄存器 TMOD 的 T/C 位來決定 。如果要定時 5000μs,可以讓計數(shù)器從 655365000=60536 開始計數(shù),當定時 /計數(shù)器溢出時正好就是 5000μs,所以計數(shù)初值就是 60536。比如 12MHz 晶振機器周期是 1μs,計 5000 個脈沖就是 5000μs, 16位定時 /計數(shù)器的最大定時時間就是 65536μs。當計數(shù)器計滿回 0 后,就從最高位溢出 1 個脈沖,使特殊功能寄存器 TCON 中的 TF0 或 TF1 置 1,作為定時 /計數(shù)器的溢出中斷標志。 如同往一個水瓶里滴水一樣,水瓶的容量是有限的,不能無限制地往水瓶里滴水,水瓶滿了以后,再往水瓶里滴水就會溢出,單片機中的計數(shù)器也是如此, T0 和 T1 都是 16 位的計數(shù)器,它的容量也是有限的,其計數(shù)的最大值為 65535(即二進制數(shù) 1111 1111 1111 1111B),此時,再輸入一個計數(shù)脈沖則計滿溢出,將對應(yīng)的溢出標志位置 1,這個標志位就是定時器中斷標志位,就會向 CPU 發(fā)出中斷申請。 LED 定時 /計數(shù)器的結(jié)構(gòu)及工作原理 MCS51 單片機內(nèi)部集成了兩個 16 位的定時 /計數(shù)器, 即 T0 和 T1。揚聲器。 51單片機。假設(shè) 1/4拍為 1DELAY 1拍應(yīng)為 4DELAY以只要求得 1/4拍的 DELAY,音階和節(jié)拍兩大要素構(gòu)成。 圖 68 數(shù)字時鐘電路 音樂模塊 單片機產(chǎn)生音調(diào)的基本原理 音樂的產(chǎn)生主要是通過單片機的 I/O口輸出高低不同的脈沖信號來控制蜂鳴(1/頻率 )周期除以 2當計時到后就將輸出脈沖的 I/O I/O 口I/O 口上得到此頻率的脈沖。 另外,數(shù)字時鐘還必須可以通過按鍵調(diào)整時間,為了調(diào)整的方便,本任務(wù)使用行 列鍵盤,各按鍵定義如圖 67 所示。 數(shù)字時鐘的設(shè)計 而且可以顯示日期、農(nóng)歷 鐘還具備秒表 的色彩。一般采用的辦法是在RST 端和正電源 Vcc 之間 接一個按鈕。 基本的復位方式 單片機在啟動時都需要復位,以使 CPU 及系統(tǒng)各部件處于確定的初始狀態(tài),并從初態(tài)開始工作。 3 控制部分電路的設(shè)計 系統(tǒng)復位設(shè)置 單片機復位電路是使 CPU 和系統(tǒng)中的其他功能部件都處在一個確定的初始狀態(tài), PC=0000H論是在單片 單片機各種復位電路原理 復位電路的作用 在上電或復位過程中,控制 CPU 的復位狀態(tài):這段時間內(nèi)讓 CPU 保持復位狀態(tài),而不是一上電或剛復位完畢就工作,防止 CPU 發(fā)出錯誤的指令、執(zhí)行錯誤操作,也可以提高電磁兼容性能。 基于單片機的音樂數(shù)字鐘的設(shè)計與仿真 20 2.電磁式蜂鳴器 電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵、振動膜片及外殼等組成。 多諧振蕩器由晶體管或集成電路構(gòu)成。 2.蜂鳴器的分類 蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型。 74LS245還具 有雙向 三 態(tài) 功 能 ,既可 以輸出 ,也可 以輸入 數(shù)據(jù) 。 while (P1!=0xf0)。 break。 break。 break。 break。 break。 break。 break。 break。 //行作輸出,列作輸入 temp=P1。 temp=0xff。 首先將行線作為輸出線,列線作為輸入線,先通過行線輸出全 “0”信號,讀入列線的值,如果此時有某 1 個鍵被按下,則必然使某 1 列線值為 “0”;然后將行線和列線的輸入輸出關(guān)系互換(輸入輸出線反轉(zhuǎn)),列線作輸出線、行線作輸入線,再通過列線輸出全 “0”信號,讀入行線的值,那么閉合鍵所在的行線上的值必定為 “0”。 } P1=0xf0。 case 0xb7:第 3 行第 2 個按鍵的功能代碼 。 //掃描第 3 行 switch (P1) { case 0xe7:第 3 行第 0 個按鍵的功能代碼 。 break。 break。 case 0x7d:第 1 行第 3 個按鍵的 功能代碼 。 case 0xdd:第 1 行第 1 個按鍵的功能代碼 。 break。 break。 //延時去抖 if (P1!=0xf0) //再次判斷是否有按鍵按下 { P1=0xfe。如果第 0 行無鍵按下,就掃描第 1 行,用同樣的方法判斷第 1 行有沒有鍵按下,直到找到閉合鍵為止,如圖 425(a)~ (d)所示。識別閉合鍵有兩種方法:一種稱為逐行掃描法,另一種稱為線反轉(zhuǎn)法。其方法是先通過輸出端口在所有的行線上發(fā)出全 “0”信號,然后檢查輸入端口的列線信號是否為全 “1”。利用這種行列結(jié)構(gòu)只需 M 條行線和 N 條列線,就可組成具有 MN 的鍵盤,因此減 少了鍵盤與單片機接口時所占用 I/O 接口的數(shù)目。 I/O口的使用。動態(tài)掃描顯示意圖如圖 419 所示。 動態(tài)掃描顯示是一位接一位的輪流點亮各位數(shù)碼管。這種顯示方式的各位數(shù)碼管相互獨立,公共端恒定接地(共陰極)或接正電源(共陽極)。例如,對于共陽極型 LED 數(shù)碼管,當公共陽極接高電平,單片機并行口輸出二進制數(shù) 11000000(對應(yīng)十六進制數(shù) C0)時,顯示數(shù)字 “0”,則數(shù)字 “0”的段碼是 0xC0。 為了提供共陽 LED 9012 作電源驅(qū)動輸出。 數(shù)碼管顯示模塊分析 , 用動態(tài)掃描,以減少硬件電路。而所謂動態(tài)掃描就是指我們采用分時的方法 輪流 控制各個顯示器的 COM 端 是各個顯示器輪流點亮。 這兩種顯示方式各 有利弊 靜態(tài)顯示雖然數(shù)據(jù)顯示穩(wěn)定 占用很少的 CPU 時間 但每個顯示單元都需要單獨的顯示驅(qū)動電路 使用的電路硬件較多 動態(tài)顯示雖然有 閃爍感 占用的 CPU 時間多 但使用的硬件少 能節(jié)省線路板空間。 用單片機驅(qū)動 LED 數(shù)碼管有很多方法 按顯示方式分 有靜態(tài)顯示和動態(tài)顯示 按譯碼方式可分為硬件譯碼和軟件譯碼。共陽顯示器的陽極連接在一起,此時對陽極提供一正電壓,通過限流電阻控制其陰極為高電平或是低電平來決定其暗或是亮。 ( 3)按結(jié)構(gòu)分,有反射罩式、單條七段式及單片集 成式。但 RAM RAM 顯示部分 LED 顯示器 基本介紹 LED 顯示屏 ( LED panel),是一種通過控制半導體發(fā)光二極管的顯示方式,用來顯示文字、圖形、圖像、動畫、行情、視頻、錄像信號等各種信息的顯示屏幕。該反向放大器可以配 基于單片機的音樂數(shù)字鐘的設(shè)計與仿真 9 置為 片內(nèi)振蕩器。另外 該引腳被略微拉高。 ALE/PROG地 址的地位字節(jié)。 P3 P3口管腳是 8個帶內(nèi)部上拉電阻的雙向 I/O4 個 TTL 門電流。這是由于內(nèi)部上拉的緣故。 P1 P1 口是一個內(nèi)部提供上拉電阻的 8位雙向 I/O P1口緩沖器 能接收輸出 4TTL 門電流。低功耗的閑置和掉電模式 32 可編程 I/O 線 與 MCS51 兼容 單片機應(yīng)用系統(tǒng)是由硬件系統(tǒng)和軟件系統(tǒng)兩部分組成,二者缺一不可,如圖 136 所示。 單片機的應(yīng)用從根本上改變著傳統(tǒng)的控制系統(tǒng)設(shè)計思想和設(shè)計方法。它的體積小、質(zhì)量輕、價格便宜、為學習、 CP
點擊復制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1