久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

單片機實驗感想(含5篇)

時間:2019-05-12 13:44:54下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《單片機實驗感想》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《單片機實驗感想》。

第一篇:單片機實驗感想

這次課程設計是我感覺有點接近現(xiàn)實的一次,因為這次課程設計需要動腦動手,把自己在課堂上學的軟件和硬件知識應用進來,特別是要單片機111條指令集非常熟悉。要完成這次課程設計,首先要弄懂步進電機的工作原理,與外部電路的的連妝,單片機原理,匯編語言等。因為這次課程設計的基本程序是給出的,要求我們在讀懂基本程序的基礎上拓展步進電機的更多功能,這次我做的是用按鍵控制電機的停止、啟動,加減速、正反轉(zhuǎn)。實驗原理比較簡單

但由于是第一次接觸步進電機,碰到的困難還是挺多的,首先是步進電機的工作原理,因為之前沒接觸過步進電機,要一下子看懂它的工作原理,是很有難度的,但隨著自己對實驗程序的理解,調(diào)試的深入,慢慢地掌握了步進電機是怎樣工作的。其次是對實驗程序理解,它用了匯編語言的流程設計思想,使程序模塊化,還采用了大量的循環(huán)和子程序結構,使用了很多跳轉(zhuǎn)、控制指令。這都是單片機課程中要求我們掌握的。通過反復翻閱課本和其他參考書籍,最后還是把實驗程序弄懂了。弄懂了實驗程序,接著就是設計實驗程序,因為弄懂了基本程序,我想拓展一下還不是很容易,很快我就碰到了困難,程序銜接不起來,由于要使用很多跳轉(zhuǎn)指令,剛開始搞得我暈頭轉(zhuǎn)向,這都是自己不熟悉匯編語言造成的結果。于是我反復讀程序,查課本,了解匯編語言的設計思想,這個“不太難”的實驗程序終于讓我設計出來了。很開心。有了實驗程序,最后就是上機檢驗成果了,這部分比較簡單,很快就完成了。到這里,整個課程設計就結束了。

總的來說,這次課程設計不算難,但由于基礎知識不扎實,過程還是挺曲折的。通過這次課程設計,感覺自己的收獲良多,使我鞏固了課本上的知識,更好的理解了單片機111條指令,匯編語言的流程設計,讓自己懂得軟件和硬作結合的綜合應用。盡管時間很短不能很深入地去了解單片機和更多編程技巧,但至少這次課程設計為我們打下了學習單片機基礎。

第二篇:單片機實驗

實驗

一、MCS51單片機基本開發(fā)環(huán)境

1. 實驗目的:

1)熟悉軟件的集成開發(fā)環(huán)境 2)掌握單片機軟件設計流程

3)掌握單片機存貯器結構及各窗口之間的聯(lián)系 2. 實驗內(nèi)容:

1)用三種方法實現(xiàn)將累加器A內(nèi)容改為20H

方法1--MOV A,#20H 方法2—MOV R0,#20H MOV A,R0 方法3—MOV R0,#20H XCH A,R0 心得:越往下做實驗時就越感覺這題根本不能說是題目,但不得不說在沒接觸過編程軟件,剛開始學的匯編,第一次做的實驗就光這道題都覺得不知道做什么.所以凡是總有開始,不了解情況的多簡單的都會覺得難.2)將58H位單元置為1,觀察內(nèi)部RAM中2BH內(nèi)容的變化 代碼:

SETB 2BH.0 JMP $ END 心得:這是關于內(nèi)部存儲中對單元和字節(jié)了解,不理解很容易做錯.比如開始寫的指令為

MOV R0,#58H;MOV @R0,#1

這是錯誤的指令。這就需要認真去了解單片機中的字節(jié)地址與位地址的關系。80C51中有位尋址區(qū)和字節(jié)尋址區(qū)。題目中58H為位地址,2BH為字節(jié)地址,且58H為2B字節(jié)的最低位。由于58H屬于位尋址區(qū),可用位操作指令 SETB 進行置位,SETB 2BH.0 執(zhí)行后,2BH中內(nèi)容變?yōu)椋埃?/p>

3)如果當前狀態(tài)為有進位、工作寄存器使用區(qū)2,請用3種方法設置這種狀態(tài)

代碼:

ANL PSW,#01H MOV A,PSW

CJNE A,#01,LAB2 LAB1:JMP LAB1

LAB2: SETB PSW.4 MOV P0,#01H MOV R0,#18H CLR PSW.3 MOV C,P0.0 MOV PSW,R0 MOV PSW.4,C CPL C MOV PSW.3,C END

心得:以上LAB2寫了三段代碼,可分別完成題目要求。不過實驗時只是對代碼進行了錯誤調(diào)試,沒有對結果進行檢驗。其中值得注意的是對于布爾(位)操作指令的用法,比如傳送指令必須經(jīng)累加器C,如第二段中MOV P0,#01H;MOV C,P0.0,以及對于位尋址的方式(如需用到“.”隔開)的應用。4)編一個小程序?qū)?nèi)部RAM中的20H單元的內(nèi)容送到21H單元并調(diào)試

代碼:

MOV R0,#20H MOV @R0,#10H MOV R1,#21H MOV @R1,20H JMP $ END

5)用程序?qū)⒍褩V羔樦赶?0H,然后在堆棧中依次壓入01,02,03,04,05五個數(shù),觀察哪些單元內(nèi)容發(fā)生了變化,各變?yōu)槎嗌伲繌哪男┐翱诳梢园l(fā)現(xiàn)這些變化?順序?qū)⒍褩V械奈鍌€數(shù)放入30H~34H五個單元中,編程實現(xiàn)之。

代碼:

MOV R1,#60H MOV SP,R1 MOV DPL,#1H LAB1:PUSH DPL INC DPL MOV A,DPL CJNE A,#6,LAB1 POP 34H POP 33H POP 32H POP 31H POP 30H JMP $ END

6)將外部數(shù)據(jù)存貯器1000H~100FH 16個單元中存放00H~0FH 代碼:

MOV DPTR,#1000H MOV R1,#10H LOOP:MOVX @DPTR,#1234H MOVX A,@DPTR MOV @R1,A INC DPTR INC R1 CJNE R1,#40H,LOOP JMP $ END

心得:此處需要訪問片外存儲空間,需要借助寄存器DPTR,需注意其為16位的寄存器,在使用時若與八位寄存器進行數(shù)據(jù)交換時需分為高八位DPH與低八位DPL來用。7)若要求程序從0010H單元開始運行,可用兩種方法實現(xiàn)?

方法一 ORG 0010H 方法二 AJMP 0010H

3. 選做實驗內(nèi)容:數(shù)據(jù)傳送 目的:

1)掌握8051單片機內(nèi)部數(shù)據(jù)存貯器、外部數(shù)據(jù)存貯器的數(shù)據(jù)傳送特點和應用 2)掌握MOV,MOVX和MOVC類指令的用法及區(qū)別 內(nèi)容:

1)將片內(nèi)RAM數(shù)據(jù)區(qū)20H為首地址的十六個字節(jié)傳送到30H為首地址的數(shù)據(jù)區(qū),即:20H~2FH送30H~3FH

