|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
小弟請(qǐng)教個(gè)問題 |
| 作者:咸魚 欄目:技術(shù)交流 |
MOV A,#0FEH MOV P1,#0FEH MAIN: LCALL DELAY RL A MOV P1,A LJMP MAIN DELAY: MOV R7,#5000 D1: MOV R6,#5000 D2: DJNZ R6,D2 DJNZ R7,D1 RET END 這是小弟自己編的一個(gè)流水燈的程序,但是奇怪的是 無論你把“DELAY: MOV R7,#5000 D1: MOV R6,#5000”里面的數(shù)字改寫的再高,好象是4000 以上吧,燈的閃爍速度就提不上去了。 這是為什么呢? 還問一個(gè)有點(diǎn)小白的問題為什么 MOV A,#0FEH 只能用A 用B 不行嗎?? |
| 2樓: | >>參與討論 |
| 作者: tyw 于 2006/1/21 22:01:00 發(fā)布:
你用什么cpu?8bit的立即數(shù)<256才是,#5000是什么東東 要閃得快,延時(shí)減小才對(duì)呀. * - 本貼最后修改時(shí)間:2006-1-21 22:03:42 修改者:tyw |
|
| 3樓: | >>參與討論 |
| 作者: awey 于 2006/1/22 8:42:00 發(fā)布:
從提問來看,樓主用的是51系的 |
|
| 4樓: | >>參與討論 |
| 作者: maychang 于 2006/1/22 12:51:00 發(fā)布:
MOV R7,#5000 嚴(yán)格地說,是匯編程序的BUG。 但多數(shù)匯編程序只是簡(jiǎn)單地認(rèn)為低字節(jié)有效,結(jié)果和MOV R7,#00完全相同。 所以樓主怎么改,機(jī)器碼并沒有變,因?yàn)榈妥止?jié)始終是#00。 |
|
| 5樓: | >>參與討論 |
| 作者: 咸魚 于 2006/1/22 14:12:00 發(fā)布:
用的是51 不假 8位 也不是 只是數(shù)字在往上改 閃爍速度幾近不變 我是想讓其變慢些 用這種方法可最多延遲多久?? |
|
| 6樓: | >>參與討論 |
| 作者: 咸魚 于 2006/1/22 14:14:00 發(fā)布:
感謝 各位大蝦的幫助 自學(xué)之路漫漫西啊 |
|
| 7樓: | >>參與討論 |
| 作者: H.TAO 于 2006/1/22 14:36:00 發(fā)布:
RE 想變慢要多用幾個(gè)循環(huán),至少3個(gè) |
|
| 8樓: | >>參與討論 |
| 作者: ZHANGWR 于 2006/1/22 16:54:00 發(fā)布:
想變慢,可以再做一個(gè)嵌套 還有一個(gè)辦法,就是在 D2:和DJNZ R6,D2 之間加一個(gè)或若干個(gè)NOP 或其他無關(guān)的語句 |
|
|
|
| 免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |