HI ERIK AND DHAVAL SOLANKI
PLEASE CLARIFY ME THE MISTAKE I VE DONE HERE, THIS THE PROGRAM TO INTERFACE FOUR SEVENSEGMENT LEDS (MULTIPLEXING), IN THIS PROGRAM THE DATA WHICH IS STORED IN 90H,91H,92H,93H ARE NOT DISPLAYED IN PORT P1. PLEASE GIVE ME YOUR SUGGESTION, NO ERROR DISPLAYED BUT THE ANSWER IS NOT OBTAINED
;COUNTER PROGRAM ORG 0000H LJMP MAIN ;------------------------------------- ORG 000BH LJMP T_I_CALC ;------------------------------------- MAIN: MOV R2,#0 MOV R3,#0 MOV R4,#0 MOV R5,#0 MOV TMOD,#00000001B MOV TL0,#00H MOV TH0,#0FFH MOV IE,#10000010B SETB TR0 ;------------------------------------- L1: MOV P2,#11110111B MOV R0,93H MOV P1,@R0 MOV P2,#11111011B MOV R0,92H MOV P1,@R0 MOV P2,#11111101B MOV R0,91H MOV P1,@R0 MOV P2,#11111110B MOV R0,90H MOV P1,@R0 ; MOV R6,#0FFH ;L10: MOV R7,#0FFH ;L9: DJNZ R7,L9 ; DJNZ R6,L10 SJMP L1 ;-------------------------------------- T_I_CALC: CLR TF0 CLR TR0 CLR A MOV A,R2 MOV DPTR,#DAT MOVC A,@A+DPTR MOV 90H,A INC R2 CJNE R2,#10,L4 L4: JC L5 MOV R2,#0 CLR A MOV A,R3 MOVC A,@A+DPTR MOV 91H,A INC R3 CJNE R3,#10,L6 L6: JC L5 MOV R3,#0 CLR A MOV A, R4 MOVC A,@A+DPTR INC R4 MOV 92H,A CJNE R4,#10,L7 L7: JC L5 MOV R4,#0 CLR A MOV A,R5 MOVC A,@A+DPTR INC R5 MOV 93H,A CJNE R5,#10,L8 L8: JC L5 LJMP MAIN ;--------------------------------------- L5: MOV TL0,#000H MOV TH0,#0FFH SETB TR0 RETI ;----------------------------------------- DAT: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;----------------------------------------- END ;-----------------------------------------
Erik, i ve gone through the bible you ve given named:80C51_FAM_ARCH_1 page no:3 sentence is: The next 16 bytes above the register banks form a block of bit-addressable memory space. The 80C51 instruction set includes a wide selection of single-bit instructions, and the 128 bits in this area can be directly addressed by these instructions. The bit addresses in this area are 00H through 7FH. my question: named:The 8051 Microcontroller and Embedded Systems Using Assembly and C-2nd-ed author:muhammad ali mazidi page no:24(avalable in pdf format) in this book the author has told the memory location from 20h to 2fh is alone bit addressable ... and rest of the memory is byte addressable then.. then which one is correct?