代碼: ORG 0000H JMP MAIN ORG 0030H MAIN:MOV R0,#20H MOV R1,#30H LOOP:MOV @R0,#1234H MOVA,@R0 MOV @R1,A INC R0 INC R1 CJNE R1,#30H,LOOP JMP $ END

2)將外部數(shù)據(jù)存儲器2000H~200FH單元的十六個數(shù)傳送至內(nèi)部數(shù)據(jù)存儲器的30H~3FH 代碼: ORG 0000H JMP MAIN ORG 0030H MAIN: MOV DPTR,#2000H MOV R1,#30H LOOP:MOVX @DPTR,#12H MOVX A,@DPTR MOV @R1,A INC DPTR INC R1 CJNE R1,#40H,LOOP JMP $ END

總體心得體會:

第一次做實驗主要是熟悉了解了下單片機編程軟件的使用,開始接觸時在對其軟件不是太了解的情況下實驗編程做的確實很亂,不清楚該怎樣進行,比如不知如何進行對指令的調(diào)試,也不清楚該如何觀察結果,沒有一個整體的概念,所以在了解其開發(fā)環(huán)境上花了不少時間。經(jīng)過一段時間的摸索后也終于了解了其具體的使用,也能夠順利的對指令的編程運用。運行指令時遇到的一些問題需要注意的也在上面各題中做了說明。還有需要注意的是:進入軟件仿真時需要對存儲空間進行查看的方法是在Address窗口中輸入:d:00h 顯示內(nèi)部數(shù)據(jù)存儲器從00h開始的單元; x:1000h 顯示外部數(shù)據(jù)存儲器從1000h開始的單元; c:0000H 顯示程序存儲器內(nèi)容。還有由于偽指令 END 定義的原因,在程序末需加一條死循環(huán)調(diào)轉(zhuǎn)指令(如 JMP $)使程序不會進入其他未知空間執(zhí)行其他指令。實驗

二、加、減法實驗

1. 實驗目的

1)正確使用單片機的加減運算指令

2)掌握不同指令對于程序狀態(tài)字的影響及程序狀態(tài)字的意義、用處 3)掌握ADD,ADDC,SUBB和DA A等指令的用法 4)學習模塊化程序設計方法 2. 實驗內(nèi)容

1)編寫3字節(jié)二進制加法子程序,并用主程序調(diào)用不同的加數(shù)和被加數(shù)來檢測該子程序的正確性。需考慮有進位和無進位情況。程序入口為: 加數(shù):22H,21H,20H三字節(jié),22H為最高位

被加數(shù):32H,31H,30H三字節(jié),32H為最高位

程序出口為: 23H,22H,21H,20H四字節(jié),23H為最高位 例如:地址:23 22 21 20 32 31 30 執(zhí)行前數(shù)據(jù): 01 23 45 FF 01 01 執(zhí)行后數(shù)據(jù):01 00 24 46

代碼:

ORG 0000H AJMP MAIN ORG 30H MAIN: MOV 22H,#01H MOV 21H,#23H MOV 20H,#45H MOV 32H,#0FFH MOV 1H,#01H MOV 30H,#01H ACALL ADDI HERE:JMP HERE ORG 100H ADDI: PUSH PSW MOV R0, #20H;加數(shù)1地址、和的地址 MOV R1, #30H;加數(shù)2地址 CLR C MOV R2, #3;循環(huán)3次 LOOP: MOV A, @R0;取 ADDC A, @R1;加 MOV @R0, A;存 INC R0 INC R1 DJNZ R2, LOOP CLR A ADDC A, #0;得到進位 MOV 23H, A;保存 POP PSW RET END

2)編寫三字節(jié)二進制減法子程序 入口:被減數(shù): 52H,51H,50H, 50H為最低位

減數(shù): 42H,41H,40H, 40H為最低位

出口:差:外部數(shù)據(jù)存貯器2003H~2000H(2000H為最低位)用主程序調(diào)用多組數(shù)據(jù)來調(diào)試,需考慮無借位和有借位兩種情況。例如:

執(zhí)行前:地址: 52 51 50 42 41 40

數(shù)據(jù): 90 80 70 10 10 10

執(zhí)行后:地址: 2003 2002 2001 2000

數(shù)據(jù): 00 80 70 60 代碼:

ORG 0000H AJMP MAIN ORG 30H MAIN: MOV 52H,#90H MOV 51H,#80H MOV 50H,#70H MOV 42H,#10H MOV 41H,#10H MOV 40H,#10H ACALL SUB1 HERE:JMP HERE SUB1: PUSH PSW MOV R0, #50H;被減數(shù)地址 MOV R1, #40H;減數(shù)地址 MOV DPTR, #2000H;差的地址 CLR C MOV R2, #3;循環(huán)3次 LOOP: MOV A, @R0;取 SUBB A, @R1;減 MOVX @DPTR, A;存 INC R0 INC R1 INC DPTR DJNZ R2, LOOP CLR A SUBB A, #0;得到借位 MOVX @DPTR, A;存 POP PSW RET END

3)編寫10位十進制加法子程序(十進制數(shù)采用壓縮BCD碼存放)入口: 加數(shù):24H—20H,低地址放低字節(jié)

被加數(shù):29H—25H,低地址放低字節(jié)

出口 和:4005H—4000H,低地址放低字節(jié)

要求調(diào)用多組數(shù)據(jù)調(diào)試,注意觀察PSW的變化,理解DA A指令的含義。例如:

執(zhí)行前地址:24 23 22 21 20 29 28 27 26 25

數(shù)據(jù):12 34 56 78 90 88 99 33 12 74

執(zhí)行后地址:4005 4004 4003 4002 4001 4000

數(shù)據(jù): 01 01 33 89 91 64

代碼:

ORG 0000H AJMP MAIN ORG 30H MAIN: MOV 24H,#12H MOV 23H,#34H MOV 22H,#56H MOV 21H,#78H MOV 20H,#90H MOV 29H,#88H MOV 28H,#99H MOV 27H,#33H MOV 26H,#12H MOV 5H,#74H ACALL ADD2 HERE:JMP HERE ADD2: PUSH PSW MOV R0, #20H;加數(shù)1地址 MOV R1, #25H;加數(shù)2地址 MOV DPTR,#4000H CLR C MOV R2, #5;循環(huán)5次 LOOP: MOV A, @R0;取 ADDC A, @R1;加

DA A;調(diào)整為BCD碼 MOVX @DPTR, A;存 INC R0 INC R1 INC DPTR DJNZ R2, LOOP POP PSW RET END

第三篇:單片機實驗

實驗一清0、移數(shù)

將片內(nèi)20H~2FH及片外0010H~001FH單元清0;

然后將片內(nèi)30H~3FH的數(shù)據(jù)移到片外0000H~000FH中;判斷:

若(30H)≤10,則求其平方存到31H中,并將位00H置1(其它位清0)若(30H)=10,則將AA存到31H中,并位01H置1(其它位清0)若(30H)≥10,則減10存到31H中,并位02H置1(其它位清0)

實驗二加法、排序

