第一篇:單片機實驗九 LED
實驗九 LED顯示
一、實驗目的
1、熟悉LED數(shù)碼管的結構、工作原理、顯示方法和控制方法。
2、掌握單片機與LED數(shù)碼管的接口技術。
二、實驗設備
裝有proteus的電腦一臺
三、實驗內容
設計一個電腦時鐘:具有時、分、秒顯示,具有時、分的設置功能。
四、實驗步驟
1、在proteus ISIS界面中編輯LED電腦時鐘電路原理圖,把該電路保存。
2、在keil中建立c程序文件并生成hex文件。
3、添加仿真文件。
雙擊單片機,打開其屬性編輯框,在“program file”欄中,單擊打開按鈕,選取后綴名為*.HEX的目標代碼文件。在“clock frequency”欄中設置時鐘頻率為11.0592MHZ。
4、在proteus仿真界面中單擊運行按鈕,全速啟動仿真。
五、實驗結果及心得體會
第二篇:單片機實驗
實驗
一、MCS51單片機基本開發(fā)環(huán)境
1. 實驗目的:
1)熟悉軟件的集成開發(fā)環(huán)境 2)掌握單片機軟件設計流程
3)掌握單片機存貯器結構及各窗口之間的聯(lián)系 2. 實驗內容:
1)用三種方法實現(xiàn)將累加器A內容改為20H
方法1--MOV A,#20H 方法2—MOV R0,#20H MOV A,R0 方法3—MOV R0,#20H XCH A,R0 心得:越往下做實驗時就越感覺這題根本不能說是題目,但不得不說在沒接觸過編程軟件,剛開始學的匯編,第一次做的實驗就光這道題都覺得不知道做什么.所以凡是總有開始,不了解情況的多簡單的都會覺得難.2)將58H位單元置為1,觀察內部RAM中2BH內容的變化 代碼:
SETB 2BH.0 JMP $ END 心得:這是關于內部存儲中對單元和字節(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中內容變?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寫了三段代碼,可分別完成題目要求。不過實驗時只是對代碼進行了錯誤調試,沒有對結果進行檢驗。其中值得注意的是對于布爾(位)操作指令的用法,比如傳送指令必須經累加器C,如第二段中MOV P0,#01H;MOV C,P0.0,以及對于位尋址的方式(如需用到“.”隔開)的應用。4)編一個小程序將內部RAM中的20H單元的內容送到21H單元并調試
代碼:
MOV R0,#20H MOV @R0,#10H MOV R1,#21H MOV @R1,20H JMP $ END
5)用程序將堆棧指針指向60H,然后在堆棧中依次壓入01,02,03,04,05五個數(shù),觀察哪些單元內容發(fā)生了變化,各變?yōu)槎嗌??從哪些窗口可以發(fā)現(xiàn)這些變化?順序將堆棧中的五個數(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. 選做實驗內容:數(shù)據(jù)傳送 目的:
1)掌握8051單片機內部數(shù)據(jù)存貯器、外部數(shù)據(jù)存貯器的數(shù)據(jù)傳送特點和應用 2)掌握MOV,MOVX和MOVC類指令的用法及區(qū)別 內容:
1)將片內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ù)傳送至內部數(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
總體心得體會:
第一次做實驗主要是熟悉了解了下單片機編程軟件的使用,開始接觸時在對其軟件不是太了解的情況下實驗編程做的確實很亂,不清楚該怎樣進行,比如不知如何進行對指令的調試,也不清楚該如何觀察結果,沒有一個整體的概念,所以在了解其開發(fā)環(huán)境上花了不少時間。經過一段時間的摸索后也終于了解了其具體的使用,也能夠順利的對指令的編程運用。運行指令時遇到的一些問題需要注意的也在上面各題中做了說明。還有需要注意的是:進入軟件仿真時需要對存儲空間進行查看的方法是在Address窗口中輸入:d:00h 顯示內部數(shù)據(jù)存儲器從00h開始的單元; x:1000h 顯示外部數(shù)據(jù)存儲器從1000h開始的單元; c:0000H 顯示程序存儲器內容。還有由于偽指令 END 定義的原因,在程序末需加一條死循環(huán)調轉指令(如 JMP $)使程序不會進入其他未知空間執(zhí)行其他指令。實驗
二、加、減法實驗
1. 實驗目的
1)正確使用單片機的加減運算指令
2)掌握不同指令對于程序狀態(tài)字的影響及程序狀態(tài)字的意義、用處 3)掌握ADD,ADDC,SUBB和DA A等指令的用法 4)學習模塊化程序設計方法 2. 實驗內容
1)編寫3字節(jié)二進制加法子程序,并用主程序調用不同的加數(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為最低位)用主程序調用多組數(shù)據(jù)來調試,需考慮無借位和有借位兩種情況。例如:
執(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é)
要求調用多組數(shù)據(jù)調試,注意觀察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;調整為BCD碼 MOVX @DPTR, A;存 INC R0 INC R1 INC DPTR DJNZ R2, LOOP POP PSW RET END
第三篇:單片機實驗
實驗一清0、移數(shù)
將片內20H~2FH及片外0010H~001FH單元清0;
然后將片內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ù)分別放在片內20H和30H為首的存儲單元中(低位),求其對應項之和(帶進位位),結果放在40H為首的單元中(若最高位有進位則存在后續(xù)單元中),然后按升序排列放在50H為首的單元中
實驗三查表、散轉
設有一表格,表中數(shù)為:00H、11H、22H、33H、44H、55H、66H、77H、88H、99H、AAH、BBH、CCH、DDH、EEH、FFH。根據(jù)片外0001H單元的低4位的數(shù),取出表中相應的值存到片內30H中;根據(jù)片外0001H單元的高4位的數(shù),將片內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無輸出。
第四篇:單片機led實習報告
電氣控制柜安裝實習報告
實習體會:
在學校北苑實訓工廠兩周的控制柜安裝實訓無聲無息的結束了。這兩周的實訓讓我學到了很多東西,不僅使我在理論上對電氣控制技術有了全新的認識,在實踐能力上也得到了很大提高,真正地做到了學以致用,更學到了很多做人的道理,對我來說受益非淺。除此以外,我還學會了如何更好地與別人溝通,如何更好地去陳述自己的觀點,如何說服別人認同自己的觀點。第一次親身感受了所學知識與實際的應用,理論與實際的相結合,讓我大開眼界。另外我還學到了一些做事的方法,在以后的工作中我會對工作中的每個細節(jié)檢查核對,對工作的經驗進行總結分析,從而節(jié)省時間,提高效率。同時我會盡量使工作程序化、系統(tǒng)化、條理化、流水化,從而百尺竿頭更進一步,達到新境界。電力行業(yè)是一個慎重的行業(yè),不能有粗心大意,需要我們特別注意安全,注重細節(jié),認真對待工作的每一步驟。
“紙上得來終覺淺,絕知此事要躬行!”在短暫的實習過程中,讓我深深的感覺到自己在實際運用中的專業(yè)知識的匱乏,剛開始的一段時間里,對一些實訓項目感到無從下手,茫然不知所措,這讓我感到非常的難過。書本上的知識總以為自己學得不錯,一旦接觸到實際,才發(fā)現(xiàn)自己知道的是多么少,這時才真正領悟到“學無止境”的含義。特別是我們電氣行業(yè),發(fā)展十分的迅速,新科技、新知識不斷進步更新。很多新的產品應用到了電氣領域,傳統(tǒng)的知識已經不能夠很好的運用到生產實踐中。在這一形勢下就更需要我們電氣專業(yè)的人員不斷學習,擴寬知識面。只有這樣我們才能迎接住新的挑戰(zhàn),才能立于不敗之地,不被社會所淘汰。
“千里之行,始于足下”,這是一個短暫而又充實的實習,我認為對我走向社會起到了一個橋梁的作用,過渡的作用,是人生的一段重要的經歷,也是一個重要步驟,對將來走上工作崗位也有著很大幫助。向他人虛心求教,遵守組織紀律和單位規(guī)章制度,與人文明交往等一些做人處世的基本原則都要在實際生活中認真的貫徹,好的習慣也要在實際生活中不斷培養(yǎng)。這一段時間所學到的經驗和知識大多來自老師和同學們的教導,這是我一生中的一筆寶貴財富。這次實習也讓我深刻了解到,在工作中和同學保持良好的關系是很重要的。做事首先要學做人,要明白做人的道理,如何與人相處是現(xiàn)代社會的做人的一個最基本的問題。對于自己這樣一個即將步入社會的人來說,需要學習的東西很多,他們就是最好的老師,正所謂“三人行,必有我?guī)煛保覀兛梢韵蛩麄儗W習很多知識、道理。最后我認為電氣專業(yè)的人員還必須具備一項重要素質—攻堅精神。在工作中我們難免會遇到各種復雜的問題,當這些問題出現(xiàn)的時候我們也應當保持熱情,毫無畏懼,冷靜分析,找到問題所在,最終動手解決問題。正所謂干一行,愛一行,就是這個道理。
第五篇:Led硫化實驗
LED燈珠硫化實驗方法
實驗儀器和材料:燈珠遠方機 烤箱 帶蓋容器1 L 硫粉 無硫膠帶
酒精
實驗前準備:
LED燈珠:確認外觀無不良,實驗前先150℃ 2H拆除載帶除濕。遠方機:硫化前后材料光電參數(shù)測試
實驗前用酒精對容器內外進行清洗,容器蓋子背面不可殘留膠體。清洗完放烤箱干燥除濕30min。
硫粉:實驗前確認硫粉無結塊、變色、雜質等異常。每次所需硫粉質量1.34±0.1g。雙面膠:使用無硫膠帶
烘箱:溫度無異常,設置105℃±2
實驗過程:
1.硫化前用遠方機對材料進行光電參數(shù)測試,并一一對應保留實驗材料的數(shù)據(jù)。(遠方機需要隨時點檢避免機差影響最終結果)
2.取進行硫化的實驗LED產品,背面朝上,使用無硫雙面膠粘貼于容器蓋子的背部。每次實驗每個容器中能且僅能放入20PCS實驗材料。實驗材料均勻的背貼于容器的背部。材料的放置順序需與測試順序一致,不可隨意粘貼。3.稱取1.34g硫粉,均勻的將之分布在容器杯底。4.將容器蓋子蓋上,無硫雙面膠固定并密封。
5.將密封好的容器放在烘箱中,最好不要靠近烘箱壁和烘箱底部。關閉烘箱,實驗完成前不可打開烤箱。105℃ 2H
6.材料完成105℃ 2H的加熱作業(yè)后。并拆開容器,取出實驗材料后進行實驗后的數(shù)據(jù)測試。材料取出,按順序一一粘貼數(shù)據(jù)表,靜止5min后進行數(shù)據(jù)測試。
7.整合數(shù)據(jù),清洗器械。