




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1 編程將片內(nèi)RAM30H單元開始的B的數(shù)據(jù)傳送到片外RAM3000H開始的單元中去。解:STRAT:MOV R0,#30H MOV R7,#0FH MOV DPTR,#3000H LOOP: MOV A,R0 MOVX DPTR,A INC R0 INC DPTR DJNZ R7,LOOP RET2 片內(nèi)RAM30H開始的單元中有10B的二進制數(shù),請編程求它們之和(和256 )解ADDIO:MOV R0,30H MOV R7,#9 MOV A,R0 LOOP: INC R0 ADD A,R0 DJNZ R7,LOOP MOV 30H,A RET5 片內(nèi)RAM40H開始的單元內(nèi)有10B二進制數(shù)
2、,編程找出其中最大值并存于50H單元中 解 START: MOV R0,#40H ;數(shù)據(jù)塊首地址送R0 MOV R7,#09H ;比較次數(shù)送 MOV A,R0 ;取數(shù)送 LOOP: INC R0 MOV 30H,R0 ;取數(shù)送H CJNE A,30H,NEHT ;(A)與(30H)相比 NEXT: JNC BIE1 (A)(30H)轉(zhuǎn)BIR1 MOV A,30H ;(A)(30H),大數(shù)送ABIE1: DJNZ R7,LOOP ;比較次數(shù)減1,不為0,繼續(xù)比較1 / 10 MOV 50H,A ;比較結(jié)束,大數(shù)送50H RET 6 編一子程序,從串行接口接受一個字符解: START: MOV T
3、MOD,#20H ;定時器T1工作于模式2 MOV TH1,#0E8H ;設(shè)置波特率為1 200b/s MOV TL1,#0E8H SETB TR1 ;啟動T1 MOV SCON,#50H ;串行接口工作于方式1,充許接收 L1: JNB RI,L1 ;等待接收數(shù)據(jù),末接收到數(shù)據(jù),繼續(xù)等待 CLR RI ;接收到數(shù)據(jù),清RI MOV A,SBUF ;接收到數(shù)據(jù)送A RET9 編制一個循環(huán)閃爍燈的程序。有8個發(fā)光二極管,每次其中某個燈閃爍點亮10次后,轉(zhuǎn)到下一個閃爍10次,循環(huán)不止。畫出電路圖。解 P1.0 8013 P1.7 D0 Q074LS240D7 Q7 5V 本程序的硬件連接如圖所示。
4、當(dāng)P1.0輸出高電平時,LED燈亮,否則不亮。 其程序如下: MOV A,#01H ;燈亮初值 SHIFT: LCAIL FLASH ;調(diào)閃亮10次子程序 RR A ;右移一位 SJMP SHIFT ;循環(huán) FLASH: MOV R2,#0AH 閃爍10次計數(shù) FLASH1; MOV P1,A ;點亮 LCALL DELAY ;延時 MOV P1,#00H ;熄滅 LCALL DELAY ;延時 DJNZ R2,FLASH1 ;循環(huán)RET 1. 編定一個軟件延時1S和1mi的子程序設(shè)osc=6Hz,則一個機器周期1。解:(1)1S=2US*5*1000005*100000=250*200*10
5、(2) ORG 1000H TIME:MOV R7,#10 T3: MOV R6,#200 T2: MOV R6,#250 T1: DJNZ R5,T1DJNZ R6,T2DJNZ R7,T3RET (2)1min=60,調(diào)用上面1s子程序60次 ORG 0030H MOV R0,#60LOOP:LCALL TIME DJNZ R0,LOOP RET2. 請編制串行通信的數(shù)據(jù)發(fā)送程序,發(fā)送片內(nèi)RAM50H5FH的16B數(shù)據(jù),串行接口設(shè)定為方式2,采用偶校驗方式。設(shè)晶振頻率為6MHz。解:查詢方式發(fā)送程序如下 MOV SCON,#8OH M OV PCON,#80H MOV R0,#50H MO
6、V R7,#16HLOOP: MOV A,R0 MOV C,P MOV TB8,C MOV SBUF,A JNB T1,$ CLR T1 INC R0 DJNZ R7,LOOP RET4.應(yīng)用單片機內(nèi)部定時器T0工作在方式1下,從P1.0輸出周期為2ms的方波脈沖信號,已知單片機的晶振頻率為6MHZ。請(1)計算時間常數(shù)X,應(yīng)用公式X=2t(f)(2)寫出程序清單解:X=216-t(F/12)=216-1*10-3*6*106/12=OFEOCHORG 3000HSTART:MOV TMOD,#01HMOV TL0,#OCHMOV THO,#OFEHSETB TR0LOOP: JBC TFO,
7、DONESJMP LOOPDONE: MOV TL0,#OCHMOV THO,#OFEHCPL P1.0SJMP LOOP6、 用89C51的P1口,監(jiān)測某一按鍵開關(guān),使每按鍵一次,輸出一個正脈沖(脈寬隨意)。編出匯編語言程序。解: ORG 0100H ABC:SETB P1.0SETB P1.7JB PI.7,$JNB P1.7,$CLR P1.0MOV R2,#0 DAY: NOPNOPDJNZ R2,DAYSJMP ABC7、設(shè)計一個4位數(shù)碼顯示電路,并用匯編語言編程使"8"從右到左顯示一遍。解: ORG 0100HMOV A,#08HMOV R2,#01HMOV D
8、PTR,#TABMOVC A,A+DPTRMOV P1,ANEXT:MOV A,R2MOV P3,AACALL DAYJB ACC.4,LPDRL AMOV R2,AAJMP NEXTLPD: RETTAB: DB END11設(shè)計89C51和ADC0809的接口,采集2通道10個數(shù)據(jù),存入內(nèi)部RAM的50H59H單元,畫出電路圖,編出:(2)查詢方式;解:IN2的地址為7FFAH,P1.0查詢轉(zhuǎn)換結(jié)束信號,查詢程序如下: ORG 0100H MOV R7,#0AH MOV R0,#50H MOV DPTR,#7FFAH NEXT: MOVX DPTR,A JB P1.0,$ MOVX A,DP
9、TR MOV R0,A INC R0 DJNZ NEXT SJMP $12、掃描子程序:KEY1: ACALL KS1 ;調(diào)用判斷有無鍵按下子程序 JNZ LK1 ;有鍵按下,轉(zhuǎn)LK1 AJMP KEY1 ;無鍵按下,返回LK1: ACALL T12MS ;調(diào)延時12ms子程序 ACALL KS1 ;查有無鍵按下 JNZ LK2 ;若有,則為鍵確實按下,轉(zhuǎn)逐列掃描 AJMP KEY1 ;無鍵按下,返回LK2: MOV R4,#00H ;首列號 R4 MOV R2,#FEH ;首列掃描字 R2LK4: MOV A,R2 ;列掃描字 P1口 MOV P1,A ;使第一列線為0MOV A,P1 ;讀
10、入行狀態(tài) JB ACC.0,LONE;第0行無鍵按下,轉(zhuǎn)查第一行 MOV A,#00H ;第0行有鍵按下,該行首鍵號00H A AJMP LKP ;轉(zhuǎn)求鍵號LONE: JB ACC.1,NEXT ;第一行無鍵按下,轉(zhuǎn)查下一列 MOV A,#02 ;第一行有鍵按下,該行首鍵號02 ALKP: ADD A,R4 ;鍵號首行號列號 PUSH ACC ;鍵號進棧保護LK3: ACALL KS1 ;等待鍵釋放 JNZ LK3 ;未釋放,等待 POP AC ;鍵釋放,鍵號 A RET ;鍵掃描結(jié)束NEXT: INC R4 ;列號加1,指向下一列 MOV A,R2 ;列掃描字 A JNB ACC.1,KND
11、 ;判斷2列全掃描完?掃描完,轉(zhuǎn)KND RL A ;沒掃描完,掃描字左移一位,形成下一列掃描字 MOV R2,A ;掃描字 R2 AJMP LK4 ;掃描下一列 AJMP KEY1 ;全掃描完,返回 MOV A,#FCH ;全掃描字11111100B A MOV P1,A ;全掃描字 所有行 MOV A,P1 ;讀取列值 CPL A ;取正邏輯,高電平表示有鍵按下 ANL A,#0C0H ;屏蔽低6位,取高2位 RET ;出口狀態(tài)(A)!=0,有鍵按下2、如圖所示,要求按下S1S4中的任意一個鍵,則對應(yīng)的(S1D3、S2D4、 S3D5、S4D6)發(fā)光二極管亮,松開鍵對應(yīng)的發(fā)光二極管滅。解答:
12、ORG 0000HLJMP MAINORG 0030HMAIN: MOV P3,#0FFH LOOP: MOV A,P3MOV P1,ALJMP
13、 LOOPEND1、試編程采用軟件延時的方法來延時5分鐘。(系統(tǒng)時鐘為6MHZ)(10分) ORG 1000H
14、0; MOV R3,#05H
15、0; LP3:MOV R2,#78H LP2: MOV
16、60; R1,#0FAH LP1:MOV R0,#0FAH &
17、#160; LP: NOP
18、; NOPDJNZ R0,LP DJNZ
19、0; R1,LP1 DJNZ R2,LP2
20、60; DJNZ R3,LP3
21、60; END3、使用74ls164的并行輸出端接8個發(fā)光二極管,利用它的串入并出的功能,把發(fā)光二極管從左到右輪流點亮一個燈,并反復(fù)循環(huán)。(即流水燈效果) ORG
22、60; 0000H LJMP MAIN ORG 0030HMAIN: MOV
23、0; SCON #00H CLR ES MOV
24、 A #80HDELR: CLR P1.0 MOV SBUF,A
25、0; JNB TI,$ SETB P1.0 LCALL DELAY
26、60; CLR TI RR A
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 應(yīng)急人財物管理制度
- 律師黨支部管理制度
- 微消防日常管理制度
- 心理矯正室管理制度
- 快遞員日常管理制度
- 急救與治療管理制度
- 總店長門店管理制度
- 情景劇皮膚管理制度
- 戰(zhàn)備食品庫管理制度
- 房產(chǎn)項目部管理制度
- 智能化工程售后服務(wù)體系方案
- 人力資源技術(shù)服務(wù)合同
- python入門培訓(xùn)課件
- 廣東開放大學(xué)2024秋《大學(xué)英語(B)(本)》形成性考核第一次大作業(yè)(主觀題)參考答案
- 化驗室的相關(guān)管理要點
- 剪刀式登高車安全技術(shù)交底
- 職業(yè)生涯提升學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 規(guī)章制度之培訓(xùn)學(xué)校教學(xué)管理制度
- 部編人教版小學(xué)4四年級《道德與法治》下冊全冊教案
- DB34T 4705-2024 職業(yè)健康檢查工作規(guī)范
- 七年級數(shù)學(xué)下冊 專題 不等式(組)中新定義運算&程序性問題(解析版)
評論
0/150
提交評論