標(biāo)題:
SH88F516低電壓檢測(cè)LPD監(jiān)測(cè)電源電壓-中穎單片機(jī)源程序
[打印本頁]
作者:
weihu
時(shí)間:
2017-11-18 04:34
標(biāo)題:
SH88F516低電壓檢測(cè)LPD監(jiān)測(cè)電源電壓-中穎單片機(jī)源程序
本帖最后由 weihu 于 2017-11-18 04:35 編輯
實(shí)現(xiàn)本功能的中穎單片機(jī)源碼如下:
/***************************************************************************************************************
說明:低電壓檢測(cè)(LPD)功能用來監(jiān)測(cè)電源電壓,如果電壓低于指定值時(shí)產(chǎn)生內(nèi)部標(biāo)志,LPD功能用來通知CPU電源是否被切斷
或電池用盡,因此在電壓低于最小工作電壓之前,軟件可以采取一些保護(hù)措施。
本程序通過監(jiān)測(cè)P4.7(VLPD)引腳電壓,若低于指定電壓就產(chǎn)生中斷。
要求:打開J11的2腳。
****************************************************************************************************************/
#include <sh88f516.h>
void init();
main()
{
init();
while(1);
}
void init()
{
CLKCON = 0x00;
P0M0 = 0x00;
P0M1 = 0x01; //P0.0
P0_0 = 0;
IPH1 = 0x80;
IPL1 = 0x80; //中斷優(yōu)先級(jí)設(shè)定 此處的設(shè)置表明LPD具有最高優(yōu)先級(jí)
IEN1 = 0x80; //IEN1 = 1000 0000B 即 ELPD=1 打開LPD中斷
LPDCON = 0xA1; //LPDCON = 101- --01B LPDEN=1 允許低電壓檢測(cè)
//LPDCON = 101- --01B LPDF=0 LPD中斷標(biāo)志位,默認(rèn)為0,為1時(shí)表示有LPD中斷發(fā)生
//LPDCON = 101- --01B LPDV=0 LPD檢測(cè)電壓源,為0檢測(cè)電源電壓,為1檢測(cè)VLPD(P4.7)引腳電壓
//LPDCON = 101- --01B LPDS[0,1]=01 比較電壓選擇,00=3.7V,01=3.9V,10=4.2V,11=4.4V
EA = 1; //IEN0 = 1000 0000B 即 EA=1 開總中斷
}
void LPD_INT() interrupt 14 using 1 //外部中斷4的中斷號(hào)為14.
{
P0_0 = 1; //中斷處理函數(shù)部分,如實(shí)時(shí)進(jìn)行數(shù)據(jù)存儲(chǔ)
LPDCON &= 0xBF; //LPDCON & 1011 1111 清0中斷標(biāo)志位, 由硬件或軟件清0
…………
…………
…………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
壓縮包里面包含有中穎單片機(jī)sh88f516常用功能的源碼,中文注釋都很詳細(xì)
下載地址:
http://www.torrancerestoration.com/bbs/dpj-98300-1.html
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1