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

正文內(nèi)容

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

2025-06-21 15:51 本頁(yè)面
   

【正文】 【8】【M】.北京:化學(xué)工業(yè)出版社,2004:2527.龔尚福,朱宇,郭秀才,王忠民,微機(jī)原理與接口技術(shù)【M】.西安:西安電子科技大學(xué)出版社,2008:32.侯玉寶,陳忠平,李成群,等基于Proteu的51系列單片機(jī)設(shè)計(jì)與仿真【M】.北京:電子工業(yè)出版社,2008:2142.林志琦,郎建軍,等基于Proteus的單片機(jī)可視化軟硬件仿真【M】.北京:北京航空航天大學(xué)出版社,2006:25. 然后還要感謝大學(xué)幾年來(lái)所有的老師,為我們打下電子專業(yè)知識(shí)的基礎(chǔ);同時(shí)還要感謝所有的同學(xué)們,正是因?yàn)橛辛四銈兊闹С趾凸膭?lì)。 在這里首先要感謝我的導(dǎo)師徐艷老師。在祁老師的多次解釋分析之后,我決定使用AT89C51單片機(jī)與DAC0832數(shù)模轉(zhuǎn)換芯片來(lái)協(xié)作完成一個(gè)基于單片機(jī)的信號(hào)發(fā)生器。仿真單片機(jī)應(yīng)用系統(tǒng)時(shí),應(yīng)將應(yīng)用程序目標(biāo)文件(HEX文件)載入單片機(jī),就好像是燒錄到單片機(jī)的程序存儲(chǔ)器。機(jī)器匯編是通過(guò)匯編軟件將源程序變?yōu)闄C(jī)器碼,用于MCS51單片機(jī)的匯編軟件有早期的A51,隨著單片機(jī)開(kāi)發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語(yǔ)言到逐漸使用高級(jí)語(yǔ)言開(kāi)發(fā),單片機(jī)的開(kāi)發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開(kāi)發(fā)MCS51系列單片機(jī)的軟件,這從近年來(lái)各仿真機(jī)廠商紛紛宣布全面支持Keil即可看出。圖11 使用Proteus設(shè)計(jì)電路板流程圖Proteus 軟件仿真集成開(kāi)發(fā)軟件Keil C51簡(jiǎn)介KEIL是德國(guó)開(kāi)發(fā)的一個(gè)51單片機(jī)開(kāi)發(fā)軟件平臺(tái),最開(kāi)始只是一個(gè)支持C語(yǔ)言和匯編語(yǔ)言的編譯器軟件。Proteus 軟件的功能強(qiáng)大,它集電路設(shè)計(jì)、印刷電路板設(shè)計(jì)及仿真等多種功能于一身,軟件提供了大量模擬與數(shù)字元器件及外部設(shè)備,各種虛擬儀器(如電壓表、電流表、示波器、邏輯分析儀、信號(hào)發(fā)生器等),不僅能夠?qū)﹄姽?、電子技術(shù)學(xué)科涉及的電路進(jìn)行設(shè)計(jì)與分析,還能夠?qū)χ髁鲉纹瑱C(jī)進(jìn)行設(shè)計(jì)和仿真,并且功能齊全,界面多彩,是近年來(lái)備受電子設(shè)計(jì)愛(ài)好者青睞的一款新型電子線路設(shè)計(jì)與仿真軟件。 break。 break。 if (hour==24) { hour=0。 if ( sec==60 ) { sec=0。 TL0=0xb0。amp。 sounder=0。}int main( ) //主函數(shù){ init( )。 TL0=0xb0。 //保證小時(shí)不閃爍時(shí)是亮著的 ge_shi=0。 ge_shi=!ge_shi。 ge_shi=!ge_shi。 } } } if (set==3) //鬧鐘小時(shí)數(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。 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:鬧鐘的意思) 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對(duì)中斷次數(shù)計(jì)數(shù),count控制秒 //count_f控制數(shù)碼管閃爍頻率unsigned char set。 串行輸入口(RXD) 串行輸出口(TXD) 外中斷0(INT0) 外中斷1(INT1) 定時(shí)/計(jì)數(shù)器0的外部輸入口(T0) 定時(shí)/計(jì)數(shù)器1的外部輸入口(T1) 外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通(WR) 外部數(shù)據(jù)存儲(chǔ)器讀選通(RD5 軟件設(shè)計(jì) 程序include include sbit key1=P1^6。4)P3口:~。3)P2口:~。P0口可驅(qū)動(dòng)8個(gè)TTL負(fù)載。當(dāng)用作數(shù)據(jù)輸出時(shí),鎖存器對(duì)端口引腳上的數(shù)據(jù)進(jìn)行鎖存;當(dāng)用作輸入時(shí),緩沖器對(duì)端口引腳上的數(shù)據(jù)進(jìn)行緩沖。4 硬件電路端口分配I/O端口是單片機(jī)對(duì)外部電路實(shí)現(xiàn)控制和進(jìn)行信息交換的通路,AT89C51片內(nèi)有4組8位并行I/O端口P0、PP2和P3。工作狀態(tài)的選擇由特殊功能寄存器TMOD的位來(lái)決定。如果要定時(shí)5000μs,可以讓計(jì)數(shù)器從655365000=60536開(kāi)始計(jì)數(shù),當(dāng)定時(shí)/計(jì)數(shù)器溢出時(shí)正好就是5000μs,所以計(jì)數(shù)初值就是60536。比如12MHz晶振機(jī)器周期是1μs,計(jì)5000個(gè)脈沖就是5000μs,16位定時(shí)/計(jì)數(shù)器的最大定時(shí)時(shí)間就是65536μs。當(dāng)計(jì)數(shù)器計(jì)滿回0后,就從最高位溢出1個(gè)脈沖,使特殊功能寄存器TCON中的TF0或TF1置1,作為定時(shí)/計(jì)數(shù)器的溢出中斷標(biāo)志。如同往一個(gè)水瓶里滴水一樣,水瓶的容量是有限的,不能無(wú)限制地往水瓶里滴水,水瓶滿了以后,再往水瓶里滴水就會(huì)溢出,單片機(jī)中的計(jì)數(shù)器也是如此,T0和T1都是16位的計(jì)數(shù)器,它的容量也是有限的,其計(jì)數(shù)的最大值為65535(即二進(jìn)制數(shù)1111 1111 1111 1111B),此時(shí),再輸入一個(gè)計(jì)數(shù)脈沖則計(jì)滿溢出,將對(duì)應(yīng)的溢出標(biāo)志位置1,這個(gè)標(biāo)志位就是定時(shí)器中斷標(biāo)志位,就會(huì)向CPU發(fā)出中斷申請(qǐng)。定時(shí)/計(jì)數(shù)器的結(jié)構(gòu)及工作原理MCS51單片機(jī)內(nèi)部集成了兩個(gè)16位的定時(shí)/計(jì)數(shù)器,即T0和T1。揚(yáng)聲器作為輸出部分按照鍵盤(pán)給單片機(jī)的指令發(fā)出樂(lè)曲。鍵盤(pán)輸入。 總而言之一首樂(lè)曲是由音階和節(jié)拍兩大要素構(gòu)成。 對(duì)于音樂(lè)的節(jié)拍每個(gè)音符使用1個(gè)字節(jié)字節(jié)的高4位代表音符的高低低4位代表音符的節(jié)拍。 音樂(lè)的產(chǎn)生主要是通過(guò)單片機(jī)的I/O口輸出高低不同的脈沖信號(hào)來(lái)控制蜂鳴器發(fā)音。 1234577890設(shè)置圖66 數(shù)字時(shí)鐘數(shù)碼管顯示格式 圖67 鍵盤(pán)按鍵定義示意圖2. 仿真電路圖數(shù)字時(shí)鐘電路如圖68所示。由于數(shù)字集成電路技術(shù)的發(fā)展和采用了先進(jìn)的石英技術(shù)使電子時(shí)鐘具有走時(shí)準(zhǔn)確、性能穩(wěn)定、攜帶方便等優(yōu)點(diǎn)它還用于計(jì)時(shí)、自動(dòng)報(bào)時(shí)及自動(dòng)控制等各個(gè)領(lǐng)域。 時(shí)間對(duì)人們來(lái)說(shuō)總是那么寶貴工作的忙碌性和繁雜性容易使人忘記當(dāng)前的時(shí)間。由于人的動(dòng)作再快也會(huì)使按鈕保持接通達(dá)數(shù)十毫秒,所以,完全能夠滿足復(fù)位的時(shí)間要求。手動(dòng)按鈕復(fù)位需要人為在復(fù)位輸入端RST上加入高電平(圖1)。當(dāng)系統(tǒng)處于正常工作狀態(tài)時(shí),且振蕩器穩(wěn)定后,如果RST引腳上有一個(gè)高電平并維持2個(gè)機(jī)器周期(24個(gè)振蕩周期)以上,則CPU就可以響應(yīng)并將系統(tǒng)復(fù)位。無(wú)論是在單片機(jī)剛接上電源時(shí)還是斷電后或者發(fā)生故障后都要復(fù)位。接通電源后,振蕩器產(chǎn)生的音頻信號(hào)電流通過(guò)電磁線圈,使電磁線圈產(chǎn)生磁場(chǎng)。當(dāng)接通電源后(~15V直流工作電壓),多諧振蕩器起振,~,阻抗匹配器推動(dòng)壓電蜂鳴片發(fā)聲。3.蜂鳴器的電路圖形符號(hào) 蜂鳴器在電路中用字母“H”或“HA”(舊標(biāo)準(zhǔn)用“FM”、“LB”、“JD”等)表示。B傳輸;(接收)當(dāng)片選端/CE低電平有效時(shí),DIR=“0”,信號(hào)由74LS245還具有雙向三態(tài)功能,既可以輸出,也可以輸入數(shù)據(jù)。 while (P1!=0xf0)。 break。 break。 break。 break。 break。 break。 break。 break。 //行作輸出,列作輸入 temp=P1。temp=0xff。首先將行線作為輸出線,列線作為輸入線,先通過(guò)行線輸出全“0”信號(hào),讀入列線的值,如果此時(shí)有某1個(gè)鍵被按下,則必然使某1列線值為“0”;然后將行線和列線的輸入輸出關(guān)系互換(輸入輸出線反轉(zhuǎn)),列線作輸出線、行線作輸入線,再通過(guò)列線輸出全“0”信號(hào),讀入行線的值,那么閉合鍵所在的行線上的值必定為“0”。 } P1=0xf0。 case 0xb7:第3行第2個(gè)按鍵的功能代碼。 //掃描第3行 switch (P1) { case 0xe7:第3行第0個(gè)按鍵的功能代碼。 break。 break。 case 0x7d:第1行第3個(gè)按鍵的功能代碼。 case 0xdd:第1行第1個(gè)按鍵的功能代碼。 break。 break。 //延時(shí)去抖 if (P1!=0xf0) //再次判斷是否有按鍵按下 { P1=0xfe。如果第0行無(wú)鍵按下,就掃描第1行,用同樣的方法判斷第1行有沒(méi)有鍵按下,直到找到閉合鍵為止,如圖425(a)~(d)所示。識(shí)別閉合鍵有兩種方法:一種稱為逐行掃描法,另一種稱為線反轉(zhuǎn)法。其方法是先通過(guò)輸出端口在所有的行線上發(fā)出全“0”信號(hào),然后檢查輸入端口的列線信號(hào)是否為全“1”。利用這種行列結(jié)構(gòu)只需M條行線和N條列線,就可組成具有MN的鍵盤(pán),因此減少了鍵盤(pán)與單片機(jī)接口時(shí)所占用I/O接口的數(shù)目。 經(jīng)過(guò)兩種方案比較選擇方案二。 鍵盤(pán) 方案一采用獨(dú)立式按鍵。這種通過(guò)分時(shí)輪流控制各個(gè)數(shù)碼管的COM端送出相應(yīng)段碼,使各個(gè)數(shù)碼管輪流受控、依次顯示且循環(huán)往復(fù)的方式稱為動(dòng)態(tài)掃描顯示。 (a)顯示數(shù)字“0” (b)顯示數(shù)字“5”圖417 數(shù)碼管靜態(tài)顯示方式示意圖數(shù)碼管的動(dòng)態(tài)掃描顯示方式當(dāng)單片機(jī)系統(tǒng)中需要多個(gè)數(shù)碼管顯示時(shí),如果采用靜態(tài)顯示方式,并行I/O接口的引腳數(shù)將不能滿足需要,這時(shí)可采用動(dòng)態(tài)掃描顯示方式。數(shù)碼管的靜態(tài)顯示方式數(shù)碼管的靜態(tài)顯示是指數(shù)碼管顯示某一數(shù)字或字符時(shí),相應(yīng)的發(fā)光二極管恒定導(dǎo)通或恒定截止??刂?個(gè)發(fā)光二極管的8位二進(jìn)制數(shù)稱為段碼。 為了提供共陽(yáng)LED數(shù)碼管的驅(qū)動(dòng)電壓用三極管9012作電源驅(qū)動(dòng)輸出。當(dāng)某段驅(qū)動(dòng)電路的輸入端為低電平時(shí)該端所連接的字段導(dǎo)通并點(diǎn)亮。所以本設(shè)計(jì)也采用動(dòng)態(tài)顯示方案。CPU向字段輸出口送出字形碼時(shí)所有顯示器接受到相同的字形碼但究竟是哪個(gè)顯示器亮則取決于COM端而這一端是由I/O控制的可以自行決定何時(shí)顯示哪一位了。 動(dòng)態(tài)顯示要CPU時(shí)刻對(duì)顯示器件進(jìn)行刷新顯示數(shù)據(jù)有閃爍感占用CPU時(shí)間多。因此,在顯示比較復(fù)雜的字符、漢字或圖形時(shí),可采用點(diǎn)陳顯示的辦法。圖71所示為共陽(yáng)和共陰的七段顯示器,在顯示器中除了顯示數(shù)字必須的七段筆畫(huà)外,還提供了小數(shù)點(diǎn)。(2)按顏色分有紅、橙、黃、綠等數(shù)種。在掉電模式下保存RAM的內(nèi)容并且凍結(jié)振蕩器禁止所用其他芯片功能直到下一個(gè)硬件復(fù)位為止。在芯片擦操作中代碼陣列全被寫(xiě)“1”且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前該操作必須被執(zhí)行。石晶振蕩和陶瓷振蕩均可采用。 XTAL1反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)這兩次有效的/PSEN信號(hào)將不出現(xiàn)。另外該引腳被略微拉高。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。當(dāng)振蕩器復(fù)位器件時(shí)要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。當(dāng)P3口寫(xiě)入“1”后它們被內(nèi)部上拉為高電平并用作輸入。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí)P2口輸出地址的高八位。在FLASH編程和校驗(yàn)時(shí)P1口作為第八位地址接收。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器它可以被定義為數(shù)據(jù)/地址的第八位。片內(nèi)振蕩器和時(shí)鐘電路 2 管腳說(shuō)明 VCC供電電壓。兩個(gè)16位定時(shí)器/計(jì)數(shù)器 全靜態(tài)工作0Hz24Hz 與MCS51 兼容
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1