有兩個長度為10的無符號數(shù)分別放在片內(nèi)20H和30H為首的存儲單元中(低位),求其對應項之和(帶進位位),結果放在40H為首的單元中(若最高位有進位則存在后續(xù)單元中),然后按升序排列放在50H為首的單元中

實驗三查表、散轉(zhuǎn)

設有一表格,表中數(shù)為:00H、11H、22H、33H、44H、55H、66H、77H、88H、99H、AAH、BBH、CCH、DDH、EEH、FFH。根據(jù)片外0001H單元的低4位的數(shù),取出表中相應的值存到片內(nèi)30H中;根據(jù)片外0001H單元的高4位的數(shù),將片內(nèi)RAM區(qū)中可位尋址的相應的位置1(從位00H~位0FH,只可有一個位地址為1)

實驗四外中斷

P1.0~P1.7接8個發(fā)光二極管,管腳INT0、INT1接兩個按鍵,分別定義為“L”和“R”。

要求:上電全滅,按 “L”(或R)鍵,最右(左)側燈亮,每按一次“L” ”(或R)鍵,則亮的燈向左(右)移一位,當移到最左(右)端時,燈全滅

實驗五定時器

P1.0、P1.1分別接兩個發(fā)光二極管,INT0腳接

一按鍵做開關,按一次開關,則啟動,兩個發(fā)

光管一亮一滅,亮滅時間均為1秒;再按一次

開關,則關閉,即兩個發(fā)光管都滅。

實驗六定時器、計數(shù)器

P3.2口輸出周期為2S的方波,T1口為脈沖輸入端,記錄輸入的脈沖個數(shù),脈沖個數(shù)由P1口所接的8個數(shù)碼管顯示(二進制),設一按鍵作為開關控制系統(tǒng)運行,關閉時數(shù)碼管全滅,P3.2無輸出。

第四篇:單片機感想

確定課程設計作品——>網(wǎng)上查找相關資料/購買開發(fā)板(魏凌同學私人提供)——>程序代碼/開發(fā)板接線——>檢查能否正常運行/找錯,修改——>功能展示——>整理資料

從最開始確定小組課程設計的作品為電子鎖,然后在網(wǎng)上查找相關資料,再一點一點地編寫修改程序代碼,開發(fā)板接線,最后運行。期間出現(xiàn)的問題真的算是蠻多的,一開始毫無頭緒,程序代碼有些搞

不懂,線也不知道怎么接,后來,基本上都是組長魏凌同學完成的。在這次實踐中,我才深深意識到自己單片機理論知識是有很大欠缺的。

通過這次的單片機課程設計,我了解到學習單片機沒有捷徑,不能指望兩三天就學會,要堅持不懈,重在積累。單片機是一門應用性和實踐性很強的學科,要多動手,多做實驗。在實踐的過程中,發(fā)現(xiàn)問題,想辦法解決問題。同時也可以學會參考別人的程序,減少自己琢磨的時間,迅速提高自己的編程能力。在碰到問題時,可以借助網(wǎng)絡來搜尋答案和對自己有幫助的問題,一定會有所收獲。另外,小組要團結,小組之間要多交流,技術是靠不斷的積累和交流才會進步的。

近年來,隨著計算機技術的迅速發(fā)展,單片機的越來越多的應用到了我們的生活中,但是單片機并不是一門純理論課,它要求有一定的時間能力,是一門理論與實踐相結合的課。在本學期,我們學習了單片機的原理及簡單應用,由淺入深,但是單單理論知識對于我們來說未免太過枯燥和抽象。在完成課程設計的過程中,我們更多的將理

論和實踐結合,不僅幫助我更好的理解了課本上的知識,鞏固了以前所學過的知識,也培養(yǎng)了我的動手能力。在實踐的過程中難免遇到一些困難,但是通過與組員的溝通和交流也成功解決了。最后的成品電子鎖出來后我收獲了滿滿的感動。

在這幾周的實踐中,我的實際動手能力和思考能力得到了很好的鍛煉,同時在與組員的思維火花碰撞過程中,我的思維得到了啟發(fā),和人溝通的能力也得到了很好的鍛煉。

總的來說,我很感謝這次的課程實踐,也謝謝老師在這一學期的課程中對我們的悉心指導,更感謝我的組員們,沒有他們我就完成不了此次的課程設計。

通過這次的單片機課程設計,讓我們受益匪淺,確實單片機是一門很值得我們?nèi)ド钊胙芯客卣沟恼n程。原來很多本來認為很神奇的東西還可以自己動手做出來,從理論到實踐,在這段日子里,我們學習到了很多很多東西,無論是從知識上還是實踐上,自己做單片機設計實物開闊了我們的眼界,很好的提高了我們對書本上知識的理解和應用,并且也在一定程度上提高了我們的團隊協(xié)作能力!我相信這在以后的生活道路上是一直受用的。

在這次自己動手的過程中,我們也遇到許許多多困難。我們通過各種途徑去自己解決這些問題,為此我們一起泡了很久的圖書館來查閱資料。從中我們也發(fā)現(xiàn)了自己對一些知識的掌握不夠,還有動手能力不夠強,希望以后可以通過更多的實踐來鞏固加強!

回顧起此次單片機課程設計,至今我仍感慨頗多,的確,從選題到定稿,從理論到實踐,在大半月的日子里,可以說得是苦多于甜,但是可以學到很多很多的的東西,同時不僅可以鞏固了以前所學過的知識,而且學到了很多在書本上所沒有學到過的知識。通過這次課程設計使我懂得了理論與實際相結合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,從而提高自己的實際動手能力和獨立思考的能力。在設計的過程中遇到問題,可以說得是困難重重,這畢竟我第一次做的課程設計作品,難免會遇到過各種各樣的問題,同時在設計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,比如說、、、、、、、、、、(你自己舉點例子好了)對單片機匯編語言掌握得不好……通過這次課程設計之后,一定把以前所學過的知識重新溫故。雖然我們在這次課程設計中遇到了很多問題,但總歸算是完成了我們的作品,我們也從其中學到了很多在書本上無法學到的知識。

第五篇:2013單片機實驗教案

單片機技術實驗

杰 實驗一(1)順序結構程序設計

一、實驗目的

掌握匯編語言設計和調(diào)試方法。

二、實驗內(nèi)容

把外部RAM中2000h單元的內(nèi)容拆開,高位送2001h單元,低位送2002h單元,2001h、2002h高位清零,一般本程序用于把數(shù)據(jù)送顯示緩沖區(qū)時用。

三、程序流程

四、實驗步驟

1、LED環(huán)境

⑴在“P.”狀態(tài)下按“0→EV/UN”,裝載實驗所需的代碼程序。

⑵在“P.”狀態(tài)下鍵入0000,然后按“STEP”或“EXEC”進入實驗項目的調(diào)試與運行。

2、PC環(huán)境

在與PC聯(lián)機狀態(tài)下,編譯、連接、下載PH51se02.asm,用連續(xù)或單步方式運行程序。

3、運行結果檢查

⑴在單步運行時每走一步可觀察其運行結果。

⑵在連續(xù)運行狀態(tài)下,應按“暫停圖標”或?qū)嶒炏渖系摹皶和0粹o”,使系統(tǒng)無條件退出用戶運行狀態(tài)返回監(jiān)控,然后再用相應的命令鍵觀察與檢查2000~2002h中內(nèi)容變化情況。

