Hi I am using atmel controller with 64k Flash& 1.7k Xdata.Now my code lengh is only24k,xdata is 846 bytes.Suppose I add a new valiables in xdata means i felt lot problems (ie)i am getting jumbled data in my LCD if remove that variable then output is OK.Please help me to overcome this problem.
Hi Thanks a lot for your reply.In startup51,Where to add this value(instead of thatI write in my micro controller initialization routine AUXR = 0x10; is it OK).Hereby I attached Srartup51 code.Please help me. ///////////////////////////////////////////// $NOMOD51 IDATALEN EQU 80H XDATASTART EQU 0H XDATALEN EQU 0H PDATASTART EQU 0H PDATALEN EQU 0H IBPSTACK EQU 0 IBPSTACKTOP EQU 0FFH+1 XBPSTACK EQU 0 XBPSTACKTOP EQU 0FFFFH+1 PBPSTACK EQU 0 PBPSTACKTOP EQU 0FFFFH+1 PPAGEENABLE EQU 0 PPAGE EQU 0 PAGE_SFR DATA 0A0H ACC DATA 0E0H B DATA 0F0H SP DATA 81H DPL DATA 82H DPH DATA 83H AUXR DATA 8EH NAME ?C_STARTUP ?C_C51STARTUP SEGMENT CODE ?STACK SEGMENT IDATA MOV AUXR,#10H RSEG ?STACK DS 1 EXTRN CODE (?C_START) PUBLIC ?C_STARTUP CSEG AT 0 ?C_STARTUP: LJMP STARTUP1 RSEG ?C_C51STARTUP STARTUP1: IF IDATALEN <> 0 MOV R0,#IDATALEN - 1 CLR A IDATALOOP: MOV @R0,A DJNZ R0,IDATALOOP ENDIF IF XDATALEN <> 0 MOV DPTR,#XDATASTART MOV R7,#LOW (XDATALEN) IF (LOW (XDATALEN)) <> 0 MOV R6,#(HIGH (XDATALEN)) +1 ELSE MOV R6,#HIGH (XDATALEN) ENDIF CLR A XDATALOOP: MOVX @DPTR,A INC DPTR DJNZ R7,XDATALOOP DJNZ R6,XDATALOOP ENDIF IF PPAGEENABLE <> 0 MOV PPAGE_SFR,#PPAGE ENDIF IF PDATALEN <> 0 MOV R0,#LOW (PDATASTART) MOV R7,#LOW (PDATALEN) CLR A PDATALOOP: MOVX @R0,A INC R0 DJNZ R7,PDATALOOP ENDIF IF IBPSTACK <> 0 EXTRN DATA (?C_IBP) MOV ?C_IBP,#LOW IBPSTACKTOP ENDIF IF XBPSTACK <> 0 EXTRN DATA (?C_XBP) MOV ?C_XBP,#HIGH XBPSTACKTOP MOV ?C_XBP+1,#LOW XBPSTACKTOP ENDIF IF PBPSTACK <> 0 EXTRN DATA (?C_PBP) MOV ?C_PBP,#LOW PBPSTACKTOP ENDIF MOV SP,#?STACK-1 ; EXTRN CODE (?B_SWITCH0) ; CALL ?B_SWITCH0 ; init bank mechanism to code bank 0 LJMP ?C_START END
I'd stick it here: STARTUP1: MOV AUXR,#10H IF IDATALEN <> 0
Hi Stefan Duncanson,thanks a lot.We solved our problem.