Search This Blog

Showing posts with label Microcontroller. Show all posts
Showing posts with label Microcontroller. Show all posts

Friday, December 23, 2011

Program for setting date in RTC DS12887

; TURNING ON RTC
MOV R0, #10    ; REGISTER A ADDRESS IN R0
MOV A, #20H    ; 010 TO TURN ON RTC
MOVX @RO,A    ; SEND IT TO REGISTER A OF RTC


; SETTING TIME MODE
; AS DECIDED WE SET BCD, 24 HRS, DAYLIGHT SAVING
; MEANING SENDING 83H TO REGISTER B OF RTC
MOV R0, #11    ; REGISTER B ADDRESS IN R0
MOV A, #83H    ; FOR REASONS SITED ABOVE
MOVX @R0, A    ; SEND IT TO REGISTER B OF RTC

; TURNING ON AND SETTING TIME MODE REMAINS SAME
; DURING ALL SETTING THINGS

; SETTING THE DATE
; LETS GET SOME THINGS CLEAR
; 07 - DAY OF MONTH
; 08 - MONTH
; 09 - YEAR
; FOR FULL TABLE SEE THE POST..

; SETTING DAY OF MONTH
MOV R0, #07    ; POINT TO THE DAY OF MONTH
MOV A, #20H    ; DAY = 20
MOVX @R0, A    ; SET DAY OF MONTH

; SETTING MONTH
MOV R0, #08    ; POINT TO MONTH
MOV A, #12H    ; MONTH = 12 = DECEMBER
MOVX @R0, A    ; SET THE MONTH

; SETTINH YEAR
MOV R0, #09    ; POINT TO YEAR
MOV A, #11H    ; FOR 2011
MOVX @R0, A    ; SET THE YEAR

; REGISTER B
MOV R0, #11    ; POINT TO REGISTER B
MOV A, #03    ; D7 = 0 TO ALLOW UPDATE
MOVX @R0, A    ; SEND IT TO REGISTER B


END

Program for Setting time in RTC DS12887

; TURNING ON RTC
MOV R0, #10    ; REGISTER A ADDRESS IN R0
MOV A, #20H    ; 010 TO TURN ON RTC
MOVX @RO,A    ; SEND IT TO REGISTER A OF RTC


; SETTING TIME MODE
; AS DECIDED WE SET BCD, 24 HRS, DAYLIGHT SAVING
; MEANING SENDING 83H TO REGISTER B OF RTC
MOV R0, #11    ; REGISTER B ADDRESS IN R0
MOV A, #83H    ; FOR REASONS SITED ABOVE
MOVX @R0, A    ; SEND IT TO REGISTER B OF RTC


; SETTING THE TIME
; LET GET ONE THING CLEAR
; 0 - SECONDS
; 2 - MINUTES
; 4 - HOURS
; FOR INFO RELATED ABOVE SEE THE POST...


; SETTING SECONDS
MOV R0, #0    ; POINT TO SECONDS ADDRESS
MOV A, #SSH    ; SECONDS = SS MEANS PUT ANY VALUE
; CAREFULL SECONDS 0 - 60 AND IN BCD
; SO SS = 00H,02H......09H,10H,11H,.......29H,30H,...,59H
; H IS MUST FOR BCD
MOVX @R0, A    ; SET SECONDS


; SETTING MINUTES
MOV R0, #02    ; POINT TO MINUTES ADDRESS
MOV A, #MM    ; MINUTES = MM MEANS PUT ANY VALUE
; CAREFULL MINUTES 0 - 60 AND IN BCD
; SO MM = 00H,02H......09H,10H,11H,.......29H,30H,...,59H
; H IS MUST FOR BCD
MOVX @R0, A    ; SET MINUTES


; SETTING HOURS
MOV R0, #04    ; POINT TO HOURS ADDRESS
MOV A, #HH    ; HOURS = HH
; CAREFULL HOURS HERE IS IN 24 HOURS FORMAT
; SO HH CAN BE 1,2,...., 14,15......,23 NOT OUTSIDE THIS
; H IS MUST FOR BCD
MOVX @R0, A    ; SET HOURS


; REGISTER B
MOV R0, #11    ; POINT TO REGISTER B ADDRESS
MOV A, #03    ; D7 = 0 TO ALLOW UPDATE
MOVX @R0, A    ; SEND IT TO REGISTER B OF RTC

END

Connection of XTAL1 and XTAL2

Okay this post is little late. But its better late than never. XTAL ports provide clock pulses to the 8051.this can be achieved in 2 ways.


XTAL CONNECTION WITH CRYSTAL
Generally quartz crystal is connected to inputs XTAL1 and XTAL2. This crystal also requires 2 capacitors. One side of each capacitor is connected to the ground. Usually value of capacitor can be 30pF or 33pF. Why capacitor are required in the connection?? Well the answer is directly connected to the basic circuitry of an oscillator.


 
XTAL CONNECTION WITH EXTERNAL OSCILLATOR CIRCUIT
Another way to provide frequency to the microcontroller is through external oscillator circuit. The single output is connected to one of the XTAL port while other is left unconnected. (do not ground the unconnected XTAL port).

 The connection is same way for both microcontroller and microprocessor.

DC motor control with optoisolator

Dc motor control with optoisolator.
Protection of control circuit is provided by the optoisolator. The motor and optoisolator uses separate power connection which is very necessary. As separate power supplies allows use of high voltage motors.
A decoupling capacitor should be used across the motor so as to reduce the electromagnetic induction created by motor.