五、思考

如何用斷點方式調(diào)試本程序。

ORG 0000H LJMP START

ORG 0030H START: MOV DPTR,#2000H

MOVX A,@DPTR ANL A,#0F0H SWAP A MOV DPTR,#2001H MOVX @DPTR,A

MOV DPTR ,#2000H MOVX A,@DPTR ANL A,0FH MOV DPTR,#2002H MOVX @DPTR,A SJMP $ END 實驗一(2)循環(huán)結構程序設計

一、實驗目的

熟悉MCS-51指令系統(tǒng),掌握程序設計方法。

二、實驗內(nèi)容

編寫并調(diào)試一個排序子程序,其功能為用冒泡法將內(nèi)容RAM中幾個單元字節(jié)無符號的正整數(shù),按從小到大的次序重新排列。

三、程序框圖

四、實驗步驟

1、LED環(huán)境

⑴在“P.”狀態(tài)下按“0→EV/UN”,裝載實驗所需的代碼程序。

⑵對片內(nèi)RAM地址50h~5AH進行不規(guī)則置數(shù)。

⑶在“P.”狀態(tài)下鍵入0000,然后按“STEP”或“EXEC”進入實驗項目的調(diào)試與運行。

2、PC環(huán)境

在與PC聯(lián)機狀態(tài)下,編譯、連接、下載PH51se05.asm,用連續(xù)或單步方式運行程序。

3、運行結果檢查

⑴在單步運行時每走一步可觀察其運行結果。

⑵在連續(xù)運行狀態(tài)下,應按“暫停圖標”或?qū)嶒炏渖系摹皶和0粹o”,使系統(tǒng)無條件退出用戶運行狀態(tài)返回監(jiān)控,然后再用相應的命令鍵觀察與檢查片內(nèi)50~5Ah中內(nèi)容是否按從 小到大排列。

五、思考:修改程序把50~5Ah中內(nèi)容按從小到大排列。

ORG 0000H LJMP START ORG 0030H MOV R7,#09H MOV R6,#00H;清除標志 CLR C MOV A,@R0 INC R0 SUBB A,@R0 JC LOOP1 MOV R6,#01H DEC R0 MOV A,@R0 INC R0 XCH A,@R0 MOV @R0,A DJNZ R7,START1 CJNE R6,#00H,START SJMP $ END START:

MOV R0,#50H START1:

DEC R0

INC R0 LOOP1:

實驗一(3)選擇結構程序設計

一、實驗目的

掌握匯編語言的編程。

二、實驗內(nèi)容

編寫程序,根據(jù)送入的數(shù)據(jù)轉(zhuǎn)移運行。

三、程序框圖

四、實驗步驟

1、LED環(huán)境

⑴在“P.”狀態(tài)下按“0→EV/UN”,裝載實驗所需的代碼程序。⑵在20H中分次送入00、01、02、03。

⑶在“P.”狀態(tài)下鍵入0A10,然后按“STEP”或“EXEC”進入實驗項目的調(diào)試與運行。

2、PC環(huán)境

在與PC聯(lián)機狀態(tài)下,編譯、連接、下載PH51se08.asm,用連續(xù)或單步方式運行程序。

3、運行結果檢查

(1)在單步運行時每走一步可觀察其運行結果。

(2)在連續(xù)運行狀態(tài)下,應按“暫停圖標”或?qū)嶒炏渖系摹皶和0粹o”,使系統(tǒng)無條件退出用戶運行狀態(tài)返回監(jiān)控,然后觀察每次運行程序后,數(shù)碼管上數(shù)字循環(huán)情況。

ORG 0000H

LJMP START

ORG 0030H START: MOV 20H,#00H MOV A,20H MOV B,#03H

MUL AB

MOV DPTR,#TAB

JMP @A+DPTR

SJMP $ ORG 3000H TAB:

LJMP LOOPA

LJMP LOOPB

LJMP LOOPC

LOOPA: MOV A,#01H LOOPA1: MOV P1,A

LCALL DELAY1S

RL A

LJMP LOOPA1

LOOPB: MOV A,#03H LOOPB1: MOV P1,A

LCALL DELAY1S

RL A

LJMP LOOPB1

LOOPC: MOV A,#05H LOOPC1: MOV P1,A

LCALL DELAY1S

RL A

LJMP LOOPC1

DELAY1S: DELAY1S3: DELAY1S2: DELAY1S1:

MOV R7,#10 MOV R6,#200 MOV R5,#250 DJNZ R5,DELAY1S1 DJNZ R6,DELAY1S2 DJNZ R7,DELAY1S3 RET END

實驗二 中斷實驗

一、實驗目的

熟悉單片機中斷概念及中斷編程方法。

二、實驗內(nèi)容

編寫程序,從P3.3輸入脈沖,記錄輸入脈沖個數(shù),并用P1口外部鏈接的發(fā)光二極管顯示技術結果。

二、參考程序

ORG 0000H

LJMP START

ORG 0013H

LJMP INT1_COUNT

ORG 0030H START:

MOV SP,#60H

MOV A,#00H

SETB IT1;下降邊沿觸發(fā)方式

SETB EX1;開啟INT1中斷

SETB EA

SJMP $ INT1_COUNT:

INC A

MOV P1,A

RETI

END

實驗三 LED顯示實驗

一、實驗要求

利用實驗系統(tǒng)提供的顯示設備,動態(tài)顯示一行數(shù)據(jù)。

二、實驗目的

⑴了解數(shù)碼管動態(tài)顯示的原理; ⑵了解用總線方式控制數(shù)碼管顯示。

三、實驗說明

本實驗系統(tǒng)提供了8位七段碼LED顯示電路,學生只要按地址輸出相應數(shù)據(jù),就可以實現(xiàn)對顯示器的控制。

四、程序框圖

ORG 0000H LJMP START ORG 0030H START: MOV SP,#60H MOV 50H,#8CH;顯示字符P.MOV 51H,#40H MOV 52H,#79H MOV 53H,#24H MOV 54H,#30H MOV 55H,#19H MOV 56H,#12H MOV 57H,#02H

LOOP1: LCALL DISPLAY

LJMP LOOP1

DISPLAY: MOV P2,#0FH MOV P0,50H LCALL DELAY20MS

MOV P2,#1FH MOV P0,51H LCALL DELAY20MS

MOV P2,#2FH MOV P0,52H LCALL DELAY20MS MOV P2,#3FH MOV P0,53H LCALL DELAY20MS

MOV P2,#4FH MOV P0,54H LCALL DELAY20MS

MOV P2,#5FH MOV P0,55H LCALL DELAY20MS

MOV P2,#6FH MOV P0,56H LCALL DELAY20MS

MOV P2,#7FH MOV P0,57H LCALL DELAY20MS

LJMP DISPLAY

DELAY20MS: MOV R7,#20 DELAY1: MOV R6,#100 DELAY2: DJNZ R6,DELAY2 DJNZ R7,DELAY1 RET

