新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > AVR單片機(jī)復(fù)位問題

AVR單片機(jī)復(fù)位問題

作者: 時(shí)間:2013-01-09 來源:網(wǎng)絡(luò) 收藏

AVR復(fù)位時(shí)所有的I/O 寄存器都被設(shè)置為初始值,程序從復(fù)位向量處開始執(zhí)行。復(fù)位向量處的 指令必須是絕對跳轉(zhuǎn)JMP 指令,以使程序跳轉(zhuǎn)到復(fù)位處理例程。

AVR的復(fù)位五個(gè):

上電復(fù)位。電源電壓低于上電復(fù)位門限 VPOT 時(shí), MCU 復(fù)位。

外部復(fù)位。引腳 RESET 上的低電平持續(xù)時(shí)間大于最小脈沖寬度時(shí)MCU 復(fù)位。

看門狗復(fù)位??撮T狗使能并且看門狗定時(shí)器溢出時(shí)復(fù)位發(fā)生。

掉電檢測復(fù)位。掉電檢測復(fù)位功能使能,且電源電壓低于掉電檢測復(fù)位門限 VBOT 時(shí) MCU 即復(fù)位。

JTAG AVR復(fù)位。復(fù)位寄存器為1 時(shí)MCU 復(fù)位。

1.上位復(fù)位

上電復(fù)位(POR) 脈沖由片內(nèi)檢測電路產(chǎn)生,POR電路保證器件在上電時(shí)復(fù)位。VCC 達(dá)到上電門限電壓后觸發(fā)延遲計(jì)數(shù)器。在計(jì)數(shù)器溢

出之前器件一直保持為復(fù)位狀態(tài)。當(dāng)VCC 下降時(shí),只要低于檢測門限,RESET 信號立即 生效。

2.外部復(fù)位

外部復(fù)位由外加于RESET 引腳的低電平產(chǎn)生。當(dāng)復(fù)位低電平持續(xù)時(shí)間大于最小脈沖寬度 時(shí) 即觸發(fā)復(fù)位過程,即使此時(shí)并沒有時(shí)鐘信號在運(yùn)行。當(dāng)外加信號達(dá)到 復(fù)位門限電壓VRST( 上升沿) 時(shí), tTOUT 延時(shí)周期開始。延時(shí)結(jié)束后MCU 即啟動。

3.看門狗復(fù)位

看門狗定時(shí)器溢出時(shí)將產(chǎn)生持續(xù)時(shí)間為1 個(gè)CK 周期的復(fù)位脈沖。在脈沖的下降沿,延時(shí) 定時(shí)器開始對tTOUT 記數(shù)

4.掉電檢測復(fù)位

BOD 電路的開關(guān)由熔絲位BODEN控制。當(dāng)BOD使能后(BODEN被編程),一旦VCC下降到 觸發(fā)電平以下(VBOT-, Figure 19), BOD 復(fù)位立即被激發(fā)。當(dāng)VCC 上升到觸發(fā)電平以上 時(shí)(VBOT+,F(xiàn)igure 19),延時(shí)計(jì)數(shù)器開始計(jì)數(shù),一旦超過溢出時(shí)間tTOUT,MCU即恢復(fù)工作。

5.JTAG AVR復(fù)位

JTAG通過復(fù)位寄存器mcur,復(fù)位寄存器為1 時(shí)MCU 復(fù)位。通過JTAG 指令A(yù)VR_RESET 可以使JTAG 復(fù)位寄存器置位,并引發(fā)MCU 復(fù)位,并使 JTRF 置位。上電復(fù)位將使其清零,也可以通過寫”0” 來清除。

6.MCU 控制和狀態(tài)寄存器提供了有關(guān)引起MCU 復(fù)位的復(fù)位源的信息。

MCU 控制和狀態(tài)寄存器提供了有關(guān)引起MCU 復(fù)位的復(fù)位源的信息。

1.Bit 4 – JTRF: JTAG 復(fù)位標(biāo)志

通過JTAG 指令A(yù)VR_RESET 可以使JTAG 復(fù)位寄存器置位,并引發(fā)MCU 復(fù)位,并使

2.JTRF 置位。上電復(fù)位將使其清零,也可以通過寫”0” 來清除。

Bit 3 – WDRF: 看門狗復(fù)位標(biāo)志

看門狗復(fù)位發(fā)生時(shí)置位。上電復(fù)位將使其清零,也可以通過寫”0” 來清除。

3.Bit 2 – BORF: 掉電檢測復(fù)位標(biāo)志

掉電檢測復(fù)位發(fā)生時(shí)置位。上電復(fù)位將使其清零,也可以通過寫”0” 來清除。

4.Bit 1 – EXTRF: 外部復(fù)位標(biāo)志

外部復(fù)位發(fā)生時(shí)置位。上電復(fù)位將使其清零,也可以通過寫”0” 來清除。

5.Bit 0 – PORF: 上電復(fù)位標(biāo)志

上電復(fù)位發(fā)生時(shí)置位。只能通過寫”0” 來清除。

為了使用這些復(fù)位標(biāo)志來識別復(fù)位條件,用戶應(yīng)該盡早讀取此寄存器的數(shù)據(jù),然后將其復(fù) 位。如果在其他復(fù)位發(fā)生之前將此寄存器復(fù)位,則后續(xù)復(fù)位源可以通過檢查復(fù)位標(biāo)志來了解。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