音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術 | 電源技術 | 測控之家 | EMC技術 | ARM技術 | EDA技術 | PCB技術 | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術 | 新手園地 | 單 片 機 | DSP技術 | MCU技術 | IC 設計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

再提匯編軟復位問題?

作者:diannaoza 欄目:單片機
再提匯編軟復位問題?
org 0000h
ajmp beg
org 0003h
reti
org 000bh
reti
org 0013h
reti
org 001bh
reti
org 0023h
reti

org 0030h
beg:
jb 00h,BEG1
inc 21h
mov r6,#99h
BEG1:
mov r6,#88h
loop1:
cpl 00h
       clr a;;軟復位
       PUSH acc
    PUSH acc
    reti ;;軟復位
nop
ajmp loop1
end

看了相關的貼子,說復位到0000h,重新運行,寄存器狀態(tài)不確定?
我上面的例子軟件模擬運行卻是確定的。
//我想得到的是位00h,在軟復位后還是保持在沒軟復位前的狀態(tài)//。
當00h=1時,軟復位后它的值還是1,不會因為軟復位而改變。
這樣運行程序有問題嗎?


2樓: >>參與討論
hotpower
應該沒問題,如何知道有問題???
 
3樓: >>參與討論
maychang
沒掉電,各RAM內(nèi)容就是確定的,不會成為隨機數(shù)
各SFR在硬復位時初始化,軟復位不會初始化。

* - 本貼最后修改時間:2007-1-22 18:47:53 修改者:maychang

4樓: >>參與討論
conwh
還是不建議這樣使用,因為你的這段程序不是充分地說明各個狀態(tài)
比如說,你的口狀態(tài)當發(fā)生改變時,你這樣的“復位”就不能改變口的狀態(tài),有時可能還是危險的。

5樓: >>參與討論
diannaoza
我想知道這樣的軟復位什么場合可以用,適合用?
當然我想要的是就是不想讓寄存器的狀態(tài)改變,而讓程序從頭(0000H)處開始運行?當然是有用處的。
也就想多解下這樣的軟件復位,可以在什么場合下用,適合用,可靠用,不會說這樣的軟復位什么場合也不能用吧?HeHe...

6樓: >>參與討論
hotpower
一路人~~~
 

51新手問題:中斷響應后片子里面哪些地方改寫了

7樓: >>參與討論
diannaoza
軟復位后想在特定的時間得到運行體!
;;硬件帶硬狗;;想得到在特定的時間里“運行體”;;
org 0000h
ajmp beg
org 0003h
reti
org 000bh
reti
org 0013h
reti
org 001bh
reti
org 0023h
reti

org 0030h
beg:
jb 00h,BEG1
;;;
;;;運行體后
pcon,#2;;;
BEG1:
mov p1,#0ffh
mov p3,#0ffh
mov tmod,#22h
mov smod,#55h
mov scon,#50h
mov ie,#83h
..
loop1:
..
cpl 00h
..
       clr a;;軟復位
       PUSH acc
    PUSH acc
    reti ;;軟復位
nop
ajmp loop1
end

看了相關的貼子,說復位到0000h,重新運行,寄存器狀態(tài)不確定?
我上面的例子軟件模擬運行卻是確定的。
//我想得到的是位00h,在軟復位后還是保持在沒軟復位前的狀態(tài)//。
當00h=1時,軟復位后它的值還是1,不會因為軟復位而改變。
這樣運行程序有問題嗎?




8樓: >>參與討論
diannaoza
一路人~~~
“” 一路人~~~“”什么叫一路人,倒塌...HeHe...

9樓: >>參與討論
hotpower
倒塌了~~~有硬狗就原地踏步掐死狗~~~硬復位操心少的~~~
 
10樓: >>參與討論
diannaoza
有硬狗就原地踏步掐死狗?
有硬狗就原地踏步掐死狗!

我的實體運行部份運行不了。這個運行是在寄存器標志為1的情況下進行的。你硬啟了就進不了我的運行實體,因為寄存器復位初始。還有這個軟件復位什么場合可以用??

11樓: >>參與討論
dengm
RE
    ACALL SUB_RETI
    clr a;;軟復位
    MOV IE, A
    PUSH acc
    PUSH acc
SUB_RETI:
    reti ;;軟復位


12樓: >>參與討論
xwj
軟復位不是那么簡單的,還有很多事要做的

IO
SP
PSW
中斷標志和配置
IE
中斷占用
清內(nèi)存
部分特殊寄存器
外圍器件的釋放
正常初始化
等等等等。。。


系統(tǒng)可靠性要考慮的東西很多的,LZ想的還是過于簡單了哦

軟復位、特殊處理的提出是基于出錯情況的不確定性來假設的,就是說復位時的情況、寄存器值可能是你不知道或不可預計、不受控的
雖然現(xiàn)在能用,但不保證以后或現(xiàn)場不出錯誤哦


虛心點吧,再仔細點哦

對你的領悟和應用能力表示贊賞,再接再厲,把結(jié)構化編程和可靠性考慮成為習慣,把51徹底研究透徹,把思路和知識面無限擴展,那你就是高手了

加油吧!




13樓: >>參與討論
conwh
為什么非得再從0000開始?
 
14樓: >>參與討論
hotpower
今天遇到兩位"一路人"~~~有意思~~~
倒塌了~~~昨天看丁俊輝打球到6:00,該倒塌去了~~~

15樓: >>參與討論
diannaoza
為什么非得再從0000開始?想節(jié)省程序存儲字節(jié)。
也就是有想當?shù)囊徊糠殖绦蚴枪灿玫摹?br>
16樓: >>參與討論
hotpower
暈~~~這個你先請教一下dengm~~~
 

17樓: >>參與討論
diannaoza
軟件復位與程序構架!
org 0000h
ajmp beg
org 0003h
..
reti
org 000bh
..
reti
org 0013h
..
reti
org 001bh
..
reti
org 0023h
..
reti

org 0030h
beg:
mov sp,#5fh;;
mov p1,#0ffh
mov p3,#0ffh
mov tmod,#22h
mov smod,#55h
mov scon,#50h
mov ie,#83h
loop:
;;500B的主體程序;;
;;;;
jb 00h,rrdd;;;這個rrdd不常進入只是偶而用下;;;
loop1:
500B的子體

here:mov pcon,#01h
ajmp here
;;//

子程序的一部份:;;當進入這個時;;
rrdd:
nop
jb 00h,rrd1
    setb 00h
       ACALL SUB_RETI
    clr a;;軟復位
    MOV IE, A
    PUSH acc
    PUSH acc
       SUB_RETI:
    reti ;;軟復位

    rrd1:
主體處理完的得到的相關數(shù)據(jù)
    clr 00h
ret
end

不知道完成這樣的程序,用這樣的構架是否有問題?還有更好的構架嗎?謝謝!

參與討論
昵稱:
討論內(nèi)容:
 
 
相關帖子
問個關于485加TVS的弱弱的問題!
《匠人手記》之三《一階濾波算法之深入研究》已經(jīng)發(fā)布
用運放LMV324為什么聲音會失真???急????
步進驅(qū)動芯片疑問!
能不能把單片機的晶振換成很慢的振蕩電路
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號