TAB: DB 40H,79H,24H,30H,19H,12H,02H;0 1 2 3 4 5 6 DB 78H,00H,10H,08H,03H,46H,21H,06H,0EH;7 8 9 A B C D E F的字符碼

TAB1: DB 8CH;P.TAB2: DB 7FH;END 的字符碼的字符碼

空,不顯示的字符

鍵盤電路實驗

電路圖:

程序:

;用int1中斷實現(xiàn)按鍵功能,鍵值存放在4fh單元中;通過P1口輸出按鍵值,用發(fā)光二極管顯示按鍵值;通過P2.4--P2.6和三八譯碼器輸出八列按鍵掃描碼;通過P2.0---P2.3讀入按鍵的行值;行列值組合,就是按鍵的鍵值 ORG 0000H LJMP START ORG 0013H LJMP key_value ORG 0030H START: MOV 4fH,#00h;存放按鍵鍵值單元 MOV P1,#00H MOV P2,#0FFH setb ex1 setb it1 setb ea KEY_SCAN: MOV P2,#0FH LCALL DELAY5MS

MOV P2,#1FH LCALL DELAY5MS

MOV P2,#2FH LCALL DELAY5MS

MOV P2,#3FH LCALL DELAY5MS

MOV P2,#4FH LCALL DELAY5MS

MOV P2,#5FH LCALL DELAY5MS

MOV P2,#6FH LCALL DELAY5MS

MOV P2,#7FH LCALL DELAY5MS

LJMP KEY_SCAN

DELAY5MS: MOV R7,#40 DELAY1: MOV R6,#100 DELAY2: DJNZ R6,DELAY2 DJNZ R7,DELAY1 RET

KEY_VALUE: PUSH ACC PUSH PSW MOV A,P2 MOV 4FH,A MOV P1,A POP PSW POP ACC RETI END

LED和鍵盤綜合實驗

電路圖:

參考程序:

ORG 0000H LJMP START ORG 0013H LJMP KEY_VALUE ORG 0030H START: MOV SP,#60H

MOV 4fH,#00h;存放按鍵鍵值單元 MOV P2,#0FFH setb ex1 setb it1 setb ea

MOV 50H,#0CH;顯示字符P.MOV 51H,#0CH MOV 52H,#7FH MOV 53H,#7FH MOV 54H,#7FH MOV 55H,#7FH MOV 56H,#7FH MOV 57H,#0CH

LOOP1: LCALL DISPLAY

LJMP LOOP1

DISPLAY: MOV P2,#0FH MOV P0,50H LCALL DELAY20MS

MOV P2,#1FH MOV P0,51H LCALL DELAY20MS

MOV P2,#2FH MOV P0,52H LCALL DELAY20MS

MOV P2,#3FH MOV P0,53H LCALL DELAY20MS

MOV P2,#4FH MOV P0,54H LCALL DELAY20MS

MOV P2,#5FH MOV P0,55H LCALL DELAY20MS

MOV P2,#6FH MOV P0,56H LCALL DELAY20MS

MOV P2,#7FH MOV P0,57H LCALL DELAY20MS

LJMP DISPLAY

DELAY20MS: MOV R7,#20 DELAY1: MOV R6,#100 DELAY2: DJNZ R6,DELAY2 DJNZ R7,DELAY1 RET

KEY_VALUE: PUSH ACC PUSH PSW MOV 4FH,P2 LCALL KEY_VALUE_DISP POP PSW POP ACC RETI

KEY_VALUE_DISP: MOV A,4FH ANL A,#0F0H SWAP A MOV DPTR,#TAB MOVC A,@A+DPTR MOV 56H,A MOV A,4FH ANL A,#0FH MOVC A,@A+DPTR MOV 57H,A RET

TAB: DB 40H,79H,24H,30H,19H,12H,02H;0 1 2 3 4 5 6的字符碼 DB 78H,00H,10H,08H,03H,46H,21H,06H,0EH;7 8 9 A B C D E F的字符碼

TAB1: DB 8CH;P.的字符碼

TAB2: DB 7FH;空,不顯示的字符 END

實驗四 A/D轉(zhuǎn)換實驗

一、實驗目的

(1)掌握A/D轉(zhuǎn)換與單片機接口的方法;(2)了解A/D芯片0809轉(zhuǎn)換性能及編程方法;(3)通過實驗了解單片機如何進行數(shù)據(jù)采集。

二、實驗內(nèi)容

利用實驗系統(tǒng)上的0809做A/D轉(zhuǎn)換器,實驗系統(tǒng)上的電位器提供模擬量輸入,編制程序,將模擬量轉(zhuǎn)換成數(shù)字,通過數(shù)碼管顯示出來。

三、程序框圖

四、實驗電路

五、實驗步驟

把0809的零通道INT0用插針接至AINl孔,0809CS位FFE0孔,運行程序,數(shù)碼管顯示0809.XX,后二位顯示當前采集的電壓轉(zhuǎn)換的數(shù)字量,調(diào)節(jié)W1,該二位將隨著電壓變化而相應變化。

六、思考

修改程序,用其它通道輪流采樣顯示。

實驗五 電腦時鐘(定時器、中斷綜合實驗)

一、實驗目的

熟悉MCS-51定時器,串行口和中斷初始化編程方法,了解定時器的應用實時程序的設計與調(diào)試技巧。

二、實驗內(nèi)容

編寫程序,從本實驗系統(tǒng)鍵盤上輸入時間初值,用定時器產(chǎn)生0.1S定時中斷,對時鐘計數(shù)器計數(shù),并將數(shù)值實時地送數(shù)碼管顯示。

三、程序框圖

四、實驗步驟

連續(xù)運行程序,在鍵盤上輸入時間初值,按執(zhí)行鍵EXEC執(zhí)行,數(shù)碼管上實時顯示時間值。

五、思考

(1)電子鐘走時精度和程序中那些常數(shù)有關?

(2)修改程序使定時器工作方式改變,調(diào)節(jié)有關參數(shù),進一步提高精度。

六、參考程序

ORG 0000H LJMP START ORG 000BH LJMP T0_INT ORG 0030H START: MOV 50H,#00H;時的低位字符碼 MOV 51H,#00H;時的高位字符碼 MOV 52H,#00H;“-”的字符碼 MOV 53H,#00H;分的低位字符碼 MOV 54H,#00H;分的高位字符碼 MOV 55H,#00H;“-”的字符碼 MOV 56H,#00H;秒的低位字符碼 MOV 57H,#00H;秒的高位字符碼 MOV 5FH,#00H;存放小時的單元 MOV 5EH,#00H;存放分鐘的單元 MOV 5DH,#00H;存放秒的單元 MOV 5CH,#00H;存放T0中斷次數(shù),50次為1秒

MOV SP,#60H;設置堆棧棧頂 MOV TH0,#???;設置T0定時器初值 MOV TL0,#??? MOV TMOD,#00000001H;T0工作在定時方式,工作方式0

SETB ET0;開放T0中斷 SETB EA;開放總中斷 SETB TR0;啟動定時器T0 LOOP: mov P2,#11111110H MOV R0,#50H loop1: MOV R7,#08H LOOP2: MOV A,@R0 MOV P1,A LCALL DELAY INC R0 MOV A,P2 RL A

