Jumat, 27 Juni 2014
AN-0191 Sistem Alarm Rumah berbasis MMS dilengkapi dengan Camera Interface
Pada diagram alir tersebut terdapat dua aliran, yang pertama adalah program utama yang bekerja mendeteksi kondisi-kondisi sensor. Saat salah satu sensor mendeteksi ada obyek atau kebakaran maka program akan langsung mengirimkan foto dalam bentuk MMS beserta teks yang menunjukkan informasi sensor apa yang aktif sehingga pengguna dapat mengetahui jenis sensor yang aktif dari MMS yang diterima di HP.
Diagram alir kedua adalah interupsi serial yang mendeteksi pesan SMS yang dikirim oleh pengguna melalui HP dan diterima oleh SIM5216. Pesan ini diteruskan ke DST-51 dan apabila pesan tersebut berisi SMS “ambilfoto” maka DST-51 akan memerintahkan SIM5216 untuk mengirimkan foto. Bagian ini digunakan apabila pengguna ingin melihat kondisi melalui camera setiap saat.
Agar sistem yang dirangkai dapat bekerja sesuai diagram alir tersebut maka program atau source code perlu diisikan ke dalam DST-51 terlebih dahulu.
Lebih detail mengenai cara untuk download program ke DST-51 dapat dilihat di AN0160.
LISTING PROGRAM
$MOD51
CSEG
DeviceID EQU 057h ;ID Telemeter
PowerKey Bit P1.0
CTS Bit P1.2
RTS Bit P1.3
SIMVDD Bit P3.7 ;belum tahu
Indicator Bit P1.7
SensorSmoke Bit P2.2
SensorInfra1 Bit P2.3
SensorInfra2 Bit P2.4
SensorInfra3 Bit P2.5
SensorSonar Bit P2.6
SetPointSensorSuhu EQU 80h
DSEG
Org 36H
PTR: Ds 2
PTR2: Ds 2
PTR3: Ds 2
RAM_ID: Ds 1
RAM_HPServer: Ds 15
RAM_OperatorNumber: Ds 10
TF0Counter: Ds 1
IndexSMS: Ds 1
IndexPerintah: Ds 1
CheckSum: Ds 1
PrescaleTimer: Ds 1
CounterHP: Ds 1
;
Flag3: Ds 1 ;Flag Serba guna
BufferSensTemp: Ds 5
BufferSensor: Ds 5
Status: Ds 1 ;Bit 0 = Flag Sensor Infra 1
;Bit 1 = Flag Sensor Infra 2
;Bit 2 = Flag Sensor Infra 3
;Bit 3 = Flag Sensor Smoke
;Bit 4 = Flag Sensor sonar
;Bit 5 = Flag Sensor suhu
;Bit 6 = Flag Sensor Infra 1 diproses
;Bit 7 = Flag Sensor Infra 2 diproses
Status2: Ds 1 ;Bit 0 = Flag Sensor Infra 3 diproses
;Bit 1 = Flag Sensor Smoke diproses
;Bit 2 = Flag Sensor Sonar diproses
;Bit 3 = Flag Sensor Suhu diproses
CSEG
Org 000H
Ljmp Start
Org 003H
ljmp intr0
Org 00Bh
Ljmp Timer0Interrupt
Org 013H
Ljmp INTR1
Org 023h
LJmp SerialInterrupt
Intr0:
Reti
INTR1:
Reti
;============================================
; Kalau Call Ready = GSM On
; Kalau 's' = koneksi dengan PC
PBDone:
DB 'PB DONE',0
TurnONGSM:
Clr PowerKey
Mov R7,#100
Lcall Delayx10mS
Setb PowerKey
TungguCommandBerikut:
Lcall TungguCommand
Mov DPTR,#PBDone
Mov R0,#BufferPerintah
Lcall CompareRAMnTabel
Jc TungguCommandBerikut
Ljmp GSMSudahON ;
TurnONGSM2:
LJmp TurnONGSM
CompareRAMnTabel:
Mov B,@R0
Inc R0
Mov A,#00
Movc A,@A+DPTR
Jz RAMdanTabelCocok
Inc DPTR
Clr C
Subb A,B
Jnz RAMTidakCocok
Ljmp CompareRAMnTabel
RAMdanTabelCocok:
Clr C
Ret
RAMTidakCocok:
Setb C
Ret
Start:
Lcall Init_Serial
Mov Status,#0FFh
Mov Flag3,#0FFh
Mov DPTR,#ID
Lcall DPTRSEE16bit
Cjne A,#DeviceID,SetDef
Ljmp NoDefault
SetDef:
Lcall SetDefault
NoDefault:
Lcall Init_Serial ;Inisial Serial 11.5200
Clr RI
Clr TI
Jnb SIMVDD,TurnONGSM2 ;Cek GSM aktif?
GSMSudahON:
Mov R7,#100
Lcall Delayx10mS
Lcall ClearBufferPerintah ;Hapus data di buffer perintah
Lcall InitTimer ;Aktifkan Interupsi Timer
Mov PreScaleTimer,#200
Mov TF0Counter,#00 ;Set Prescaler
Setb EA
Setb ET0
Lcall InitGSM
Lcall DeleteAllSMS ;Hapus Semua SMS
Setb TR0
Clr RI
Clr TI
Ljmp $
;================================================================================
; END OF MAIN PROGRAM
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar