![2021年單片機(jī)實(shí)驗(yàn)心得體會(huì)_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-5/13/87a9e768-a998-4eb3-a389-01310c24fd45/87a9e768-a998-4eb3-a389-01310c24fd451.gif)
![2021年單片機(jī)實(shí)驗(yàn)心得體會(huì)_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-5/13/87a9e768-a998-4eb3-a389-01310c24fd45/87a9e768-a998-4eb3-a389-01310c24fd452.gif)
![2021年單片機(jī)實(shí)驗(yàn)心得體會(huì)_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-5/13/87a9e768-a998-4eb3-a389-01310c24fd45/87a9e768-a998-4eb3-a389-01310c24fd453.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精編word文檔 下載可編輯單片機(jī)實(shí)驗(yàn)心得體會(huì)單片機(jī)實(shí)驗(yàn)心得體會(huì)時(shí)間過得真快,不經(jīng)意間,一個(gè)學(xué)期就到了尾聲,進(jìn)入到如火如荼的期末考試階段。在學(xué)習(xí)單片機(jī)這門課程之前,就早早的聽各種任課老師和學(xué)長學(xué)姐們說過這門課程的重要性和學(xué)好這門課程的關(guān)鍵多做單片機(jī)實(shí)驗(yàn)。這個(gè)學(xué)期,我們除了在課堂上學(xué)習(xí)理論知識(shí),還在實(shí)驗(yàn)室做了7次實(shí)驗(yàn)。將所學(xué)知識(shí)運(yùn)用到實(shí)踐中,在實(shí)踐中發(fā)現(xiàn)問題,強(qiáng)化理論知識(shí)?,F(xiàn)在,單片機(jī)課程已經(jīng)結(jié)束,即將開始考試了,需要來好好的反思和回顧總結(jié)下了。第一次是借點(diǎn)亮led燈來熟悉keil軟件的使用和試驗(yàn)箱上器材。第一次實(shí)驗(yàn)體現(xiàn)了一個(gè)人對(duì)新事物的接受能力和敏感度。雖然之前做過許多種實(shí)驗(yàn)。但依舊發(fā)現(xiàn)自己存
2、在一個(gè)很大的問題,對(duì)已懂的東西沒耐心聽下去,容易開小差;在聽老師講解軟件使用時(shí),思路容易停滯,然后就跟不上老師的步驟了,結(jié)果需要?jiǎng)e人再次指導(dǎo);對(duì)軟件的功能沒有太大的熱情去研究探索,把一個(gè)個(gè)圖標(biāo)點(diǎn)開,進(jìn)去看看。所以第一次試驗(yàn)相對(duì)失敗。鑒于此,我自己在宿舍下載了軟件,然后去熟悉它的各個(gè)功能,使自己熟練掌握。在做實(shí)驗(yàn)中,第二個(gè)問題應(yīng)該是準(zhǔn)備不充分吧。一開始,由于沒有課前準(zhǔn)備的意識(shí),每每都是到了實(shí)驗(yàn)室才開始編程,完成作業(yè),導(dǎo)致每次時(shí)間都有些倉促。后來在老師的批評(píng)下,認(rèn)識(shí)到這是個(gè)很大的問題老師提前把任務(wù)告訴我們,就是希望我們私下把程序編好。于是我便在上機(jī)之前把程序編好,拷到u盤,這樣上機(jī)時(shí)只需調(diào)試,解決
3、出現(xiàn)的問題。這樣就會(huì)節(jié)約出時(shí)間和同學(xué)討論,換種思路,換種方法,把問題給吃透。發(fā)現(xiàn)、提出、分析、解決問題和實(shí)踐能力是作為我們這個(gè)專業(yè)的基本素質(zhì)。三是我的依賴性很大,剛開始編程序時(shí)喜歡套用書上的語句,卻對(duì)語句的理解不夠。于是當(dāng)程序出現(xiàn)問題時(shí),不知道如何修改,眼前的程序都是一塊一塊的被拼湊整合起來的,沒法知道哪里錯(cuò)了。但是編程是一件很嚴(yán)肅的事情,容不得半點(diǎn)錯(cuò)誤。于是便只能狠下決心,堅(jiān)持自己編寫,即使套用時(shí),也把每條語句弄懂。這也能激發(fā)了學(xué)習(xí)的興趣。還有一次實(shí)驗(yàn)是調(diào)出電腦里的程序,讓它在試驗(yàn)箱上實(shí)現(xiàn)其功,讓我們?nèi)ンw會(huì)別人編程的技巧和程序邏輯美感??戳酥螅坏貌徽f我目前的水平簡直太小兒科了。還有連線也
4、是個(gè)問題,對(duì)試驗(yàn)箱內(nèi)部結(jié)構(gòu)功能的不懂,以至于不知道如何連線讓程序?qū)崿F(xiàn)其功能。這讓我意識(shí)到單片機(jī)是軟件和硬件的結(jié)合,兩者是一個(gè)整體。所以必須把硬件方面加強(qiáng)。五是基礎(chǔ)知識(shí)的薄弱,也是最基礎(chǔ)的問題吧!在用c語言編程時(shí),才發(fā)現(xiàn)自己c語言真的太差勁了,雖然這門課程早就學(xué)過,但是就目前所掌握的c語言知識(shí),對(duì)于單片機(jī)編程遠(yuǎn)遠(yuǎn)不夠。c語言也是我們以后學(xué)各種語言的基礎(chǔ),必須要花大量的時(shí)間溫習(xí)強(qiáng)化。通過這個(gè)學(xué)期的單片機(jī)實(shí)驗(yàn),我發(fā)現(xiàn)了自己很多問題,也從中學(xué)到了很多。它不是物理實(shí)驗(yàn)時(shí),只需要記住老師說的步驟,順次做完就可以了;并不是matlab實(shí)驗(yàn),只需要你知道一些語句表達(dá),然后在不違背語法的情況下,組合好就可以了;
5、它不是eda實(shí)驗(yàn),把一節(jié)課混下去就行了,反正大家都不知道,都是混,都跟不上老師的節(jié)奏思路。他需要我們?cè)谡莆沼布幕A(chǔ)上,用單片機(jī)語言在keil軟件上寫出一定的程序,然后利用stcisp燒到試驗(yàn)箱上,實(shí)現(xiàn)其特定的功能。而在編程時(shí)需要邏輯力,創(chuàng)新力,知識(shí)組合力,知識(shí)搜索。單片機(jī)在電子技術(shù)應(yīng)用領(lǐng)域中,單片機(jī)的應(yīng)用愈來愈多地應(yīng)用到各行各業(yè)。要開發(fā)單片機(jī)的應(yīng)用,不但要掌握單片機(jī)硬件和軟件方面的知識(shí),而且還要深入了解各應(yīng)用系統(tǒng)的專業(yè)知識(shí),融會(huì)貫通和有機(jī)結(jié)合,才能設(shè)計(jì)出優(yōu)良的應(yīng)用系統(tǒng)。并且需要與時(shí)俱進(jìn),不斷了解各公司最新芯片的結(jié)構(gòu)和應(yīng)用,在實(shí)際應(yīng)用中找到最好的性能價(jià)格比。培養(yǎng)自己接受新知識(shí)的自學(xué)能力,掌握芯
6、片發(fā)展動(dòng)態(tài)。培養(yǎng)自己的創(chuàng)新精神,在原有的基礎(chǔ)上進(jìn)行改進(jìn),使之功能不斷完善。當(dāng)然,最重要到還是態(tài)度,無論做什么事情,足夠認(rèn)真,足夠堅(jiān)強(qiáng),足夠毅力,足夠決心,足夠勇氣,就一定能辦到。擴(kuò)展閱讀單片機(jī)實(shí)驗(yàn)總結(jié)單片機(jī)實(shí)驗(yàn)總結(jié)(小老師)班級(jí)生物醫(yī)學(xué)工程0803姓名王俊學(xué)號(hào)u201*12657日期201*.120-201*.006在實(shí)驗(yàn)之前便收到單片機(jī)需要小老師的通知,仔細(xì)想了一下相關(guān)的問題,也對(duì)照著之前的生物化學(xué)與分子生物學(xué)的小老師的情況,最終決定報(bào)名作為小老師。一方面自己對(duì)這方面的興趣比較大,通過這種方式應(yīng)該可以給自己一些壓力,讓自己能夠?qū)W得更好;另一方面,在作為小老師的過程中可以幫助別人,也可以發(fā)現(xiàn)更
7、多的問題,這樣可以互相促進(jìn),共同進(jìn)步。所以一開始便覺得作為一名小老師是非常有意義的。在第一個(gè)實(shí)驗(yàn)之前便對(duì)小老師集中進(jìn)行了一次授課,主要是對(duì)實(shí)驗(yàn)的內(nèi)容作一個(gè)基本的了解。在這次課后我便開始提前做完實(shí)驗(yàn)。第一個(gè)實(shí)驗(yàn)主要內(nèi)容是寫幾個(gè)匯編程序。在實(shí)驗(yàn)之前我花了一天時(shí)間將所有程序?qū)懗鰜?,并給出了詳細(xì)的注釋。由于當(dāng)時(shí)對(duì)匯編語言還不是非常熟悉,所以程序的冗余度相當(dāng)高。當(dāng)時(shí)所用的程序中最多的是mov、movx,在涉及到循環(huán)時(shí)一般用到的都是djnz,而cjne等指令極少用到,這必然使程序太過冗長,而且在各處跳轉(zhuǎn)時(shí)要用比較巧妙的方法才能使循環(huán)的次數(shù)不出現(xiàn)錯(cuò)誤。在這些程序中沒有很好地使用程序的調(diào)用,也使程序變得復(fù)雜,
8、不便于理解。當(dāng)時(shí)為了便于觀察程序運(yùn)行的結(jié)果,在程序開始時(shí)對(duì)相關(guān)量進(jìn)行了賦值,而在程序結(jié)尾處又將相關(guān)量調(diào)出觀察效果。下面舉幾個(gè)例子說明(下面的序號(hào)對(duì)應(yīng)單片微型計(jì)算機(jī)與接口技術(shù)(第2版)的253頁程序設(shè)計(jì)選題的序號(hào))(1)將外部數(shù)據(jù)存儲(chǔ)器0001h和0002h單元內(nèi)容互換。org0000h;程序起始位置mova,#0d3h;將一個(gè)數(shù)先送進(jìn)a,以便后面觀察效果movdptr,#0001h;將外部存儲(chǔ)器地址0001h送入dptrmovxdptr,a;將a中的數(shù)據(jù)送入0001h中mova,#34h;同上movdptr,#0002h;同上movxmovmovxmovmovmovmovxmovxxchmov
9、x成movxmovxsjmpenda,dptr;觀察外部存儲(chǔ)器0001h中的內(nèi)容a,r1;觀察外部存儲(chǔ)器0002h中的內(nèi)容$;動(dòng)態(tài)暫停;匯編結(jié)束dptr,a;同上dptr,#0001h;得到外部存儲(chǔ)器地址0001h存入dptra,dptr;將外部存儲(chǔ)器0001h中的數(shù)據(jù)送入a中r2,a;將數(shù)據(jù)再存入r2中,以保留p2,#00h;得到第二個(gè)外部存儲(chǔ)器地址0002h的高位地址00hr1,#02h;得到第二個(gè)外部存儲(chǔ)器地址0002h的低位地址02ha,r1;將外部存儲(chǔ)器0002h中的數(shù)據(jù)送入a中dptr,a;將存在a中的外部存儲(chǔ)器0002h中的內(nèi)容送入外部存儲(chǔ)器0001h中a,r2;將a與r2中的內(nèi)
10、容交換,使a得到原外部存儲(chǔ)器0001h中的內(nèi)容r1,a;將原外部存儲(chǔ)器0001h中的內(nèi)容送入外部存儲(chǔ)器0002h中,交換完這本來是個(gè)簡單的程序,但由于將具體的數(shù)送進(jìn)和送出而使程序較為冗長。在前面送數(shù)部分可以寫得更為有條理,這樣可以使程序更加容易理解。(6)將外部數(shù)據(jù)存儲(chǔ)器005h單元中的十六進(jìn)制數(shù)轉(zhuǎn)換成ascii碼放回原單元。org0000h;程序起始位置movp2,#00h;將程序中的高位地址送入p2中movr7,#06h;將子程序的循環(huán)次數(shù)6送入r7中movr0,#00h;將程序中的低位起始地址送入r0中;movxa,ri或movxri,a中i=0或1;為r0指示的外部存儲(chǔ)器賦值子程序mo
11、va,#9dh;送入一個(gè)數(shù)到a中,以觀察后面效果movr0:movxr0,a;將數(shù)據(jù)送入r0中存放的地址指示的外部存儲(chǔ)器incr0;r0中存放的地址自加1inca;將a自加1,以使效果明顯djnzr7,movr0;循環(huán)執(zhí)行子程序movr7,#06h;將子程序的循環(huán)次數(shù)6送入r7中movr0,#00h;將程序中的低位起始地址送入r0中movr1,#10h;將最后存儲(chǔ)數(shù)據(jù)的低位起始地址送入r1中;轉(zhuǎn)換子程序move1:movxa,r0;將外部存儲(chǔ)器中的內(nèi)容送入a中anla,#0fh;先取a的低位進(jìn)行轉(zhuǎn)換adda,#30h;將a中的內(nèi)容轉(zhuǎn)完ascii碼,即與30h相加,4位進(jìn)行一次movb,a;將a
12、中的內(nèi)容暫時(shí)存入b中subba,#3ah;判斷a中的內(nèi)容是否小于10jcnum1;小于10,則跳轉(zhuǎn)到數(shù)字子程序1mova,b;將b中的內(nèi)容送回a中adda,#07h;將其轉(zhuǎn)換成ascii碼的a-f中的一個(gè)movxr1,a;將轉(zhuǎn)換后的內(nèi)容送回r1中存放的地址指示的外部存儲(chǔ)器中incr1;r1中存放的地址自加1move2:movxa,r0;將外部存儲(chǔ)器中的內(nèi)容送入a中anla,#0f0h;取a的高位進(jìn)行轉(zhuǎn)換中incr1incr0djnzmovmovsjmpnum1:movnum2:movxincr1sjmpmov;r1中存放的地址自加1;r0中存放的地址自加1r7,move1;循環(huán)執(zhí)行子程序r7,
13、#0ch;將子程序的循環(huán)次數(shù)12送入r7中r1,#10h;將最后存儲(chǔ)數(shù)據(jù)的低位起始地址送入r1中mova;跳到顯示子程序a,b;將b中的內(nèi)容送回a中,不能直接把b送回r1中r1,a;小于10則直接送到外部存儲(chǔ)器中;r1中存放的地址自加1move2;跳到變換子程序2a,b;將b中的內(nèi)容送回a中,不能直接把b送回r1中adda,#30h;將a中的內(nèi)容轉(zhuǎn)完ascii碼,即與30h相加,4位進(jìn)行一次movb,a;將a中的內(nèi)容暫時(shí)存入b中subba,#3ah;判斷a中的內(nèi)容是否小于10jcnum2;小于10,則跳轉(zhuǎn)到數(shù)字子程序2mova,b;將b中的內(nèi)容送回a中adda,#07h;將其轉(zhuǎn)換成ascii碼
14、的a-f中的一個(gè)movxr1,a;將轉(zhuǎn)換后的內(nèi)容送回r1中存放的地址指示的外部存儲(chǔ)器movxr1,a;小于10則直接送到外部存儲(chǔ)器中incr1;r1中存放的地址自加1incr0;r0中存放的地址自加1djnzr7,move1;循環(huán)執(zhí)行子程序movr7,#0ch;將子程序的循環(huán)次數(shù)12送入r7中movr1,#10h;將最后存儲(chǔ)數(shù)據(jù)的低位起始地址送入r1中;觀察效果子程序mova:movxa,r1;將r1中存放的地址指示的外部存儲(chǔ)器中的數(shù)據(jù)送入a中incr1;r1中存放的地址自加1djnzr7,mova;循環(huán)執(zhí)行子程序stop:sjmpstop;停止子程序sjmp$;動(dòng)態(tài)暫停end;匯編結(jié)束這里將
15、程序復(fù)雜化了,是將每個(gè)單元中的十六進(jìn)制數(shù)轉(zhuǎn)換成兩個(gè)ascii碼后送回指定單元中。而這里由于用到的指令的類型很少,使程序很復(fù)雜,特別是為了不致出現(xiàn)沒有轉(zhuǎn)換到的錯(cuò)誤而使這個(gè)子程序的順序要安排得相當(dāng)巧妙才可以。而且在適當(dāng)?shù)奈恢蒙线€要加上“sjmpstop”這樣的語句,使程序不致進(jìn)入死循環(huán)。當(dāng)然這題不是實(shí)驗(yàn)中要求。拿出這題只是來說明一下當(dāng)時(shí)的情況。單片機(jī)書上也有類似的程序,比較簡潔,可以作為參考。在這里我為了觀察效果而送進(jìn)和送出具體的內(nèi)容,那么有沒有什么辦法可以直接觀察呢?實(shí)驗(yàn)中雖然要求使用proteus,但實(shí)驗(yàn)一完全是匯編程序,所以我當(dāng)時(shí)主要是在keil中進(jìn)行的。通過查閱資料,對(duì)于單片機(jī)中的code
16、、data、idata、sfr、xdata作了初步的了解,而在keil中也可以通過以“c:”、“d:”、“i:”、“x:”開頭再加上相應(yīng)的地址的方式觀察指定的單元中的內(nèi)容,這樣便可以更方便地觀察程序運(yùn)行的結(jié)果。對(duì)于實(shí)驗(yàn)一的思考題,我的認(rèn)識(shí)如下1、為什么程序結(jié)束用“stop:sjmpstop”指令?有沒有其他的停止方式?51單片機(jī)啟動(dòng)后,是否一直不斷地在執(zhí)行指令?答程序的結(jié)束還可以使用“sjmp$”,題中的結(jié)束指令和這個(gè)作用是類似的,是通過循環(huán)而使程序停留在此處,其實(shí)“sjmp$”是動(dòng)態(tài)暫停,等待中斷的到來。51單片機(jī)啟動(dòng)后,最后如果執(zhí)行到此條指令,還是在不斷地執(zhí)行的,只不過看不出具體的效果。2
17、、比較“跟蹤”、“單步”和“斷點(diǎn)”調(diào)試方式的特點(diǎn)。答“跟蹤”和“單步”的調(diào)試方式有很多相似之處,在大多數(shù)時(shí)候,它們都是一步步執(zhí)行程序,但在調(diào)用子程序的過程中,“跟蹤”會(huì)進(jìn)入子程序,然后依然一步步地執(zhí)行程序,而“單步”會(huì)將子程序一次執(zhí)行完,相當(dāng)于沒有進(jìn)入子程序內(nèi)部;“斷點(diǎn)”主要是指在某句程序處設(shè)置斷點(diǎn),這樣程序便可一次執(zhí)行到此處,觀察運(yùn)行的結(jié)果,在keil中“斷點(diǎn)”有很多使用方法,都是很好的調(diào)試手段,由于涉及到的內(nèi)容較多,此處不再贅述。在提前完成這個(gè)實(shí)驗(yàn)的過程中,我們小老師也進(jìn)行了交流,對(duì)于可能出現(xiàn)的問題也盡量去解決,這樣才能更好地作為小老師幫助其他同學(xué)。以上主要是以第一個(gè)實(shí)驗(yàn)為例說明在實(shí)驗(yàn)之前
18、的情況。下面將結(jié)合著實(shí)驗(yàn)說說遇到的一些問題和解決辦法。在本次單片機(jī)實(shí)驗(yàn)中,我是作為生醫(yī)0804班鄭卿杭和朱舟的小老師,當(dāng)然在實(shí)際操作中,各位小老師還經(jīng)?;ハ鄮椭ハ嗵接憜栴}的。在第一次實(shí)驗(yàn)中,我們主要讓同學(xué)們用keil進(jìn)行編程。部分同學(xué)對(duì)于keil的使用還不是非常熟悉,我們和他們講解了一下基本的使用和應(yīng)該注意的問題。下面對(duì)部分人在編程后無法創(chuàng)建目標(biāo)進(jìn)行歸納1、要養(yǎng)成良好的習(xí)慣。建立一個(gè)屬于自己的單獨(dú)的文件夾,一般以英文命名比較好,有些軟件不兼容中文文件名,而且最好也不要出現(xiàn)純數(shù)字命名的文件夾,在新建工程或asm程序時(shí)命名也最好這樣去做。另外命名中除擴(kuò)展名前的“.”,其它地方最好不要再出現(xiàn)。2
19、、建立工程時(shí)的問題。我們使用的一般是atmel公司的at89c51,在新建工程時(shí)還是將startup.a51添加進(jìn)去比較好。雖然在后面可能因?yàn)樗霈F(xiàn)3個(gè)警告,但有時(shí)沒有它卻可能導(dǎo)致目標(biāo)無法創(chuàng)建。建立工程后記得將自己寫好的asm或c文件添加到工程中。3、編程問題。很多時(shí)候無法創(chuàng)建目標(biāo)都是因?yàn)樵趯懢唧w的程序時(shí)出現(xiàn)了錯(cuò)誤。最常見的錯(cuò)誤是指令寫錯(cuò)了。比如將setb寫成了steb,這需要我們?cè)诰幊虝r(shí)要十分細(xì)心,另外還要將指令的拼寫記清楚。這種錯(cuò)誤一般程序是不提示的。還有種類似的錯(cuò)誤是可能將數(shù)字0和字母o混淆了。以上都是拼寫的錯(cuò)誤中。還有另一種錯(cuò)誤是指令不匹配,比如說mov和movx的混用,在作為地址時(shí)
20、將地址值送入了除r0或r1之外的寄存器中,比如說r2。最后還有一種錯(cuò)誤,這種錯(cuò)誤會(huì)提示你某一句有語法錯(cuò)誤,這時(shí)候我們也許會(huì)很奇怪這么簡單的句子,我都檢查不下十遍了,哪里有錯(cuò)???這時(shí)你可以試著拖動(dòng)橫向的滾動(dòng)條,看看很遠(yuǎn)的地方是不是還有一個(gè)句子,如果有,那就是它導(dǎo)致錯(cuò)誤了。4、如果你確定以上錯(cuò)誤都排除了,但還是無法創(chuàng)建目標(biāo),那么可以從頭來過,從新建一個(gè)英文文件夾開始。在第一次編程中還遇到過其它問題,但由于是具體編程的問題,在過程中都有解決,而且編程主要還是要靠自己平時(shí)多寫程序,所以在此處不再贅述。當(dāng)時(shí)部分人沒有提前進(jìn)行很好地預(yù)習(xí),在實(shí)驗(yàn)過程中無法寫出其中某些程序,但在對(duì)照書上的例子后還是可以模仿著
21、寫出來,這也是一種學(xué)習(xí)的方法,但還是要注意預(yù)習(xí)和堅(jiān)持去學(xué)習(xí),不能寫過之后就又全都放下了,要在模仿中學(xué)會(huì)編程,掌握方法。后面三次實(shí)驗(yàn)有著很多共同之處,主要是要求同學(xué)們?cè)诶斫獾幕A(chǔ)上,對(duì)照著給出的電路圖來畫出電路圖,利用已給出的程序進(jìn)行運(yùn)行調(diào)試,觀察實(shí)驗(yàn)的效果。因?yàn)檫@一點(diǎn),后面三次的實(shí)驗(yàn)將放在一起進(jìn)行總結(jié)。因?yàn)樵趯?shí)驗(yàn)之前我們?cè)谧鰡纹瑱C(jī)作業(yè)時(shí)已經(jīng)多次使用proteus,所以大家對(duì)于proteus的基本使用已經(jīng)比較熟悉了。先看看實(shí)驗(yàn)中的思考題。對(duì)于實(shí)驗(yàn)二的思考題,我的認(rèn)識(shí)如下1、在七段led顯示中,如果設(shè)置20h為顯示緩沖區(qū),要顯示的字段碼送入顯示緩沖區(qū),反復(fù)調(diào)用顯示子程序即可,試編寫該顯示子程序。答
22、show:movp1,20hret這個(gè)程序與前面的例子并沒有什么本質(zhì)上的區(qū)別。有時(shí)候可能還要添加延時(shí)程序。2、能否顯示“h”、“l(fā)”、“p”、“u”的字形,試寫出它們的字段碼。答字出它們的字段碼實(shí)際就是對(duì)照七段led顯示的每段的位置,以及是共陰極型還是共陽極型,將相應(yīng)位置0或置1,然后用十六進(jìn)制數(shù)表示出來。則“h”、“l(fā)”、“p”、“u”的共陰十六進(jìn)制代碼分別為76h、38h、73h、3eh;共陽十六進(jìn)制代碼分別為89h、0c7h、8ch、0c1h。對(duì)于實(shí)驗(yàn)三的思考題,我的認(rèn)識(shí)如下1、分析用中斷和查詢方式編寫的鍵盤程序在運(yùn)行時(shí)會(huì)出現(xiàn)什么區(qū)別?答中斷方式編寫的鍵盤程序會(huì)等待中斷的到來,然后執(zhí)行相
23、應(yīng)的中斷子程序;而查詢方式是一直在運(yùn)行程序,不斷地進(jìn)行掃描,如果達(dá)到條件便執(zhí)行相應(yīng)的子程序。同時(shí)中斷方式還可能要將相應(yīng)的內(nèi)容送入和送出棧中,以保護(hù)現(xiàn)場(chǎng)。查詢方式相對(duì)來說要簡單一些,但是中斷方式更加合理實(shí)用。當(dāng)然這些東西都是相對(duì)來說的,沒有絕對(duì)的說法。2、當(dāng)單片機(jī)進(jìn)入中斷后,其sp、pc等特殊功能寄存器的內(nèi)容會(huì)發(fā)生什么變化?答由于要進(jìn)入中斷子程序,則要保護(hù)現(xiàn)場(chǎng),因?yàn)樽詈笠祷刂鞒绦?。保護(hù)現(xiàn)場(chǎng)就是將程序中的一些內(nèi)容送入棧中,這時(shí)sp就要作相應(yīng)的改變,以指向新的地址,以使最后能夠正確地返回。而根據(jù)指令的跳轉(zhuǎn),pc的內(nèi)容也要作相應(yīng)的改變,以使子程序能夠得到正確地執(zhí)行。3、中斷程序保護(hù)現(xiàn)場(chǎng)有何意義?答保
24、護(hù)現(xiàn)場(chǎng)是指將主程序中需要保護(hù)的寄存器內(nèi)容進(jìn)行保護(hù),這樣在中斷程序執(zhí)行完畢之后就可以正確地恢復(fù)現(xiàn)場(chǎng),返回主程序。這樣一來就不會(huì)因?yàn)橹袛喑绦蚨绊懫渌绦虻恼_\(yùn)行。4、在程序中,讀入按鍵端口狀態(tài)后為什么要取反?答因?yàn)樽铋_始時(shí)端口都是高電平,這樣得出的數(shù)值并不是我們所想要的,而取反之后,正好與它們對(duì)應(yīng)的數(shù)字相等,這樣就可以更好地進(jìn)行程序的編寫。(最開始端口是高電平是使讀入操作時(shí)不致出現(xiàn)誤讀。)5、兩種鍵盤輸入電路中數(shù)碼管的硬、軟件驅(qū)動(dòng)有何不同?答中斷方式的電路中數(shù)碼管和單片機(jī)之間只用了rx8,相當(dāng)于加了電阻,起到限流的作用。查詢方式中在rx8和單片機(jī)之間又加了74ls244,主要是增加電路的驅(qū)動(dòng)能力。在程序中分別在送入數(shù)據(jù)到指定端口之前和之后進(jìn)行了延時(shí)去抖動(dòng)。下面結(jié)合實(shí)驗(yàn)中大家遇到的一些問題進(jìn)行總結(jié)。由于實(shí)驗(yàn)中主要是畫出電路圖,所以也主要是針對(duì)這方面的一些問題1、首先最基本的是查找器件和連線。在proteus的庫中查找器件比較方便,只要輸入相應(yīng)的單詞或其一部分就能快速定位。在連線時(shí)注意不要將兩個(gè)元件的端腳直接相連,這樣在很多時(shí)候?qū)嶋H上是沒有連接上的。在連線時(shí)也要注意不要將不相干的線相交了或者將兩條線完全重合了。2、使用元器件一些注意事項(xiàng)。對(duì)于電阻、電容或者是它們的其他形式,如rx8等,要記得為它們?cè)O(shè)定值,否則系統(tǒng)可能將其設(shè)為默認(rèn)值,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 1986電站用工合同范例
- 醫(yī)院污水施工合同范例
- 公司分包員工合同范例
- 仿古亭施工合同范例
- 健身課程出售合同范例
- 傳媒活動(dòng)合同范本
- 中標(biāo)水泥合同范本
- 辦公度維護(hù)合同范例
- 養(yǎng)老房租房合同范例
- 沖件模具合同范例
- 四年級(jí)數(shù)學(xué)上冊(cè)口算天天練4
- 蘇教版二年級(jí)數(shù)學(xué)寒假輔導(dǎo)提高班課件 第1講 眼花繚亂的數(shù)據(jù)(66張PPT)
- 水利水電工程監(jiān)理平行檢測(cè)表部分
- 分部分項(xiàng)工程質(zhì)量檢驗(yàn)計(jì)劃表
- 社區(qū)衛(wèi)生服務(wù)中心醫(yī)療服務(wù)推薦病-2023版1-4-10
- HY/T 266-2018外壓中空纖維超濾膜表面親水性的測(cè)試接觸角法
- 【英文原版小說】the things they carried《負(fù)荷》
- 領(lǐng)導(dǎo)干部如何管理壓力與情緒課件
- 2022-2023年度神農(nóng)中華農(nóng)業(yè)科技獎(jiǎng)科研和科普類推薦書和摘要表(樣本)
- 《鄉(xiāng)土中國-差序格局》學(xué)案-統(tǒng)編版高中語文必修上冊(cè)
- 大學(xué)成績單中文(word版)
評(píng)論
0/150
提交評(píng)論