MOV P2,A DJNZ R7, LOOP2 LJMP LOOP SJMP $

DELAY: MOV R6,#2;延時程序 DELAY1: MOV R5,#10 DELAY2: MOV R4,#100 DELAY3: DJNZ R4,DELAY3 DJNZ R5,DELAY2 DJNZ R6,DELAY1 RET 16 T0_INT: CLR TR0 PUSH ACC MOV A,5CH CJNE A,#50H,T0_INT1 MOV 5CH,#00H MOV A,5DH CJNE A,#59H,T0_INT2 MOV 5DH,#00H MOV A,5EH CJNE A,#59H,T0_INT3 MOV 5EH,#00H MOV A,5FH CJNE A,#23H,T0_INT4 MOV 5FH,#00H LJMP T0_END T0_INT1: INC 5CH LJMP T0_END T0_INT2: INC 5DH LJMP T0_END T0_INT3: INC 5EH LJMP T0_END T0_INT4: INC 5FH T0_END: MOV A,5FH

MOV B,#10 DIV AB MOV 51H,A MOV A,B MOV 50H,A MOV A,5EH MOV B,#10 DIV AB MOV 54H,A MOV A,B MOV 53H,A MOV A,5DH MOV B,#10 DIV AB MOV 57H,A MOV A,B MOV 56H,A POP ACC

MOV TH0,#??? MOV TL0,#??? SETB TR0 RETI

實驗六 LCD液晶顯示屏實驗

一、實驗目的

⑴掌握單片機擴展液晶顯示接口的設計與編程。⑵利用字符式液晶顯示器顯示字符。

二、實驗內(nèi)容

編制程序,在液晶顯示器上顯示:

學生所在的院系的漢語拼音字母和學生的名字。分兩行顯示。

三、實驗電路

四、參考程序

DAT1 DAT2 EQU EQU 30H;第一參數(shù)單元 31H;第二參數(shù)單元 32H;指令代碼單元 0100H;指令通道地址 0000H;數(shù)據(jù)通道地址 COM EQU C_ADD EQU D_ADD EQU

org 0000h ljmp main org 0030h;主程序

MAIN: MOV SP,#60H;

lcall delay;上電延時

LCALL INT;初始化

LCALL CLEAR;清緩沖區(qū) TEST: LCALL hgnu_disp;顯示“WELCOM TO HGNU” LCALL PL_XW_ZKB;顯示 “P_L :”

“X_W :”

“ZKB:” sjmp test

;上電延時子程序 delay: MOV R6,#50H;MOV R7,#00H;DELY1: NOP DJNZ R7,DELY1;上電延時

DJNZ R6,DELY1;ret;讀狀態(tài)字子程序

R_ST: MOV DPTR,#C_ADD;設置指令通道 MOVX A,@DPTR;RET;判斷狀態(tài)位STA1,STA0子程序(讀寫指令和數(shù)據(jù)),在指令的讀,寫

;數(shù)據(jù)之前這兩個標志必須同時為“1” ST01: LCALL R_ST;JNB ACC.0,ST01;JNB ACC.1,ST01;RET;判斷狀位STA2子程序(數(shù)據(jù)自動讀狀態(tài)),該位

;在數(shù)據(jù)自動操作過程中取代STA0和STA1有效。在連續(xù)讀過程中每讀一次;之前都要確認STA2=1 ST2: LCALL R_ST;JNB ACC.2,ST2;RET;判斷STA3子程序(數(shù)據(jù)自動寫狀態(tài))ST3: LCALL R_ST;JNB ACC.3,ST3;RET;判斷狀態(tài)位STA6子程序(屏讀/屏拷貝狀態(tài))ST6: LCALL R_ST;JB ACC.6,ERR;RET ERR: LJMP ST6;;出錯處理

;寫指令和寫數(shù)據(jù)子程序..;雙字節(jié)參數(shù)指令寫入入口

PR1: LCALL ST01;判斷狀態(tài)位STA1,STA0 MOV A,DAT1;取第一參數(shù)單元數(shù)據(jù)

LCALL PR13;寫入?yún)?shù);單字節(jié)參數(shù)指令寫入入口

PR11: LCALL ST01;判斷狀態(tài)位STA1,STA0 MOV A,DAT2;取第二參數(shù)單元數(shù)據(jù) LCALL PR13;寫入?yún)?shù)

;無參數(shù)指令寫入入口

PR12: LCALL ST01;無參數(shù)指令寫入入口

MOV A,COM;取指令代碼單元數(shù)據(jù)

MOV DPTR,#c_ADD;設置指令通道地址/數(shù)據(jù)寫入入口

LJMP PR14;寫入指令代碼

PR13: MOV DPTR,#D_ADD;設置數(shù)據(jù)通道地址/數(shù)據(jù)寫入入口 PR14: MOVX @DPTR,A;寫入操作 RET;讀數(shù)據(jù)子程序 PR2: LCALL ST01;判斷狀態(tài)位

MOV DPTR,#D_ADD;設置數(shù)據(jù)通道地址

MOVX A,@DPTR;讀數(shù)據(jù)操作 MOV DAT2,A;數(shù)據(jù)存入第二參數(shù)/數(shù)據(jù)單元

RET;初始化子程序

INT:

;顯示區(qū)域設置

MOV DAT1,#00H;設置文本顯示區(qū)首地址

MOV DAT2,#00h;MOV COM,#40H;LCALL PR1;雙字節(jié)參數(shù)指令寫入入口

MOV DAT1,#16;設置文本顯示區(qū)域?qū)挾?/p>

MOV DAT2,#00H;即一行顯示所占字節(jié)數(shù)

MOV COM,#41H;LCALL PR1;雙字節(jié)參數(shù)指令寫入入口

MOV DAT1,#00H;設置顯示區(qū)域首地址

MOV DAT2,#00H;或文本屬性區(qū)域首地址

MOV COM,#42H;LCALL PR1;雙字節(jié)參數(shù)指令寫入入口

MOV DAT1,#10H;設置圖形顯示區(qū)域?qū)挾?/p>

MOV DAT2,#00H;或為文本屬性區(qū)域狂寬度

MOV COM,#43H;即一行顯示所占字節(jié)數(shù)

LCALL PR1;雙字節(jié)參數(shù)指令寫入入口

;顯示光標設置

MOV COM,#0A1H;光標形狀設置

LCALL PR12;

;設置光標初始位置,是字符行和字符列,第0行第15列

MOV DAT1,#0;光標行位置

MOV DAT2,#0;光標列位置

MOV COM,#21H;LCALL PR1;雙字節(jié)參數(shù)指令寫入入口

;顯示方式設置,使用內(nèi)部字符發(fā)生器

MOV COM,#80H;顯示方式設置,邏輯“或”合成 LCALL PR12;無參數(shù)指令寫入入口+

MOV COM,#97H;僅用文本顯示

LCALL PR12;無參數(shù)指令寫入入口

;顯示開關方式

RET

;寫數(shù)據(jù)子程序,8*8點陣

;R6中裝入顯示位置的列數(shù)(字符的個數(shù)),每行16個字符,R7中裝入顯示位置距左上角的字符行數(shù)

