久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 6785|回復(fù): 4
收起左側(cè)

求助:請(qǐng)幫忙分析一下程序

[復(fù)制鏈接]
ID:8896 發(fā)表于 2009-4-21 23:55 | 顯示全部樓層 |閱讀模式
ORG 0000H ;程序功能平時(shí)8個(gè)LED閃爍,外中斷0時(shí)左移流水燈3次
LJMP MAIN
ORG 0003H
LJMP EXT0
ORG 0030H
MAIN:     MOV IE,#81H
             CLR IT0
             MOV SP,#70H
START:  MOV P1,#0FFH
             LCALL DELAY
             MOV P1,#00H
             LCALL DELAY
             LJMP START
EXT0:    PUSH ACC
             PUSH PSW
             CLR RS0   ;更換工作寄存器組
             SETB RS1

             MOV R1,#3
LOOP:    MOV A,#0FEH
LOOP1:  MOV P1,A
             LCALL DELAY
             RL A
             CJNE A,#0FEH,LOOP1
             DJNZ R1,LOOP
             POP ACC
             POP PSW
             RETI
DELAY:  MOV R5,#2
L1:        MOV R6,#0
L2:        MOV R7,#0
             DJNZ R7,$
             DJNZ R6,L2
             DJNZ R5,L1
             RET
             END
這個(gè)程序不明白為什么要在外部中斷中更換工作寄存器組(R0~R7)。
如果不更換的話滿(mǎn)足不了功能要求,加上就好了。
可是怎么都分析不出來(lái),望高人解答!!
回復(fù)

使用道具 舉報(bào)

ID:10282 發(fā)表于 2009-4-22 23:48 | 顯示全部樓層
中斷有調(diào)用delay子程序,執(zhí)行中斷程序之后,R5,R6,R7全部被清0,中斷若從delay程序里面產(chǎn)生,返回后R6,R7在延時(shí)程序的內(nèi)循環(huán)里,R6,R7賦值為0,產(chǎn)生的延時(shí)同設(shè)置為255等同(只相差2個(gè)循環(huán)周期),而R5清零之后產(chǎn)生的效果共R6=2相比則相差128倍了,故程序返回之后的第一次延時(shí)會(huì)很長(zhǎng),之后便正常了。更換寄存器組,中斷時(shí)不改變?cè)械闹担袛喾祷刂皃op psw指令又將寄存器組調(diào)回使用了。

解釋有點(diǎn)啰嗦。
回復(fù)

使用道具 舉報(bào)

ID:9596 發(fā)表于 2009-4-23 00:09 | 顯示全部樓層

不對(duì)啊,即使加上 CLR RS0   ;更換工作寄存器組
                       SETB
RS1                            , 外中斷0時(shí)左移流水燈大部分時(shí)候是3次,但不是恒定的3次,我也沒(méi)想得通是哪里的問(wèn)題,另外你既然用的是電平觸發(fā)方式(CLR IT0),在中斷返回前要撤除/INT0的低電平的,同樣希望有哪個(gè)高手指點(diǎn),感激……

回復(fù)

使用道具 舉報(bào)

ID:8896 發(fā)表于 2009-4-23 16:32 | 顯示全部樓層
以下是引用xushiming在2009-4-22 23:48:08的發(fā)言:
中斷有調(diào)用delay子程序,執(zhí)行中斷程序之后,R5,R6,R7全部被清0,中斷若從delay程序里面產(chǎn)生,返回后R6,R7在延時(shí)程序的內(nèi)循環(huán)里,R6,R7賦值為0,產(chǎn)生的延時(shí)同設(shè)置為255等同(只相差2個(gè)循環(huán)周期),而R5清零之后產(chǎn)生的效果共R6=2相比則相差128倍了,故程序返回之后的第一次延時(shí)會(huì)很長(zhǎng),之后便正常了。更換寄存器組,中斷時(shí)不改變?cè)械闹担袛喾祷刂皃op psw指令又將寄存器組調(diào)回使用了。

解釋有點(diǎn)啰嗦。

很明白的解釋?zhuān)媸歉呷税ⅲx謝咯!

回復(fù)

使用道具 舉報(bào)

ID:9972 發(fā)表于 2009-4-24 21:08 | 顯示全部樓層

呵呵,學(xué)會(huì)了一點(diǎn),又進(jìn)步了一下,謝謝。

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 成人免费动漫 | 成人深夜视频 | 少妇福利视频 | 日韩福利视频 | 国产成人综合视频 | 黄色大片在线免费观看 | 成人免费看片在线观看 | 精品欧美一区二区三区久久久 | 欧美日韩在线免费观看 | 思思在线视频 | 亚洲在线免费观看 | 国产com | 免费黄色一级视频 | 中文字幕一区二区三区视频 | 四虎4hu永久免费网站影院 | 在线欧美 | 伊人av影院 | 中文字幕在线观看第一页 | 一区二区在线免费观看 | 极品美女一区二区三区 | 日韩理论片| 黄色精品网站 | 国产精品毛片久久久久久久 | 欧美一级黄色大片 | 大尺度做爰呻吟舌吻网站 | 欧美性色网 | 午夜精品在线 | 97国产在线 | 狠狠干在线视频 | 亚洲一区中文 | 精品视频免费 | 黄色国产精品 | 91av在线免费观看 | 精品国产91乱码一区二区三区 | 黄色a一级 | www.日本黄色 | 精品欧美一区二区三区久久久 | 国产91精品在线观看 | 69福利视频 | 日韩不卡在线观看 | 日韩成人免费视频 |