導航:首頁 > 軟體知識 > mdk5程序如何幫忙注釋

mdk5程序如何幫忙注釋

發布時間:2024-05-10 19:45:03

A. 鍗曠墖鏈烘眹緙栫▼搴忥紝鍝浣嶅府蹇欐妸娉ㄩ噴鍐欎笂

ORG 0000H 錛涗富鍑芥暟鐨勫叆鍙e湴鍧
AJMP MAIN
ORG 0003H 錛涘瓙紼嬪簭鐨勫叆鍙e湴鍧
AJMP INT
MAIN: MOV SP錛#6OH 錛涙寚閽堟寚鍚戝湴鍧涓60H鐨勫瓨鍌ㄥ崟鍏
MOV P2錛#00H 錛汸2鍙f竻闆
MOV P1錛#00H 錛汸1鍙f竻闆
MOV P0錛#00H 錛汸0鍙f竻闆
MOV A,錛#01 錛涚珛鍗蟲暟01鏀懼叆瀵勫瓨鍣ˋ涓
SETB IT0 錛涙爣蹇椾綅IT0=1
SETB EX0 錛涙爣蹇椾綅EX0=1
SETB EA 錛涙爣蹇椾綅EA=1

LOOP1: LCALL DY 錛涢暱璋冪敤瀛愮▼搴廌Y
MOV P0錛孉 錛涘瘎瀛樺櫒A涓鐨勬暟閫佸埌P0鍙
RL A 錛涘瘎瀛樺櫒A涓鐨勬暟閫昏緫鍙崇Щ涓浣
SJMP LOOP1 錛涚煭璺寵漿鑷矻OOP1澶
ORG 0100H 錛涘瓙紼嬪簭鐨勫叆鍙e湴鍧涓0100H
DY: MOV R6錛#250 錛汻6=250
DLP1: MOV R7錛#250 錛汻7=250
DLP2: DJN2 R7錛孌LP2 錛汻7涓鐨勬暟鑷鍑1錛岃嫢涓嶇瓑浜0鍒欒煩杞鍒癉LP2錛岀瓑浜0寰涓
錛涜蛋
DJN2 R6錛孌LP1 錛汻6涓鐨勬暟鑷鍑1錛岃嫢涓嶇瓑浜0鍒欒煩杞鍒癉LP1
RET 錛涚敱浠ヤ笂鍙浠ョ湅鍑篋Y涓哄歡鏃跺瓙紼嬪簭

ORG 0150H 錛涘瓙紼嬪簭INT鐨勫叆鍙e湴鍧涓0150H
INT: CLR EA 錛涙爣蹇椾綅EA=0
PUSH ACC 錛汚CC涓鐨勬暟鎹鍏ユ爤
SETB RSO 錛汻S0=0
MOV A錛#1 錛汚=1
MOV R7錛#8 錛汻7=8
LOOP2: MOV P1錛孉 錛汸1=A
RL A 錛涘瘎瀛樺櫒閫昏緫鍙崇Щ涓浣
DJNZ R7錛孡OOP2 錛汻7鑷鍑1錛屼笉涓0鍒欒煩鍒癓OOP2,涓0寰涓嬭蛋
MOV P1錛#00H 錛汸1鍙f竻闆
POP ACC 錛涘爢鏍堜腑鐨勬暟鎹寮瑰嚭鑷矨CC錛堝氨鏄瀵勫瓨鍣ˋ錛変腑
SETB EA 錛汦A=1
RETI 錛涘瓙紼嬪簭榪斿洖
END 錛涚粨鏉

B. 甯蹇欐敞閲婁竴涓嬭繖涓紼嬪簭錛堝崟鐗囨満錛夛紝璋㈣阿

