PIC16C5X的低功耗模式
在實(shí)際應(yīng)用中,有時(shí)需要考慮電源電壓VDD的下降情況。電源下降保護(hù)電路如圖1所示。在這個(gè)電路中,當(dāng)VDD≤VD+0.7V時(shí),則會(huì)產(chǎn)生復(fù)位,原理為穩(wěn)壓管的穩(wěn)壓值VD和晶體管Q1的e、b正向壓降之和大于VDD,穩(wěn)壓管Vz截止,晶體管Q1截止,MCLR端為低電平,單片機(jī)處于復(fù)位狀態(tài)。
圖2是另一種保護(hù)電路,電路中用電阻代替了穩(wěn)壓管,價(jià)格較低,但效果較差,當(dāng)VDD≤(R1+R2)×0.7/R1時(shí),晶體管截止,MCLR為低電平,單片機(jī)復(fù)位。 [2].省電SLEEP 執(zhí)行SLEEP指令,進(jìn)入省電模式,此時(shí)WDT被清“0”,然后重新開(kāi)始計(jì)數(shù),f3寄存器“PD”位被清“0”,“TO”位被置“1”,振蕩驅(qū)動(dòng)器停止工作,所有I/O保持原來(lái)狀態(tài),這種工作模式功耗最低。 為使單片機(jī)功耗最小,進(jìn)入SLEEP前,應(yīng)使所有I/O口處于低電平或高電平狀態(tài),處于高阻狀態(tài)的I/O腳應(yīng)由外部設(shè)置成高或低電平(加上拉或下拉),以避免浮空輸入所產(chǎn)生的開(kāi)關(guān)電流。RTCC的輸入端同樣應(yīng)處于VDD或VSS,MCLR引腳需處于高電平,以使電流最小,功耗最低。 從SLEEP模式喚醒的過(guò)程如下:?jiǎn)纹瑱C(jī)可被WDT溢出或MCLR引腳上加一個(gè)低電平脈沖喚醒,在兩種喚醒方式中,普通程序恢復(fù)執(zhí)行前,單片機(jī)停留在RESET狀態(tài),持續(xù)一個(gè)振蕩啟動(dòng)定時(shí)(OST)周期。標(biāo)志寄存器STATUS的“PD”位,在上電時(shí)置“1”,會(huì)被“SLEEP”指令清“0”,此特征可用于檢測(cè)單片機(jī)是上電復(fù)位還是從省電方式喚醒復(fù)位。標(biāo)志寄存器的TO位,可用于判斷喚醒是由外部MCLR信號(hào)還是WDT溢出引起的。 注意的是在使用外接RC的上電復(fù)位電路時(shí),不推薦用WDT喚醒省電模式,因?yàn)閃DT溢出時(shí)產(chǎn)生RESET通常不會(huì)使外電容放電,且單片機(jī)只會(huì)由復(fù)位定時(shí)器的周期進(jìn)行復(fù)位。 [3].配置位EPROM 配置位EPROM(configuration EPROM)有4個(gè)EPROM熔絲決定,這些位有別于程序存儲(chǔ)器的EPROM普通位。 兩個(gè)熔絲用于選擇振蕩器類(lèi)型,另兩個(gè)一個(gè)是WDT允許位,一個(gè)程序保密位。 · 用戶(hù)識(shí)別碼(Customer ID Code) PIC16C5X系列有16個(gè)特別的EPROM位,它們不是程序存儲(chǔ)器單元,這些位用于存儲(chǔ)用戶(hù)識(shí)別碼、校驗(yàn)碼或其它信息數(shù)據(jù),這些單元不能在普通程序中訪問(wèn)。 · 代碼保護(hù) 當(dāng)選擇將芯片的程序保密位熔絲燒斷(寫(xiě)入0)后,程序存儲(chǔ)區(qū)ROM中的程序代碼(12位寬)的高8位將被保護(hù)。此時(shí)讀出的數(shù)據(jù)將是“00000000XXXX”形式,高8位全部被“0”取代,無(wú)法再解釋這些代碼的含義,也即不能進(jìn)行代碼復(fù)制,但單片機(jī)的功能并不受影響,代碼程序仍然可正確執(zhí)行。從而保護(hù)自己的著作權(quán)。 當(dāng)程序被保護(hù)時(shí),從040H開(kāi)始及以上存儲(chǔ)單元的內(nèi)容將受保護(hù)而不能編程,程序存儲(chǔ)器地址000H—03FH的電源、用戶(hù)ID碼單元和配置位熔絲仍可編程。 |
評(píng)論