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.
Write 0x10 to AUXR at the beginning of your STARTUP.A51 file.
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.