#include<reg52.h> //鍖呭惈澶存枃浠
#define uchar unsigned char
#define uint unsigned int
#define DAdata P1 //瀹忓畾涔
sbit cs=P3^0; //瀹氫箟鍗曠墖鏈篜3.0寮曡剼涓篶s錛堣誨啓浣胯兘寮曡剼錛
sbit wr=P3^1; //瀹氫箟鍗曠墖鏈篜3.1寮曡剼涓簑r錛堣誨啓寮曡剼錛
sbit key0 = P3^5;//瀹氫箟閿鐩樻寜閿甼ey0錛岃繛鎺ュ湪P3.5寮曡剼涓
sbit key1 = P3^4;
sbit key2 = P3^3;
sbit key3 = P3^2;
void sanjiao() //P1鍙h緭鍑轟笁瑙掓嘗鏁版嵁
{
uchar i;
for(i=0;i<255;i++)
DAdata=i;
for(i=255;i>0;i--)
DAdata=i;
}

void juchi() //P1鍙h緭鍑洪敮榻挎嘗鏁版嵁
{
uchar i;
for(i=0;i<255;i++)
DAdata=i;
}
void jieti() //P1鍙h緭鍑洪樁姊娉㈡暟鎹
{
uchar i;
for(i=255;i>0;i--)
DAdata=i;
for(i=0;i<255;i++)
DAdata = 0;
for(i=0;i<255;i++)
DAdata = i;

}

void fangbo()//P1鍙h緭鍑烘柟娉㈡暟鎹
{
uchar i;
for(i=0;i<255;i++)
DAdata = 0;
for(i=0;i<255;i++)
DAdata = 255;
}
char key_scan()//閿鐩樻壂鎻忓嚱鏁幫紝榪斿洖鍊間負鎵鎻忕殑閿鐨勯敭鐮
{
static uchar n = 0;//閿鐩樻爣蹇椾綅錛宯鐨勫間唬琛ㄦ寜涓嬬殑閿鐨勯敭鐮併
P3 = 0x0f << 2;
if(key0 == 0) //key0閿鎸変笅銆
n=0;
if(key1 == 0)
n=1;
if(key2 == 0)
n=2;
if(key3 == 0)
n=3;
return n; //榪斿洖鎸変笅鐨勯敭鐩橀敭鐮佸箋
}
void main() //涓誨嚱鏁
{
char n=0; //閿鐩樻爣蹇楀垵濮嬪寲銆
cs=0;
wr=0; //鍒濆嬪寲銆
while(1) //閿鐩樺驚鐜鎵鎻忥紝鐩戞祴銆
{
n = key_scan();//鍙栨壂鎻忕爜
P2 = n; //灝嗘壂鎻忓埌鐨勯敭鐮佽緭鍏ュ埌P2鍙o紝榪橮2浼拌℃槸鏁扮爜綆℃垨鑰 鎸囩ず鐏鍚э紝 鐢ㄦ潵鏄劇ず閿鐩樼殑鐘舵佺殑
switch(n) //涓嶅悓鐨勯敭鐮侊紝璋冪敤涓嶅悓鐨勬嘗褰㈠彂鐢熷嚱鏁般
{
case 0:sanjiao();break;
case 1:juchi(); break;
case 2:jieti(); break;
case 3:fangbo(); break;
}
}
}

C. 鏈夋靛崟鐗囨満紼嬪簭涓嶆槸寰堟槑鐧斤紝鏈夊摢浣嶉珮鎵嬪府蹇欐敞閲婁笅銆傛劅嬋娑曢浂

SCL EQU P1.0 //灝辨槸P.0鐢ㄧ﹀彿SCL浠f浛錛泂erial clock equal p1.0 SDA EQU P1.1 //灝辨槸P.1鐢ㄧ﹀彿SDA鏇匡紱serial data equal p1.1

ORG 0000H //澶嶄綅鍦板潃 ORG origin緙╁啓
AJMP START 錛忥紡璺寵漿 START 寮濮嬬殑鎰忔
ORG 000BH ;T0涓鏂鍏ュ彛
AJMP T0INT
ORG 001BH ;T1涓鏂鍏ュ彛
AJMP T1INT
ORG 0030H

