I m using AT89C51 for digital clock, with external clock.
i want to set the port0-1-2 for parallel data, and port3 for serial data
the problem is to define the port as input or Output
Master Clock ------------------ port0 for input port1 for output port2 for output port3 for output (to send serial data)
Slave Clock ------------------ port0 for output port1 for output port2 for output port3 for input (to receive data)
please tell me how can i set the ports for input and/or as outpur
Thanks to support me, ports0-3 are full 8-bit ports.
I m sending my source code please inform me any types of errors
I shell be very thankful to you.
org 00h ;Set up Timer 1 MOV IE, #0 ; Disable all interrupt MOV TMOD, #020h ; Timer 1: Mode 2 (8-bit reload) MOV TH1, #230d ; Reload value for 1201, SMOD = 0 MOV TL1, #230d ; Make first time-out correct ANL PCON, #07fh ; To make SMOD =0 ;Set up serial ports MOV SCON, #50h ; Timer 1 : Mode 1 (vari baud) and set receive enable SETB TR1 ; Start timer 1 mov r1, #6d mov r2, #91d mov r3, #63d mov r4, #63d MainLoop: setb p0.7 mov r7, #90d SubLoop: mov r6, #90d InnerSpot: jmp DisplayData InnerSpot1: djnz r6, InnerSpot djnz r7, SubLoop clr p0.7 mov r7, #90d SubLoop1: mov r6, #90d InnerSpot12: jmp DisplayData InnerSpot11: djnz r6, InnerSpot12 djnz r7, SubLoop1 jmp MainLoop DisplayData: mov C, p2.7 orl C, p0.7 mov b, r1 mov p2, b JNC Skip1 mov b, #254d mov p1, b Skip1: mov b, #255d mov p1, b mov b, r2 mov p2, b JNC Skip2 mov b, #253d mov p1, b Skip2: mov b, #255d mov p1, b mov b, r3 mov p2, b JNC Skip3 mov b, #251d mov p1, b Skip3: mov b, #255d mov p1, b mov b, r4 mov p2, b JNC Skip4 mov b, #247d mov p1, b Skip4: mov b, #255d mov p1, b jnb RI, CheckReturnPoint clr RI mov a, sbuf cjne a, #246d, CountCountinus mov r0, #0d CheckReturnPoint: mov c, p0.7 jc InnerSpot1 jnc InnerSpot11 CountCountinus: inc r0 DigOne: cjne r0, #1d, DigTwo mov r1, a Jmp DisplayData DigTwo: cjne r0, #2d, DigThree mov r2, a Jmp DisplayData DigThree: cjne r0, #3d, DigFour mov r3, a Jmp DisplayData DigFour: cjne r0, #4d, CheckReturnPoint mov r0, #0d mov r4, a Jmp DisplayData End
from tyhe above ;Set up serial ports
MOV SCON, #50h ; Timer 1 : Mode 1 (vari baud) and set receive enable SETB TR1 ; Start timer 1 mov r1, #6d mov r2, #91d mov r3, #63d mov r4, #63d MainLoop: