熱門(mén): 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂(lè)園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
|
發(fā)布時(shí)間: 2024-9-10 22:33
正文摘要:下面是一個(gè)數(shù)碼管動(dòng)態(tài)顯示0-999數(shù)字的程序,在程序的第62行“interrupt 1”后面跟著個(gè)“using 2”,這個(gè)“using 2”是必要的嗎,不寫(xiě)會(huì)怎樣 |
|
不要寫(xiě)using,多少個(gè)中斷都不要用 using是優(yōu)化的,不是必需的,你不用沒(méi)多大事,用了反而容易出錯(cuò) |
| 不太懂,但是我試過(guò),結(jié)果變的不穩(wěn)定 |
csmyldl 發(fā)表于 2024-9-11 08:55 我也覺(jué)得您說(shuō)的對(duì),假設(shè)有4個(gè)以上的中斷,就要好好考慮一下了。 |
wpppmlah 發(fā)表于 2024-9-11 08:27 你這理解錯(cuò)了,單片機(jī)把內(nèi)存地址的00H至1FH的32個(gè)存儲(chǔ)單元分為4組,稱之為工作寄存器,每一組分別對(duì)應(yīng)R0至R7,用于中斷時(shí)保護(hù)R0-R7的數(shù)據(jù)不被覆蓋,若中斷多了,就需要選擇使用哪一組工作寄存器。 |
建議不要使用 using x; 讓編譯器自己去處理,所以這個(gè) using 2 可以不用寫(xiě),,(意思是指定此函數(shù)使用R0-R7通用寄存器的 R2,我是這么理解的).![]() |
| 如果只使用了一個(gè)中斷,可以不要,但程序中使用了多個(gè)中斷時(shí),為了防止中斷保護(hù)的寄存器R0 R1數(shù)據(jù)誤覆蓋,最好加上各中斷的工作器選擇,編程者如果能確認(rèn)保護(hù)數(shù)據(jù)不會(huì)被覆蓋,可省掉using |
| 沒(méi)必要,默認(rèn)using0 |
Powered by 單片機(jī)教程網(wǎng)