高精度RTC SD2403AP在智能路燈控制器上的運(yùn)用
時間報警允許寄存器的使能位是用于確定哪些時間報警寄存器(秒、分鐘等)需要與實時時鐘寄存器之間作比較。當(dāng)實時時鐘運(yùn)行時,一旦被允許的報警寄存器均與對應(yīng)的實時時鐘寄存器相匹配,就會觸發(fā)一次報警中斷,同時報警中斷標(biāo)志位INTAF位被置”1”
當(dāng)設(shè)置 INTS1=0、INTS0=1時,即允許報警中斷從INT腳輸出。該報警中斷有兩種模式,即單事件報警和周期性報警, 模式的選定由控制寄存器2中的報警中斷模式位IM的值來定:
IM=0 ,單事件報警,輸出低電平直至INTAF位清零
IM=1 ,周期性報警,輸出低電平有效、寬度為250MS的周期性脈沖直至INTAF位清零
為清除報警中斷,可通過寫操作將控制寄存器1的INTAF位置”0”。但當(dāng)ARST位置為”1”,則在控制寄存器1被讀取時,INTAF位會自動清零。
●智能路燈控制器設(shè)計
本文采用大家使用普遍ATMEL89C51單片機(jī)做主控芯片。通過對時間的調(diào)用配合光感信號達(dá)到對路燈的開關(guān)智能控制,該系統(tǒng)可廣泛應(yīng)用于道路燈、霓虹燈、航標(biāo)燈、夜景燈、高速公路照明燈、庭院燈及所有室外照明燈具的控制,其系統(tǒng)框圖如下
硬件設(shè)計
圖中,主要給出SD2403AP的具體接線電路,OUT為各位的控制信號??山尤龢O管后放大給繼電器輸出,從而控制路燈的開關(guān)。
在此設(shè)計中MCU通過P3.4,P3.5模擬IIC總線與SD2403AP進(jìn)行通信,并通過INT讀出中斷信號,本設(shè)計設(shè)置的每天早上6:30(此時間可以由用戶通過KEY鍵進(jìn)行修改)定時關(guān)掉OUT1路的輸出。OUT2,OUT3等由光線控制?,F(xiàn)以O(shè)UT1的關(guān)斷做例子分析
軟件設(shè)計
安排SD2403AP在06:30輸出一個低電平的信號,MCU通過輪循的方式查到此電平并設(shè)置OUT1為0,從而關(guān)斷繼電器并關(guān)段路燈等。
這里將寫入SD2403AP的寄存器列出來,如表:
寄存器名稱 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
數(shù)值范圍 |
|
00H |
秒 |
0 |
S40 |
S20 |
S10 |
S8 |
S4 |
S2 |
S1 |
0-59 |
01H |
分鐘 |
0 |
MN40 |
MN20 |
MN10 |
MN8 |
MN4 |
MN2 |
MN1 |
0-59 |
02H |
小時 |
12_/24 |
0 |
H20 P/A_ |
H10 |
H8 |
H4 |
H2 |
H1 |
0-23 |
03H |
星期 |
0 |
0 |
0 |
0 |
0 |
W4 |
W2 |
W1 |
0-6 |
04H |
日 |
0 |
0 |
D20 |
D10 |
D8 |
D4 |
D2 |
D1 |
1-31 |
05H |
月 |
0 |
0 |
0 |
MO10 |
MO8 |
MO4 |
MO2 |
MO1 |
1-12 |
06H |
年 |
Y80 |
Y40 |
Y20 |
Y10 |
Y8 |
Y4 |
Y2 |
Y1 |
0-99 |
07H |
秒報警 |
0 |
AS40 |
AS20 |
AS10 |
AS8 |
AS4 |
AS2 |
AS1 |
0-59 |
08H |
分鐘報警 |
0 |
AMN40 |
AMN20 |
AMN10 |
AMN8 |
AMN4 |
AMN2 |
AMN1 |
0-59 |
09H |
小時報警 |
0 |
0 |
AH20 AP/A_ |
AH10 |
AH8 |
AH4 |
AH2 |
AH1 |
0-23 |
0AH |
星期報警 |
0 |
AW6 |
AW5 |
AW4 |
AW3 |
AW2 |
AW1 |
AW0 |
N/A |
0BH |
日報警 |
0 |
0 |
AD20 |
AD10 |
AD8 |
AD4 |
AD2 |
AD1 |
1-31 |
0CH |
月報警 |
0 |
0 |
0 |
AMO10 |
AMO8 |
AMO4 |
AMO2 |
AMO1 |
1-12 |
0DH |
年報警 |
AY80 |
AY40 |
AY20 |
AY10 |
AY8 |
AY4 |
AY2 |
AY1 |
0-99 |
0EH |
報警允許 |
0 |
EAY |
EAMO |
EAD |
EAW |
EAH |
EAMN |
EAS |
N/A |
0FH |
CTR1 |
WRTC3 |
0 |
INTFA |
INTDF |
0 |
WRTC2 |
0 |
RTCF |
N/A |
10H |
CTR2 |
WRTC1 |
IM |
INTS1 |
INTS0 |
FOBAT |
INTDE |
INTAE |
INTFE |
N/A |
11H |
CTR3 |
ARST |
0 |
TDS1 |
TDS0 |
FS3 |
FS2 |
FS1 |
FS0 |
N/A |
12H |
時間調(diào)整 |
0 |
F6 |
F5 |
F4 |
F3 |
F2 |
F1 |
F0 |
N/A |
13H |
倒計時定時器 |
TD7 |
TD6 |
TD5 |
TD4 |
TD3 |
TD2 |
TD1 |
TD0 |
0-255 |
14H~1FH |
(12BYTE) |
BIT7 |
BIT6 |
BIT5 |
BIT4 |
BIT3 |
BIT2 |
BIT1 |
BIT0 |
N/A |
讀時間的時候用到的是00H——06H里面的數(shù)值,為BCD碼。
控制寄存器和中斷在07——13H。
本設(shè)計設(shè)置的中斷涉及的寄存器有08H,09H,EH,F(xiàn)H,10H
部分軟件如下:
- 打開“軟鎖”,即設(shè)置WRTC1,WRTC2,WRTC3為1,才能寫數(shù)據(jù)。寫完數(shù)據(jù)關(guān)閉軟鎖
TIMEWRITE_ON:
SETB SDA
SETB SCL
LCALL DELAY
CLR SDA
LCALL DELAY
CLR SCL
LCALL DELAY ;I2C START
MOV R6,#64H
LCALL SEND
MOV R6,#10H ;設(shè)置時鐘數(shù)據(jù)的內(nèi)部起始地址為10H
LCALL SEND
MOV R6,#80H ;置10H的WRTC1為1
LCALL SEND
CLR SDA
SETB SCL
LCALL DELAY
SETB SDA
LCALL DELAY ;I2C STOP
LCALL IICSTART ;具體程序同上I2C START,此處略
MOV R6,#64H ;發(fā)送時鐘SD2400的器件地址(寫)
LCALL SEND
MOV R6,#0FH ;設(shè)置時鐘數(shù)據(jù)的內(nèi)部起始地址為0FH
LCALL SEND
MOV R6,#84H ;置0FH的WRTC2。WRTC3為1
LCALL SEND
LCALL IICSTOP ;同上,I2CSTOP
SEND: MOV A, R6 ;發(fā)送一個字節(jié)
MOV R2,#08H
SEND1: MOV C,ACC。7
MOV SDA,C
LCALL DELAY
SETB SCL
LCALL DELAY
CLR SCL
LCALL DELAY ;SEND A BIT
RL A
DJNZ R2,SEND1
SETB SDA ;置輸入狀態(tài)
SETB SCL
LCALL DELAY
MOV C,SDA
JC ERROR
CLR SCL
LCALL DELAY
RET ;READ A BIT
ERROR: LJMP 0000H
2,寫2403的中斷控制寄存器以實現(xiàn)6:30輸出一個低電平
LCALL TIMEWRITE_ON
LCALL IICSTART
MOV R6,#64H ;發(fā)送時鐘SD2400的器件地址(寫)
LCALL SEND
MOV R6,#10H ;設(shè)置時鐘數(shù)據(jù)的內(nèi)部起始地址為10H
LCALL SEND
MOV R6,#92H ;ALARM
LCALL SEND
LCALL IICSTOP
LCALL IICSTART
MOV R6,#64H ;發(fā)送時鐘SD2400的器件地址(寫)
LCALL SEND
MOV R6,#0EH ;設(shè)置時鐘數(shù)據(jù)的內(nèi)部起始地址為0E
LCALL SEND
MOV R6,#06H ;報警允許小時,分鐘
LCALL SEND
LCALL IICSTOP
LCALL IICSTART
MOV R6,#64H ;發(fā)送時鐘SD2400的器件地址(寫)
LCALL SEND
MOV R6,#08H ;設(shè)置分鐘報警地址
LCALL SEND
MOV R6,#30H ;MINUTE
LCALL SEND
MOV R6,#06H ;HOUR
LCALL SEND
LCALL IICSTOP
LCALL TIMEWRITE_OFF
●結(jié)語
SD2403AP是一款高精度實時時鐘芯片,在此智能路燈控制器中發(fā)揮著重要的作用。其芯片可以廣泛用于消費(fèi)和工業(yè)領(lǐng)域的諸多平臺,如電子式電力測量儀(數(shù)字式電力表)、數(shù)碼相機(jī)、數(shù)碼攝像機(jī)、游戲機(jī)、DVD錄像機(jī)、便攜電話等產(chǎn)品
參 考 文 獻(xiàn)
[1] 沙占友,王彥朋,孟志永,單片機(jī)外圍電路設(shè)計,電子工業(yè)出版社,2003.1
[2] SD2403APIDATASHEET,深圳興威帆電子技術(shù)有限公司,2008
評論