;5FH單元中裝入待顯示的字符碼 DISP: mov b,r7

mov a,#16 mul ab mov r7,a CLR C mov a,R6

ADD A,R7 MOV R6,A;R7*16+R6

MOV DAT1,R6;設置顯示RAM首地址,水平方向字符數(shù)

MOV DAT2,#00H;固定送00H MOV COM,#24H;地址指針指令

LCALL PR1;MOV

dat2,5fH;取要顯示的字符

MOV COM,#0c4H;數(shù)據(jù)寫,地址不變 LCALL PR11;寫入數(shù)據(jù)

RET;清顯示緩沖區(qū)(16*8單元)clear: MOV 5FH,#00H

MOV R5,#0 CLEAR0: MOV R4,#0 CLEAR1: MOV A,R5

MOV R7,A MOV A,R4 MOV R6,A CLEAR2: LCALL DISP

INC R4 CJNE R4,#16,CLEAR1

mov r4,#00h

INC R5

CJNE R5,#8,CLEAR0 CLEAR9: RET;顯示頻率、相位、占空比、相位差等字符。(P_L :;PL_XW_ZKB:MOV R7,#3 MOV R6,#0 MOV

5fh,#30H;“P” LCALL DISP MOV R7,#3 MOV R6,#1 MOV

5fh,#3FH;“_” LCALL DISP MOV R7,#3 MOV R6,#2 MOV

5fh,#2CH;“L”

X_W :

ZKB:)

LCALL DISP MOV R7,#3 MOV R6,#3 MOV

5fh,#1AH;“: ” LCALL DISP MOV R6,#0 MOV

5fh,#38H;“X” LCALL DISP MOV R7,#5 MOV R6,#1 MOV

5fh,#3FH;“_” LCALL DISP MOV R7,#5 MOV R6,#2 MOV

5fh,#37H;“W” LCALL DISP MOV R7,#5 MOV R6,#3 MOV

5fh,#1AH;“: ” LCALL DISP

MOV R7,#5

MOV R7,#7 MOV R6,#0 MOV

5fh,#3AH;“Z” LCALL DISP

MOV R7,#7 MOV R6,#1 MOV

5fh,#2BH;“K” LCALL DISP MOV R7,#7 MOV R6,#2 MOV

5fh,#22H;“B ” LCALL DISP MOV R7,#7 MOV R6,#3 MOV

5fh,#1AH;“: ” LCALL DISP RET;頂行顯示“黃岡師院物科院“的英文名稱。;”welcome to hgnu!“ hgnu_DISP:

MOV R7,#0;顯示位置的行列數(shù)

MOV R6,#0 MOV

5fh,#37H;”W“ LCALL DISP MOV R7,#0 MOV R6,#1 MOV

5fh,#25H;”E“ LCALL DISP MOV R7,#0 MOV R6,#2 MOV

5fh,#2CH;”L“ LCALL DISP MOV R7,#0 MOV R6,#3 MOV

5fh,#23H;”C“ LCALL DISP MOV R7,#0 MOV R6,#4 MOV

5fh,#2FH;”0“ LCALL DISP MOV R7,#0 MOV R6,#5 MOV

5fh,#2DH;”M“ LCALL DISP MOV R7,#0 MOV R6,#6 MOV

5fh,#25H;”E“ LCALL DISP MOV R7,#0 MOV R6,#7 MOV

5fh,#00H;” “ LCALL DISP MOV R7,#0 MOV R6,#8 MOV

5fh,#34H;”T“ LCALL DISP MOV R7,#0 MOV R6,#9 MOV

5fh,#2FH;”O(jiān)“ LCALL DISP MOV R7,#0 MOV R6,#10 MOV

5fh,#00H;” “ LCALL DISP MOV R7,#0 MOV R6,#11 MOV

5fh,#28H;”H“ LCALL DISP

MOV R7,#0 MOV R6,#12 MOV

5fh,#27H;”G“ LCALL DISP MOV R7,#0 MOV R6,#13 MOV

5fh,#2EH;”N“ LCALL DISP MOV R7,#0 MOV R6,#14 MOV

5fh,#35H;”U“ LCALL DISP RET tab: db 10h,11h,12h,13h,14h,15h,16h,17h,18h,19h;”0-----9“

db 21h,22h,23h,24h,25h,26h;”A-----F" end

實驗七 直流電機轉(zhuǎn)速測量與控制實驗

一、實驗目的

1.掌握直流電機的驅(qū)動原理。2.了解直流電機調(diào)速的方法。

二、實驗內(nèi)容

1.用0832 D/A轉(zhuǎn)換電路后的輸出經(jīng)放大后驅(qū)動直流電機。

2.編制程序改變0832輸出經(jīng)放大后的方波信號的占空比來控制電機轉(zhuǎn)速。本實驗中 D/A輸出為雙極性輸出,因此電機可以正反向旋轉(zhuǎn)。

三、程序流程

三、實驗電路

五、參考程序

DATA_TH0 EQU 00H DATA_TL0 EQU 00H;信號周期為130ms DATA_TH1 EQU 20H DATA_TL1 EQU 00H;高電平時間65ms ORG 0000H LJMP MAIN ORG 0003H LJMP INT_0;啟動電機按鍵

ORG 000BH LJMP T_0;T0確定輸出信號的周期(或者頻率)ORG 0013H LJMP INT_1;電機轉(zhuǎn)動方向控制按鍵 ORG 001BH LJMP T_1;T1確定輸出信號高電平的時間期

ORG 0030H MAIN: MOV SP,#60H

CLR P1.0 CLR P1.1;關閉電機

setb 20h.0;初始化電機正轉(zhuǎn)

clr 20h.1;初始狀態(tài)時,電機停止轉(zhuǎn)動 MOV TMOD,#11H SETB IT0 SETB EX0 SETB IT1 SETB EX1 SETB ET0 SETB ET1 SETB EA

SJMP $

T_0: JNB 20H.1,T_01;

MOV TH1,#DATA_TH1

MOV TL1,#DATA_TL1 SETB TR1

MOV TH0,#DATA_TH0 MOV TL0,#DATA_TL0 SETB TR0 JNB 20H.0,T_02 setb P1.0 clr P1.1 LJMP T_05 T_02: clr P1.0 setb P1.1 LJMP T_05 T_01: CLR P1.0

CLR P1.1 CLR TR0 CLR TR1 RETI CLR TR1 T_05: T_1: clr p1.0 clr p1.1 RETI int_1: CPL 20H.1;電機啟動標志求反,開啟電機或者關閉電機

JNB 20H.1,INT_11;啟動標志不為1,則停止電機,關閉定時器

MOV TH1,#DATA_TH1;啟動標志為1,則開啟定時器1和定時器2,輸出PWM波

MOV TL1,#DATA_TL1 SETB TR1

MOV TH0,#DATA_TH0

MOV TL0,#DATA_TL0 SETB TR0 JNB 20H.0,INT_12;轉(zhuǎn)動方向標志不為1,則反轉(zhuǎn),否則正轉(zhuǎn) setb P1.0 clr P1.1 LJMP INT_19 setb P1.1 LJMP INT_19 INT_12: clr P1.0 INT_11: CLR P1.0 CLR P1.1 CLR TR0 CLR TR1 INT_19: RETI 26

