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

正文內(nèi)容

基于mcs51單片機(jī)的在線(xiàn)仿真實(shí)驗(yàn)系統(tǒng)畢業(yè)論文(編輯修改稿)

2025-07-17 12:32 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 SB串并選擇,高電平--并行;低電平--串行16NC17REST復(fù)位信號(hào),低電平有效18VOUT/NC19LEDALED背光源供電引腳20LEDKLEDA接+5V,LEDK接GND,P0口是數(shù)據(jù)口,RD和WR分別是寄存器選擇和讀寫(xiě)控制,具體功能如下表36所示。表36 液晶屏寄存器選擇和讀寫(xiě)控制RDWR作用LL寫(xiě)指令到指令寄存器(IR)LH讀忙標(biāo)志位(BF)和地址計(jì)數(shù)器(AC)HL寫(xiě)數(shù)據(jù)到數(shù)據(jù)寄存器(DR)HH讀數(shù)據(jù)從數(shù)據(jù)寄存器(DR) 4 系統(tǒng)仿真及實(shí)驗(yàn)設(shè)置 系統(tǒng)實(shí)驗(yàn)設(shè)置概述目前單片機(jī)教學(xué)主要的手段還是課程的講授。按照計(jì)劃和教學(xué)大綱,有條不紊的進(jìn)行理論的學(xué)習(xí)。雖然這種教授的方法很系統(tǒng),很全面,可是弊端也是很明顯。學(xué)生被動(dòng)的接受,老師不斷不斷的灌輸,老一套的教學(xué)方法,不僅容易使人疲勞,而且學(xué)生的接受程度不高,不能很好記憶和理解,更談不上實(shí)踐應(yīng)用。以此,單片機(jī)在許多學(xué)生的眼里是一門(mén)很難的課程。解決這種問(wèn)題的方法就是從實(shí)驗(yàn)入手,一興趣帶動(dòng)學(xué)習(xí)。充分開(kāi)發(fā)的學(xué)生學(xué)習(xí)的主動(dòng)性,主動(dòng)的尋求相關(guān)的知識(shí),以強(qiáng)烈的求知欲完成對(duì)單片機(jī)理論的學(xué)習(xí)。這樣不僅輕松了老師,學(xué)生也會(huì)覺(jué)得更加的有趣,開(kāi)發(fā)出更高的創(chuàng)造性。一開(kāi)始的學(xué)習(xí)是很茫然的,甚至不知道從何處入手。以此設(shè)計(jì)一份由淺入深,由易入難的實(shí)驗(yàn)要求是十分必要的。從而帶動(dòng)學(xué)生一步步的深入,更好更快的完成單片機(jī)知識(shí)的學(xué)習(xí)。本文中設(shè)置的實(shí)驗(yàn)?zāi)依怂杏布娐房梢詫?shí)現(xiàn)的功能,針對(duì)每一份外設(shè)進(jìn)行了不同的實(shí)驗(yàn)。主要學(xué)習(xí)單片機(jī)的應(yīng)用,同時(shí)學(xué)習(xí)部分單片機(jī)常用的元件。在以后工作學(xué)習(xí)中,由此打下基礎(chǔ),可實(shí)現(xiàn)觸類(lèi)旁通。 單片機(jī)程序設(shè)計(jì)目前,單片機(jī)編程應(yīng)用廣泛的是C語(yǔ)言,所以學(xué)習(xí)單片機(jī)C語(yǔ)言的應(yīng)用是十分必要的。不過(guò),匯編語(yǔ)言有利于掌握單片機(jī)的底層結(jié)構(gòu),所以在實(shí)驗(yàn)之初,匯編語(yǔ)言和C語(yǔ)言同時(shí)使用,以打下扎實(shí)的基礎(chǔ)。本文中設(shè)置的實(shí)驗(yàn),都給出了明確 的要求,學(xué)生可以按照要求進(jìn)行實(shí)驗(yàn),完成學(xué)習(xí)的過(guò)程。由于篇幅的限制,一下主要簡(jiǎn)略介紹C語(yǔ)言開(kāi)發(fā)單片機(jī)的內(nèi)容。 用C語(yǔ)言進(jìn)行單片機(jī)程序開(kāi)發(fā)的優(yōu)點(diǎn)開(kāi)發(fā)計(jì)算機(jī)程序所用的語(yǔ)言家族中,C語(yǔ)言是應(yīng)用最廣泛的一種,并且還延伸拓展到許多其他的領(lǐng)域。C語(yǔ)言有許多優(yōu)點(diǎn),例如學(xué)習(xí)難度較小,支持平臺(tái)廣泛,技術(shù)資料也較多,喜愛(ài)用C語(yǔ)言進(jìn)行程序開(kāi)發(fā)的程序員也是最多。目前C語(yǔ)言在許多的硬件開(kāi)發(fā)中葉得到了應(yīng)用,譬如:MCS—51單片機(jī),AVR單片機(jī),ARM單片機(jī),以及DSP等等。C語(yǔ)言和底層硬件的關(guān)系并不是十分的密切,C語(yǔ)言編寫(xiě)的程序在經(jīng)過(guò)簡(jiǎn)單修改后就可以應(yīng)用不同的處理器,同時(shí)C語(yǔ)言編寫(xiě)的庫(kù)函數(shù)可以直接利用,大大減少了開(kāi)發(fā)的時(shí)間,提高了開(kāi)發(fā)的效率。單片機(jī)系統(tǒng)在不斷的發(fā)展過(guò)程中,也選擇了使用C語(yǔ)言進(jìn)行開(kāi)發(fā)。C語(yǔ)言開(kāi)發(fā)的單片機(jī)程序具有易讀、高效、可移植、易維護(hù)等諸多的優(yōu)點(diǎn),所以現(xiàn)在單片機(jī)的應(yīng)用中已普遍的采用C語(yǔ)言進(jìn)行開(kāi)發(fā)。C語(yǔ)言開(kāi)發(fā)單片機(jī)程序相對(duì)于使用匯編語(yǔ)言有著明顯的優(yōu)勢(shì)。首先,程序員不需要完全的掌握單片機(jī)指令系統(tǒng),可以很容易的就學(xué)會(huì)使用C語(yǔ)言對(duì)單片機(jī)編程;其次,不需要分心管理寄存器和數(shù)據(jù)類(lèi)型等各種細(xì)節(jié)問(wèn)題,節(jié)省大量的時(shí)間。 單片機(jī) C 語(yǔ)言中的基本數(shù)據(jù)類(lèi)型和基礎(chǔ)語(yǔ)句 無(wú)論在什么樣的編程語(yǔ)言中,都有各種不同的數(shù)據(jù)類(lèi)型,而且不同的數(shù)據(jù)類(lèi)型所占用的數(shù)據(jù)存儲(chǔ)空間也是不同的。MCS51單片機(jī)所擁有的存儲(chǔ)空間總量是有限的,為了更節(jié)省的使用單片機(jī)的存儲(chǔ)空間,給不同的數(shù)據(jù)變量賦予不同的數(shù)據(jù)類(lèi)型是很必要的。數(shù)據(jù)類(lèi)型能夠提高單片機(jī)的利用效率。不同的數(shù)據(jù)類(lèi)型不僅表示不同類(lèi)型的數(shù)據(jù),還有不同的數(shù)據(jù)表示范圍。在使用某一個(gè)數(shù)據(jù)或者函數(shù)變量的時(shí)候,需要實(shí)現(xiàn)的聲明數(shù)據(jù)的類(lèi)型。C51的編譯器能夠根據(jù)這個(gè)聲明明白不同的數(shù)據(jù)所屬的類(lèi)型,從而正確的分配存儲(chǔ)空間。C語(yǔ)言中常用的數(shù)據(jù)類(lèi)型如下表41所示:表41 常用數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型表示符號(hào)表示范圍無(wú)符號(hào)字符型Unsigned char0到255有符號(hào)字符型Char128到127無(wú)符號(hào)整型Unsigned int0到65535有符號(hào)整型Int32768到32767在單片機(jī)的C語(yǔ)言中也有不同的邏輯語(yǔ)句,其中常用的基礎(chǔ)語(yǔ)句有:選擇邏輯語(yǔ)句if,循環(huán)邏輯語(yǔ)句while、do while 、for,多分枝選擇邏輯語(yǔ)句switch case五種語(yǔ)句。通常在單片機(jī)的C語(yǔ)言編程中也就使用這些邏輯語(yǔ)句了。 單片機(jī) C 語(yǔ)言程序工程的基礎(chǔ)構(gòu)成單片機(jī)C語(yǔ)言編寫(xiě)的工程項(xiàng)目可以分為C源文件和頭文件兩類(lèi)。通常情況下,我們會(huì)將不同的函數(shù)寫(xiě)在不弄的C源文件中,這樣編寫(xiě)項(xiàng)目組織明確,利于開(kāi)發(fā)。在程序完全編寫(xiě)完之后將所有的源文件都鏈接到一起,這樣再通過(guò)編譯之后生成hex文件或者bin文件。不過(guò)常用的還是hex文件。C源文件的構(gòu)成和常用的C語(yǔ)言構(gòu)成完全相同,并且C元件也是以“.c”作為源文件的擴(kuò)展名。一個(gè)C語(yǔ)言的源程序可以由不同功能的幾個(gè)函數(shù)構(gòu)成,也可由由單一功能的一個(gè)函數(shù)構(gòu)成。不過(guò)在C語(yǔ)言的源程序中,一定會(huì)有一個(gè)主函數(shù)main()。程序運(yùn)行會(huì)從主函數(shù)main()開(kāi)始,在主函數(shù)中可以調(diào)用不能功能的其他函數(shù)。不過(guò)當(dāng)調(diào)用的函數(shù)是外部函數(shù)的時(shí)候,需要在主函數(shù)之前先進(jìn)行聲明,如此才能正常的調(diào)用。程序在主函數(shù)內(nèi)按順序執(zhí)行,當(dāng)主函數(shù)內(nèi)所有的語(yǔ)句都執(zhí)行完畢的時(shí)候,程序結(jié)束。C語(yǔ)言的頭文件主要包含了一定類(lèi)型的函數(shù)和變量信息。當(dāng)程序比較簡(jiǎn)單的時(shí)候我們可能用不到頭文件。但是當(dāng)程序比較復(fù)雜的時(shí)候,頭文件就是必不可少的。因?yàn)樵诔绦蛑袝?huì)有許多的函數(shù),而且函數(shù)之間可能因?yàn)榛ハ嗟恼{(diào)用而又復(fù)雜的關(guān)系。此時(shí)函數(shù)的聲明就是十分復(fù)雜繁瑣的。如果把所有的函數(shù)聲明都同意加到頭文件中,然后在源程序開(kāi)始的部分加上“inculde **.h”,就可以很好的解決。同時(shí)函數(shù)中所用各種全局變量也可以放入頭文件中。我們?cè)趩纹瑱C(jī)的C語(yǔ)言程序中,常用到的頭文件是“”。該頭文件中包含了51系列單片機(jī)所有特殊功能寄存器和位寄存器以及各種端口、定時(shí)器定義等內(nèi)容。在編寫(xiě)單片機(jī)C語(yǔ)言程序的時(shí)候,加上“include ”,就可以直接使用我們熟悉各種特殊寄存器符號(hào)和端口符號(hào)等。,它包含了常用的各種數(shù)學(xué)函數(shù)。了解了單片機(jī)程序項(xiàng)目的結(jié)構(gòu)之后,我們就可以嘗試著編寫(xiě)單片機(jī)C語(yǔ)言程序了。編寫(xiě)C語(yǔ)言程序的時(shí)候,要注意形成良好的編程習(xí)慣。不同邏輯層次的語(yǔ)句用不同的縮進(jìn)層次表現(xiàn)出來(lái),然后還要注意個(gè)程序加注釋。注釋的方法有“//”和“/*……*/”兩種。給程序加上注釋之后,能夠加強(qiáng)程序的可讀性,并且對(duì)于程序的再利用和移植使用都有很大的幫助。 實(shí)驗(yàn)系統(tǒng)基本實(shí)驗(yàn)程序設(shè)計(jì)和仿真結(jié)果為了配合本文中設(shè)計(jì)的單片機(jī)實(shí)驗(yàn)系統(tǒng)的使用,更大程度的發(fā)揮單片機(jī)實(shí)驗(yàn)系統(tǒng)的作用,編寫(xiě)了下面了實(shí)驗(yàn)。實(shí)驗(yàn)內(nèi)同由淺入深,并且附錄了部分實(shí)驗(yàn)的程序,可以供學(xué)生學(xué)習(xí)參考。因本文篇幅的限制,只列出了每個(gè)實(shí)驗(yàn)的基礎(chǔ)要求和內(nèi)容,其他的內(nèi)容不再贅述。 單片機(jī) I/O 口控制實(shí)驗(yàn)實(shí)驗(yàn)?zāi)康模和ㄟ^(guò)此實(shí)驗(yàn)學(xué)習(xí) I/O 口的基本使用方法和如何編程。實(shí)驗(yàn)內(nèi)容:利用P1口作為輸出,線(xiàn)點(diǎn)亮二極管,這樣觀察二極管亮滅的情況。然后修改程序,使特定的一個(gè)或幾個(gè)二極管點(diǎn)亮。這是單片機(jī)入門(mén)的第一個(gè)程序,總結(jié)單片機(jī) C 語(yǔ)言的編程方法和思路,熟悉 C51 的基本結(jié)構(gòu),學(xué)會(huì) KEIL 軟件的使用。軟件仿真:用keilc51編寫(xiě)程序,生成hex文件。一、打開(kāi)keil軟件之后,新建一個(gè)工程,保存文件,新建“.c”文檔并加入工程中。設(shè)置軟件,使keil軟件能夠產(chǎn)生hex文件。 keil軟件 單擊“Flash——Configure Flash Tools”,出現(xiàn)對(duì)話(huà)框options for target“Target1”。 。 keil軟件三、單擊“output”選項(xiàng),勾中選項(xiàng)“Creat Hex File”, 。這樣就設(shè)置好了。四、然后編寫(xiě)軟件程序。由于只是點(diǎn)亮二極管,程序十分簡(jiǎn)單,只需要將P1置0就可以。單擊“Project——Build Target”,編譯連接之后,就會(huì)產(chǎn)生hex文件,文件在工程目錄下。. keil軟件 將單片機(jī)的P1口與8支led等連接上。將hex文件導(dǎo)入單片機(jī)中,; led燈仿真。 led燈仿真仿真結(jié)果分析:仔細(xì)觀察。程序已經(jīng)正確運(yùn)行。如果想要點(diǎn)亮不同的二極管,只需要改變P1口輸出的值。P1口接二極管的陰極,所以任何一個(gè)P1口管腳輸出為0電平,都會(huì)點(diǎn)亮一只二極管。 閃爍燈實(shí)驗(yàn) 實(shí)驗(yàn)?zāi)康模罕緦?shí)驗(yàn)是單片機(jī)技術(shù)的基礎(chǔ)訓(xùn)練,通過(guò)該實(shí)驗(yàn)使學(xué)生掌握單片機(jī)C語(yǔ)言程序的編寫(xiě)方法,熟悉掌握I/O口的基本使用。實(shí)驗(yàn)內(nèi)容:一,在P1端口上接發(fā)光二極管,使二極管在不停地一亮一滅。二,通過(guò)P1口接發(fā)光二極管,程序開(kāi)始運(yùn)行后,第一只二極管點(diǎn)亮,第二只二極管點(diǎn)亮,第一只二極管滅;,第三只二極管亮,第二只二極管滅;如此,直至第八只二極管亮,第一只二極管在點(diǎn)亮,第八只滅。一直循環(huán),并且觀察二極管是否如要求一樣的點(diǎn)亮。程序流程圖P1口置1開(kāi)始P1口置零 閃爍燈流程圖編寫(xiě)程序,例程如下:/********************************************將P2口同8路led燈相連*******************************************/include void delay(unsigned int i)。 main(){ P2 = 0x00。 delay(600)。 P2 = 0xff。 delay(600)。 }/*******延時(shí)函數(shù)*************/void delay(unsigned int i){ unsigned char j。 for(i。 i 0。 i) for(j = 150。 j 0。 j)。} 。 閃爍燈仿真仿真結(jié)果及分析:,可以觀察到8只led燈有規(guī)律的閃爍。二極管發(fā)光情況和P1口輸出數(shù)據(jù)一樣,當(dāng)P1為0時(shí),全亮。要實(shí)現(xiàn)要求二的實(shí)驗(yàn)現(xiàn)象,只需要讓P1口按如下規(guī)律變化:FEH——FDH——FBH——F7H——EFH——DFH——BFH——7FH——FEH——…… 驅(qū)動(dòng)蜂鳴器實(shí)驗(yàn)實(shí)驗(yàn)?zāi)康模和ㄟ^(guò)此實(shí)驗(yàn)學(xué)習(xí)驅(qū)動(dòng)蜂鳴器的方法和編程。并且學(xué)會(huì)用 KEIL 軟件實(shí)現(xiàn)延時(shí)的精確計(jì)算和帶參數(shù)的函數(shù)的寫(xiě)法和調(diào)用。 實(shí)驗(yàn)內(nèi)容:一、編寫(xiě)一段程序, 口控制(輸出3K 到4K 頻率的方波),使蜂鳴器發(fā)出嘹亮的響聲。二、嘗試按照音譜輸入一段程序, 口控制,使的蜂鳴器發(fā)出有旋律的音樂(lè)。 程序流程圖:精確延時(shí),T約為300us左右開(kāi)始 蜂鳴器驅(qū)動(dòng)流程圖例程如下:include void delay(unsigned int i)。 sbit Beep=P1^5。 main(){ Beep=~Beep。 delay(1)。 Beep = ~Beep。 delay(1)。}/*******延時(shí)函數(shù)*************/void delay(unsigned int i){ unsigned char j。 for(i。 i 0。 i) for(j = 150。 j 0。 j)。}仿真實(shí)驗(yàn)結(jié)果及分析: 蜂鳴器仿真。當(dāng)點(diǎn)擊運(yùn)行按鈕后,發(fā)出嘹亮的響聲。說(shuō)明硬件電路接線(xiàn)及選用器件均正確。 定時(shí)器應(yīng)用實(shí)驗(yàn)實(shí)驗(yàn)?zāi)康模和ㄟ^(guò)此實(shí)驗(yàn)學(xué)習(xí)掌握單片機(jī)內(nèi)部定時(shí)計(jì)數(shù)器的使用和編程方法,并且學(xué)習(xí)掌握定時(shí)器查詢(xún)使用程序的編寫(xiě)方法。實(shí)驗(yàn)內(nèi)容:由51內(nèi)部定時(shí)器1,按方式1工作,即作為16位定時(shí)器使用。P1口連接8個(gè)發(fā)光二極管。使用定時(shí)器定時(shí),編寫(xiě)程序控制,要求開(kāi)機(jī)之后第一、第二兩個(gè)二極管亮,1s之后,第三、第四兩個(gè)二極管亮,第一、第二兩個(gè)二極管滅,第2s之后,第五、第六兩個(gè)二極管亮,第三、第四兩個(gè)二極管滅,第3s之后,第七、第八兩個(gè)二極管亮,第五、第六兩個(gè)二極管滅, 第4s之后,再?gòu)念^開(kāi)始循環(huán),一直循環(huán)往復(fù)。程序流程圖:等待1s等待1s等待1s等待1s4兩燈2滅6兩燈亮4滅8兩燈亮6滅開(kāi)始2 兩燈亮8兩燈滅 定時(shí)器應(yīng)用流程圖例程:include include sbit Beep = P1^5 。 unsigned char n=0。void int1() interrupt 3 { TH0=0xd8。 TL0=0xef。 n++。} void main() { unsigned char p,m=0。 unsigned char i=0。 TMODamp。=0xf0。 TMOD|=0x10。 TH1=0xD8。TL1=0xEF。 IE=0x88。 TR1=1。 while(1) { if (n=100) { n=0。 m++。 } switch (m){ case 0:break。 case 1:P1=0x3f。break。 case 2:P1=0xcf。break。 case 3:P1=0xf3。break。 default :P1=0xfc。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1