START:
MOV SP,#70H 錛忥紡鍫嗘爤鍒濆嬪寲
MOV IE,#8AH ;寮鏀綯0銆乀1涓鏂
MOV TMOD,#51H ;T0瀹氭椂錛孴1璁℃暟
MOV TH0,#0DCH
MOV TL0,#00H ;瀹氭椂10ms
MOV 20H,#100 ;100*10ms=1s
MOV TH1,#00H
MOV TL1,#00H
MOV 21H,#0
MOV 22H,#0
MOV 23H,#0
SETB TR1 錛忥紡瀹氭椂鍣1鍚鍔
SETB TR0
WAIT:AJMP WAIT

D. 甯蹇欐敞閲婂崟鐗囨満紼嬪簭銆傘傚姞鍒

org 00h ;瀹氫箟褰撳墠浣嶇疆涓 00h
ljmp start ;闀胯漿縐誨埌 start

org 30h ;瀹氫箟褰撳墠浣嶇疆涓 30h
start:
mov tmod, #01h ;璁懼畾T0瀹氭椂鏂瑰紡1

mov r5,#30 ;璁″垝絳夊緟30閬

again:
mov r6,#5 ;寰鐜鏄劇ず5涓瀛楄妭

mov dptr,#biaoge ;biaoge璧峰嬪湴鍧
mov r0,#00h ;浠巄iaoge涓鐨勭0涓寮濮

chabiao:
mov a, r0 ;R0寮濮嬫椂絳変簬0
inc r0 ;R0鍔1
movc a,@a+dptr ;鎹㈢畻鍑鴻〃鏍間腑鐨勬暟鎹
mov p1,a ;閫佸埌P1杈撳嚭
setb tr0 ;鍚鍔═0錛屽紑濮嬪畾鏃

chongzhuang:
mov th0,#3ch ;3CB0錛岃懼畾瀹氭椂50ms
mov tl0,#0b0h
jnb tf0,$ ;絳夊緟瀹氭椂緇撴潫
clr tf0 ;娓呴櫎鏍囧織
djnz r5,chongzhuang ;寰鐜30閬 鍏1.5S

mov th0,#3ch ;閲嶆柊浼犻佸垵濮嬪
mov tl0,#0b0h ;
mov r5,#30 ;閲嶆柊璁懼畾錛30閬

djnz r6,chabiao ;5銆4銆3銆2銆1錛岃疆鐣鏄劇ず5涓琛ㄤ腑鏁版嵁

sjmp again ;杞縐誨埌 again

biaoge:
db 00h,18h,24h,42h,81h ;
00:鈼忊棌鈼忊棌鈼忊棌鈼忊棌
18:鈼忊棌鈼忊棆鈼嬧棌鈼忊棌
24:鈼忊棌鈼嬧棌鈼忊棆鈼忊棌
42:鈼忊棆鈼忊棌鈼忊棌鈼嬧棌
81:鈼嬧棌鈼忊棌鈼忊棌鈼忊棆
end ;end

閱讀全文

與mdk5程序如何幫忙注釋相關的資料

熱點內容
什麼地方有綠葉產品代理商 瀏覽:845
車輛違法信息多久能查出來 瀏覽:386
減肥拔罐產品怎麼推廣好 瀏覽:885
keil如何合並兩個獨立程序 瀏覽:878
融券賣出的證券暫停交易怎麼辦 瀏覽:460
程序軟體圖標怎麼改 瀏覽:703
信用借條發信息是什麼意思 瀏覽:282
銀行清單怎麼顯示代理人名字 瀏覽:771
如何發地址信息 瀏覽:722
建行如何查詢與一個人交易 瀏覽:85
數控中心架產品後退怎麼回事 瀏覽:509
為什麼微信轉賬要補全對方信息 瀏覽:898
如何起高大上的產品名字 瀏覽:167
交易溢價率高是什麼意思 瀏覽:715
如何找到大數據中心 瀏覽:534
融合產品是指什麼 瀏覽:681
絲綢如何把握市場佔有率 瀏覽:756
排列圖中數據不能多於多少 瀏覽:705
資料庫檢索中ti什麼意思 瀏覽:802
小學信息技術學案怎麼寫 瀏覽:224