INT_0: CPL 20H.0 RETI END

實驗八 步進電機控制實驗

一、實驗目的

1.了解步進電機控制的基本原理。2.掌握步進電機轉(zhuǎn)動編程方法。

二、實驗內(nèi)容

從鍵盤上輸入正、反轉(zhuǎn)命令,轉(zhuǎn)速參數(shù)和轉(zhuǎn)動步數(shù)顯示在顯示器上,CPU再讀取顯示器上顯示的正、反轉(zhuǎn)命令,轉(zhuǎn)速級數(shù)(16級)和轉(zhuǎn)動步數(shù)后執(zhí)行。轉(zhuǎn)動步數(shù)減為零時停止轉(zhuǎn)動。

三、實驗電路圖

四、參考程序

ORG 0000H

ljmp main ORG 000BH LJMP COUNT0 ORG 001BH LJMP COUNT1 ORG 0100H MAIN: MOV P0,#0FFH;輸送脈沖口,SETB P1.2;MOV R0,#1;延時變化變量 LOOP1: MOV P0,#0FCH LCALL DELAY MOV P0,#0F6H LCALL DELAY MOV P0,#0F3H LCALL DELAY MOV P0,#0F9H LCALL DELAY JNB P1.2,LOOP2 MOV TMOD,#01010101B MOV TH0,#0FFH MOV TL0,#0FFH MOV TH1,#0FFH MOV TL1,#0FFH SETB TR0 SETB TR1 SETB ET0 SETB ET1 SETB EA MOV DPTR,#TABLE MOV A,R0 MOVC A,@A+DPTR MOV P2,A JMP LOOP1 LOOP2: MOV P0,#0FCH LCALL DELAY MOV P0,#0F9H LCALL DELAY MOV P0,#0F3H LCALL DELAY MOV P0,#0F6H LCALL DELAY JB P1.2,LOOP1 MOV TMOD,#01010101B MOV TH0,#0FFH MOV TL0,#0FFH MOV TH1,#0FFH MOV TL1,#0FFH 28 SETB TR0 SETB TR1 SETB ET0 SETB ET1 SETB EA MOV DPTR,#TABLE MOV A,R0 MOVC A,@A+DPTR MOV P2,A JMP LOOP2 SJMP $ COUNT0: MOV TH0,#0FFH;減速中斷 MOV TL0,#0FFH CJNE R0,#9,L4 JMP L5 L4: INC R0

L5: setb TR0 RETI COUNT1: MOV TH1,#0FFH;加速中斷 MOV TL1,#0FFH CJNE R0,#1,L6 JMP L7 L6: DEC R0 L7: setb TR1 RETI DELAY: MOV A,R0;延時 MOV R1,A L1: MOV R2,#50 L2: MOV R3,#250 L3: DJNZ R3,L3 DJNZ R2,L2 DJNZ R1,L1 RET TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;顯示程序查表,共陰 END

下載單片機實驗感想(含5篇)word格式文檔
下載單片機實驗感想(含5篇).doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發(fā)現(xiàn)有涉嫌版權的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權內(nèi)容。

相關范文推薦

    單片機實驗 2

    單片微型計算機原理、應用及接口技術 實驗報告 得分: 年級專業(yè): 測控1303班學生姓名/學號:崔振振/201323030325 評閱教師: 提交時間:2015—2016學年第1學期 單片機實驗1匯編語......

    單片機實驗心得體會

    單片機實驗心得體會 單片機實驗心得體會一:單片機實驗心得體會 時間過得真快,不經(jīng)意間,一個學期就到了尾聲,進入到如火如荼的期末考試階段。在學習單片機這門課程之前,就早早的......

    單片機液晶顯示實驗

    實驗八 單片機液晶顯示實驗 一、實驗目的 1、了解液晶顯示屏的控制原理及方法。 2、了解點陣漢字的顯示原理。 二、實驗說明 1、 利用實驗上的液晶顯示屏電路,編寫程序控制......

    單片機實驗小結

    單片機實驗小結 這學期的單片機實驗課程已經(jīng)結束了,雖然做的實驗是比較簡答的,但麻雀雖小五臟俱全,因此自己也通過實驗課學到了很多知識。 單片機實驗課是為了更好的學習單片機......

    單片機實驗總結

    單片機原理及接口技術實驗總結 本學期的單片機實驗轉(zhuǎn)眼已到尾聲,共做了六項實驗,分別是KEIL4、ISP下載軟件的安裝于使用、P1口輸出循環(huán)燈實驗、P1口轉(zhuǎn)彎燈實驗、P3.3口輸入......

    單片機實驗指導書

    單片機實驗指導書實驗說明實驗1:定時控制實驗 要求:電路連接與編程相結合,控制燈按一定規(guī)律點亮和熄滅。 注意:燈為低電平驅(qū)動。 實驗報告:說明燈亮的方式;畫出實際電路圖、程序流......

    單片機實驗三

    實驗三 單片機I/O口控制程序?qū)嶒?一、實驗目的和要求: 掌握單片機串行傳輸輸入輸出的應用方法。 二、實驗設備: 安裝了THGY51的計算機,單片機實驗箱。 三、實驗內(nèi)容和步驟: 1、......

    單片機實驗心得體會

    單片機實驗心得體會 時間過得真快,不經(jīng)意間,一個學期就到了尾聲,進入到如火如荼的期末考試階段。 在學習單片機這門課程之前,就早早的聽各種任課老師和學長學姐們說過這門課程......

主站蜘蛛池模板: 久久精品久久久久观看99水蜜桃| 国产v综合v亚洲欧美久久| 人妻巨大乳一二三区| 亚洲 小说 欧美 另类 社区| 人妻中字视频中文乱码| 精品久久国产字幕高潮| 无遮挡边吃摸边吃奶边做| 国产精品无码素人福利不卡| 国产免费av片在线观看播放| 天天摸天天做天天爽水多| 亚洲va欧美va国产va综合| 老司机免费的精品视频| 黑色丝袜无码中中文字幕| 久久男人高潮女人高潮| 国产美女自卫慰黄网站| 亚洲欧洲av一区二区久久| 99久久国产成人免费网站| 理论片午午伦夜理片2021| 久久夜色撩人精品国产av| 国产精品亚洲а∨天堂2021| 久久久亚洲欧洲日产国码606| 国产精品视频色尤物yw| 久久www免费人成一看片| 一本无码字幕在线少妇| 无码人妻aⅴ一区二区三区蜜桃| 国产女人乱人伦精品一区二区| 久久夜色撩人精品国产av| 中文字幕在线观看亚洲日韩| 精品国产免费人成电影在线看| 亚洲小说乱欧美另类| 久久精品aⅴ无码中文字字幕不卡| 真实国产老熟女粗口对白| 成 人 黄 色 免费 网站无毒| 99久久人妻无码精品系列蜜桃| 国产精品色内内在线播放| 亚洲一区二区三区无码久久| 国产suv精品一区二区6| 98久久人妻少妇激情啪啪| 亚洲综合在线另类色区奇米| 50岁退休熟女露脸高潮| 国产精品污www在线观看|