- 相關(guān)推薦
單片機(jī)實(shí)驗(yàn)報(bào)告
在我們平凡的日常里,報(bào)告不再是罕見的東西,報(bào)告中提到的所有信息應(yīng)該是準(zhǔn)確無誤的。其實(shí)寫報(bào)告并沒有想象中那么難,下面是小編為大家整理的單片機(jī)實(shí)驗(yàn)報(bào)告,希望能夠幫助到大家。
單片機(jī)實(shí)驗(yàn)報(bào)告1
綜合實(shí)驗(yàn)報(bào)告標(biāo)題(可與實(shí)驗(yàn)名稱不同)
一、實(shí)驗(yàn)?zāi)康?/strong>和要求。
二、實(shí)驗(yàn)儀器設(shè)備。
三、實(shí)驗(yàn)設(shè)計(jì)及調(diào)試:
(一)實(shí)驗(yàn)內(nèi)容。
。ǘ⿲(shí)驗(yàn)電路:畫出與實(shí)驗(yàn)內(nèi)容有關(guān)的簡單實(shí)驗(yàn)電路。
。ㄈ⿲(shí)驗(yàn)設(shè)計(jì)及調(diào)試步驟:
(1)對實(shí)驗(yàn)內(nèi)容和實(shí)驗(yàn)電路進(jìn)行分析,理出完成實(shí)驗(yàn)的設(shè)計(jì)思路。(2)列出程序設(shè)計(jì)所需的特殊標(biāo)志位、堆棧sp、內(nèi)部ram、工作寄存器等資源的分配列表,分配列表時(shí)注意考慮資源在程序執(zhí)行過程可能會(huì)出現(xiàn)沖突的問題。
(3)畫出程序設(shè)計(jì)流程圖,包括主程序和各子程序流程圖。
。4)根據(jù)(2)、(3)的內(nèi)容寫出實(shí)驗(yàn)程序。
。5)調(diào)試程序(可以使用模擬仿真器)。
a、根據(jù)程序確定調(diào)試目的,即調(diào)試時(shí)所需觀察的內(nèi)容結(jié)果。
b、根據(jù)各調(diào)試目的分別選擇調(diào)試所需的方法,如單步、斷點(diǎn)等命令,分別列出各調(diào)試方法中所需要關(guān)注記錄的內(nèi)容。
c、調(diào)試程序,按各種調(diào)試方法記錄相應(yīng)的內(nèi)容。
d、分析調(diào)試記錄的內(nèi)容和結(jié)果,找出程序中可能出錯(cuò)的地方,然后修改程序,繼續(xù)調(diào)試、記錄、分析,直到調(diào)試成功。
(四)實(shí)驗(yàn)調(diào)試過程中所遇到的問題、解決問題的思路和解決的方法。
四、實(shí)驗(yàn)后的經(jīng)驗(yàn)教訓(xùn)總結(jié)。
【上機(jī)實(shí)驗(yàn)內(nèi)容報(bào)告格式】
一、《軟件技術(shù)基礎(chǔ)》上機(jī)實(shí)驗(yàn)內(nèi)容
1、順序表的建立、插入、刪除。
2、帶頭結(jié)點(diǎn)的單鏈表的建立(用尾插法)、插入、刪除。
二、提交到個(gè)人10m硬盤空間的內(nèi)容及截止時(shí)間
1、分別建立二個(gè)文件夾,取名為順序表和單鏈表。
2、在這二個(gè)文件夾中,分別存放上述二個(gè)實(shí)驗(yàn)的相關(guān)文件。每個(gè)文件夾中應(yīng)有三個(gè)文件(、c文件、、obj文件和、exe文件)。三、實(shí)驗(yàn)報(bào)告要求及上交時(shí)間(用a4紙打。
1、格式:
《計(jì)算機(jī)軟件技術(shù)基礎(chǔ)》上機(jī)實(shí)驗(yàn)報(bào)告
用戶名se學(xué)號(hào)姓名學(xué)院
①實(shí)驗(yàn)名稱:
、趯(shí)驗(yàn)?zāi)康模?/p>
③算法描述(可用文字描述,也可用流程圖):
、茉创a:(、c的文件)
、萦脩羝聊唬闯绦蜻\(yùn)行時(shí)出現(xiàn)在機(jī)器上的畫面):
2、對c文件的要求:
程序應(yīng)具有以下特點(diǎn):a可讀性:有注釋。
b交互性:有輸入提示。
c結(jié)構(gòu)化程序設(shè)計(jì)風(fēng)格:分層縮進(jìn)、隔行書寫。四、實(shí)驗(yàn)報(bào)告內(nèi)容
0、順序表的插入。
1、順序表的刪除。
2、帶頭結(jié)點(diǎn)的單鏈表的插入。
3、帶頭結(jié)點(diǎn)的單鏈表的刪除。
注意:
1、每個(gè)人只需在實(shí)驗(yàn)報(bào)告中完成上述4個(gè)項(xiàng)目中的一個(gè),具體安排為:將自己的'序號(hào)對4求余,得到的數(shù)即為應(yīng)完成的項(xiàng)目的序號(hào)。
例如:序號(hào)為85的同學(xué),85%4=1,即在實(shí)驗(yàn)報(bào)告中應(yīng)完成順序表的刪除。
2、實(shí)驗(yàn)報(bào)告中的源代碼應(yīng)是通過編譯鏈接即可運(yùn)行的。
3、提交到個(gè)人空間中的內(nèi)容應(yīng)是上機(jī)實(shí)驗(yàn)中的全部內(nèi)容。
單片機(jī)實(shí)驗(yàn)報(bào)告2
有關(guān)單片機(jī)AD轉(zhuǎn)換的實(shí)驗(yàn)報(bào)告
一、實(shí)驗(yàn)?zāi)康?/strong>
1、理解A/D轉(zhuǎn)換的工作原理;
2、理解掌握ADC0809的A/D轉(zhuǎn)換原理和并行A/D轉(zhuǎn)換器接口的編程方法; 3、學(xué)習(xí)使用并行模/數(shù)轉(zhuǎn)換芯片ADC0809進(jìn)行電壓信號(hào)的采集和數(shù)據(jù)處理。
二、實(shí)驗(yàn)原理
在設(shè)計(jì)A/D轉(zhuǎn)換器與單片機(jī)接口之前,往往要根據(jù)A/D轉(zhuǎn)換器的技術(shù)指標(biāo)選擇A/D轉(zhuǎn)換器。A/D轉(zhuǎn)換器的主要技術(shù)指標(biāo)-----量化間隔和量化誤差是A/D轉(zhuǎn)換器的主要技術(shù)指標(biāo)之一。量化間隔可用下式表示,其中n為A/D轉(zhuǎn)換器的位數(shù): ?量化間隔
絕對誤差22
1 相對誤差n1100%2
A/D轉(zhuǎn)換器芯片種類很多,按其轉(zhuǎn)換原理可分為逐次比較式、雙重積分式、量化反饋式和并行式A/D轉(zhuǎn)換器;按其分辨率可分為8~16位的A/D轉(zhuǎn)換器芯片。目前最常用的是逐次逼近式和雙重積分式。
A/D轉(zhuǎn)換器與單片機(jī)接口具有硬、軟件相依性。一般來說,A/D轉(zhuǎn)換器與單片機(jī)的接口主要考慮的是數(shù)字量輸出線的連接、ADC啟動(dòng)方式、轉(zhuǎn)換結(jié)束信號(hào)處理方法以及時(shí)鐘的連接等。
一個(gè)ADC開始轉(zhuǎn)換時(shí),必須加一個(gè)啟動(dòng)轉(zhuǎn)換信號(hào),這一啟動(dòng)信號(hào)要由單片機(jī)提供。不同型號(hào)的ADC,對于啟動(dòng)轉(zhuǎn)換信號(hào)的要求也不同,一般分為脈沖啟動(dòng)和電平啟動(dòng)兩種:
對于脈沖啟動(dòng)型ADC,只要給其啟動(dòng)控制端上加一個(gè)符合要求的脈沖信號(hào)即可,如ADC0809、ADC574等。通常用WR和地址譯碼器的輸出經(jīng)一定的邏輯電路進(jìn)行控制;
對于電平啟動(dòng)型ADC,當(dāng)把符合要求的電平加到啟動(dòng)控制端上時(shí),立即開始轉(zhuǎn)換。在轉(zhuǎn)換過程中,必須保持這一電平,否則會(huì)終止轉(zhuǎn)換的進(jìn)行。因此,在這種啟動(dòng)方式下,單片機(jī)的控制信號(hào)必須經(jīng)過鎖存器保持一段時(shí)間,一般采用D觸發(fā)器、鎖存器或并行I/O接口等來實(shí)現(xiàn)。AD570、AD571等都屬于電平啟動(dòng)型ADC。
當(dāng)ADC轉(zhuǎn)換結(jié)束時(shí),ADC輸出一個(gè)轉(zhuǎn)換結(jié)束標(biāo)志信號(hào),通知單片機(jī)讀取轉(zhuǎn)換結(jié)果。單片機(jī)檢查判斷A/D轉(zhuǎn)換結(jié)束的方法一般有中斷和查詢兩種:
對于中斷方式,可將轉(zhuǎn)換結(jié)束標(biāo)志信號(hào)接到單片機(jī)的中斷請求輸入線上或允許中斷的I/O接口的相應(yīng)引腳,作為中斷請求信號(hào); ?對于查詢方式,可把轉(zhuǎn)換結(jié)束標(biāo)志信號(hào)經(jīng)三態(tài)門送到單片機(jī)的某一位I/O口線上,作為查詢狀態(tài)信號(hào)。
A/D轉(zhuǎn)換器的另一個(gè)重要連接信號(hào)是時(shí)鐘,其頻率是決定芯片轉(zhuǎn)換速度的基準(zhǔn)。整個(gè)A/D轉(zhuǎn)換過程都是在時(shí)鐘的作用下完成的。A/D轉(zhuǎn)換時(shí)鐘的`提供方法有兩種:一種是由芯片內(nèi)部提供(如AD574),一般不許外加電路;另一種是由外部提供,有的用單獨(dú)的振蕩電路產(chǎn)生,更多的則把單片機(jī)輸出時(shí)鐘經(jīng)分頻后,送到A/D轉(zhuǎn)換器的相應(yīng)時(shí)鐘端。
ADC0809與單片機(jī)接口
三、實(shí)驗(yàn)內(nèi)容
略
四、小結(jié)與體會(huì)
在這次的實(shí)驗(yàn)中,我成功的理解掌握了ADC0809的A/D轉(zhuǎn)換原理和并行A/D轉(zhuǎn)換器接口的編程方法,也學(xué)習(xí)了并行模/數(shù)轉(zhuǎn)換芯片ADC0809進(jìn)行電壓信號(hào)的采集和數(shù)據(jù)處理的使用方法。
單片機(jī)實(shí)驗(yàn)報(bào)告3
一、實(shí)驗(yàn)?zāi)康?/strong>
1、了解51單片機(jī)的引腳結(jié)構(gòu)。
2、根據(jù)所學(xué)匯編語言編寫代碼實(shí)現(xiàn)LED燈的流水功能。
3、利用開發(fā)板下載hex文件后驗(yàn)證功能。
二、實(shí)驗(yàn)器材
個(gè)人電腦,80c51單片機(jī),開發(fā)板
三、實(shí)驗(yàn)原理
單片機(jī)流水的實(shí)質(zhì)是單片機(jī)各引腳在規(guī)定的時(shí)間逐個(gè)上電,使LED燈能逐個(gè)亮起來但過了該引腳通電的時(shí)間后便滅燈的過程,實(shí)驗(yàn)中使用了單片機(jī)的P2端口,對8個(gè)LED燈進(jìn)行控制,要實(shí)現(xiàn)逐個(gè)亮燈即將P2的各端口逐一置零,中間使用時(shí)間間隔隔開各燈的.亮滅。使用rl或rr a實(shí)現(xiàn)位的轉(zhuǎn)換。 A寄存器的位經(jīng)過rr a之后轉(zhuǎn)換如下所示:
然后將A寄存器轉(zhuǎn)換一次便送給P2即MOV P2,A便將轉(zhuǎn)換后的數(shù)送到了P2口,不斷循環(huán)下去,便實(shí)現(xiàn)了逐位置一操作。
四、實(shí)驗(yàn)電路圖
五、通過仿真實(shí)驗(yàn)正確性
代碼如下:ORG 0
MOV A,#00000001B
LOOP:MOV P2,A
RL A
ACALL DELAY
SJMP LOOP
DELAY:MOV R1,#255
DEL2:MOV R2,#250
DEL1:DJNZ R2,DEL1
DJNZ R1,DEL2
RET
End
實(shí)驗(yàn)結(jié)果:
六、實(shí)驗(yàn)總結(jié)
這次試驗(yàn)我通過Proteus仿真實(shí)現(xiàn)對流水燈功能的實(shí)現(xiàn)。受益匪淺,對80c51的功能和結(jié)構(gòu)有了深層次的了解,我深刻的明白,要想完全了解c51還有一定距離,但我會(huì)一如既往的同困難作斗爭。在實(shí)驗(yàn)中,我遇到了不少困難,比如不知道怎么將程序?qū)戇M(jìn)單片機(jī)中,寫好程序的卻總出錯(cuò),不知道什么原因,原來沒有生成hex文件。這些錯(cuò)誤令我明白以后在試驗(yàn)中要步步細(xì)心,避免出錯(cuò)。
單片機(jī)實(shí)驗(yàn)報(bào)告4
一、實(shí)驗(yàn)?zāi)康?/strong>
1.了解溫度傳感器電路的工作原理
2. 了解溫度控制的基本原理
3. 掌握一線總線接口的使用
二、實(shí)驗(yàn)說明
這是一個(gè)綜合硬件實(shí)驗(yàn),分兩大功能:溫度的測量和溫度的控制。 1.DALLAS最新單線數(shù)字溫度傳感器DS18B20簡介
Dallas 半導(dǎo)體公司的數(shù)字化溫度傳感器DS1820是世界上第一片支持 “一線總線”接口的溫度傳感器,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設(shè)備或過程控制、測溫類消費(fèi)電子產(chǎn)品等。與前一代產(chǎn)品不同,新的產(chǎn)品支持3V~5.5V的電壓范圍,使系統(tǒng)設(shè)計(jì)更靈活、方便。
DS18B20測量溫度范圍為 -55°C~+125°C,在-10~+85°C范圍內(nèi),精度為±0.5°C。DS18B20可以程序設(shè)定9~12位的分辨率,及用戶設(shè)定的報(bào)警溫度存儲(chǔ)在EEPROM中,掉電后依然保存。
DS18B20內(nèi)部結(jié)構(gòu)
DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。DS18B20的管腳排列如下:
DQ為數(shù)字信號(hào)輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端(在寄生電源接線方式時(shí)接地)。
光刻ROM中的64位序列號(hào)是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼。64位光刻ROM的排列是:開始8位(28H)是產(chǎn)品類型標(biāo)號(hào),接著的48位是該DS18B20自身的序列號(hào),最后8位是前面56位的循環(huán)冗余校驗(yàn)碼(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一個(gè)DS18B20都各不相同,這樣就可以實(shí)現(xiàn)一根總線上掛接多個(gè)DS18B20的目的。
DS18B20中的溫度傳感器可完成對溫度的測量,以12位轉(zhuǎn)化為例:用16位符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,以0.0625℃/LSB形式表達(dá),其中S為符號(hào)位。
這是12位轉(zhuǎn)化后得到的.12位數(shù)據(jù),存儲(chǔ)在18B20的兩個(gè)8比特的RAM中,二進(jìn)制中的前面5位是符號(hào)位,如果測得的溫度大于0,這5位為0,只要將測到的數(shù)值乘以0.0625
即可得到實(shí)際溫度;如果溫度小于0,這5位為1,測到的數(shù)值需要取反加1再乘以0.0625即可得到實(shí)際溫度。
例如+125℃的數(shù)字輸出為07D0H,+25.0625℃的數(shù)字輸出為0191H,-25.0625℃的數(shù)字輸出為
DS18B20溫度傳感器的存儲(chǔ)器
DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器包括一個(gè)高速暫存RAM和一個(gè)非易失性的可電擦除的E2RAM,后者存放高溫度和低溫度觸發(fā)器TH、TL和結(jié)構(gòu)寄存器。
暫存存儲(chǔ)器包含了8個(gè)連續(xù)字節(jié),前兩個(gè)字節(jié)是測得的溫度信息,第一個(gè)字節(jié)的內(nèi)容是溫度的低八位,第二個(gè)字節(jié)是溫度的高八位。第三個(gè)和第四個(gè)字節(jié)是TH、TL的易失性拷貝,第五個(gè)字節(jié)是結(jié)構(gòu)寄存器的易失性拷貝,這三個(gè)字節(jié)的內(nèi)容在每一次上電復(fù)位時(shí)被刷新。第六、七、八個(gè)字節(jié)用于內(nèi)部計(jì)算。第九個(gè)字節(jié)是冗余檢驗(yàn)字節(jié)。
低五位一直都是1 ,TM是測試模式位,用于設(shè)置DS18B20在工作模式還是在測試模式。在DS18B20出廠時(shí)該位被設(shè)置為0,用戶不要去改動(dòng)。R1和R0用來設(shè)置分辨率,如下表所示:(DS18B20出廠時(shí)被設(shè)置為12位)
根據(jù)DS18B20的通訊協(xié)議,主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個(gè)步驟:每一次讀寫之前都要對DS18B20進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對DS18B20進(jìn)行預(yù)定的操作。復(fù)位要求主CPU將數(shù)據(jù)線下拉500微秒,然后釋放,DS18B20收到信號(hào)后等待16~60微秒左右,后發(fā)出60~240微秒的存在低脈沖,主CPU收到此信號(hào)表示復(fù)位成功。
2.本實(shí)驗(yàn)在讀取溫度的基礎(chǔ)上,完成類似空調(diào)恒溫控制的實(shí)驗(yàn)。用加熱電阻代替加熱電機(jī)。溫度值通過LED靜態(tài)顯示電路以十進(jìn)制形式顯示出來,制冷采用自然冷卻。
三、實(shí)驗(yàn)內(nèi)容及步驟
本實(shí)驗(yàn)需要用到單片機(jī)最小應(yīng)用系統(tǒng)(F1區(qū))、串行靜態(tài)顯示(I3區(qū))和溫度傳感器模塊(C3區(qū))。
1.DS18B20的CONTROL接最小應(yīng)用系統(tǒng)P1.4,OUT接最小應(yīng)用系統(tǒng)P2.0,最小系統(tǒng)的P1.0,P1.1接串行靜態(tài)顯示的DIN,CLK端。
2.用串行數(shù)據(jù)通信線連接計(jì)算機(jī)與仿真器,然后將仿真器插到模塊的鎖緊插座中,請注意仿真器的方向:缺口朝上。
3.打開Keil uVision2仿真軟件,首先建立本實(shí)驗(yàn)的項(xiàng)目文件,接著添加TH44_ DS18B20.ASM源程序,進(jìn)行編譯,直到編譯無誤。
4.編譯無誤后,全速運(yùn)行程序。程序正常運(yùn)行后,按下自鎖開關(guān)‘控制’SIC。LED數(shù)顯為 “XX”為十進(jìn)制溫度測量值, “XX”為十進(jìn)制溫度設(shè)定值,按下自鎖開關(guān)“控制”SIC則加熱源開始加熱,溫度也隨著變化,當(dāng)加熱到設(shè)定的控制溫度時(shí)如40度時(shí),停止加熱。
5.也可以把源程序編譯成可執(zhí)行文件,用ISP燒錄器燒錄到89S52/89S51芯片中。(ISP燒錄器的使用查看附錄二) 四、源程序
;單片機(jī)內(nèi)存分配申明!
TEMPER_L EQU 29H ;用于保存讀出溫度的低8位TEMPER_H EQU 28H ;用于保存讀出溫度的高8位FLAG1 EQU 38H ;是否檢測到DS18B20標(biāo)志位A_BIT EQU 20H ;數(shù)碼管個(gè)位數(shù)存放內(nèi)存位置B_BIT EQU 21H ;數(shù)碼管十位數(shù)存放內(nèi)存位置LEDBUF EQU 30HTEMPEQU 55HDIN BIT P1.0CLK BIT P1.1
ORG 0000HLJMP STARTORG 0100H START: SETBP1.4 MAIN:
LCALL GET_TEMPER;調(diào)用讀溫度子程序
;進(jìn)行溫度顯示,這里我們考慮用網(wǎng)站提供的兩位數(shù)碼管來顯示溫度 ;顯示范圍00到99度,顯示精度為1度
;因?yàn)?2位轉(zhuǎn)化時(shí)每一位的精度為0.0625度,我們不要求顯示小數(shù)所以可以拋棄29H的低4位
;將28H中的低4位移入29H中的高4位,這樣獲得一個(gè)新字節(jié),這個(gè)字節(jié)就是實(shí)際測量獲得的溫度
;這個(gè)轉(zhuǎn)化溫度的方法可是我想出來的哦~~非常簡潔無需乘于0.0625系數(shù)
MOV A,29H
MOV C,40H;將28H中的最低位移入CRRC AMOV C,41HRRC AMOV C,42HRRC AMOV C,43HRRC AMOV 29H,A
LCALL DISPLAYRESULT
LCALL DISPLAYLED;調(diào)用數(shù)碼管顯示子程序LCALL DELAY1 AJMP MAIN
; 這是DS18B20復(fù)位初始化子程序 INIT_1820:SETB P2.0NOPCLR P2.0
;主機(jī)發(fā)出延時(shí)537微秒的復(fù)位低脈沖MOV R1,#3 TSR1:MOV R0,#107DJNZ R0,$DJNZ R1,TSR1
SETB P2.0;然后拉高數(shù)據(jù)線NOPNOPNOPMOV R0,#25H TSR2:
JNB P2.0,TSR3;等待DS18B20回應(yīng)DJNZ R0,TSR2
LJMP TSR4 ; 延時(shí) TSR3:
SETB FLAG1; 置標(biāo)志位,表示DS1820存在LJMP TSR5 TSR4:
CLR FLAG1 ; 清標(biāo)志位,表示DS1820不存在
【單片機(jī)實(shí)驗(yàn)報(bào)告】相關(guān)文章:
實(shí)驗(yàn)報(bào)告11-15
實(shí)驗(yàn)報(bào)告06-21
單片機(jī)課程報(bào)告03-28
電機(jī)實(shí)驗(yàn)報(bào)告07-10
關(guān)于實(shí)驗(yàn)報(bào)告07-29
學(xué)生實(shí)驗(yàn)報(bào)告05-29