We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi, If I have bad luck, MCON has change, when I remove the power supply. MCON: 0xc8 -> 0xcc, if it happent dyring a RTC access. And now I can't start my applikation before I have changed the MCON through the command line interface. I have tried to set the MCON register in the beginning of the program, through "Timed Access", but in vain! Can anyone tell me whats wrong with the code?
//DS5000T 32K TA = 0x0AA; // timed access TA = 0x55; MCON |= 0x02; // paa=1 TA = 0x0AA; // timed access TA = 0x55; MCON = 0xD8; // partition adr 6000h
Hi dfg gdf! I put this code in the end of the startup.a51 file to set Mcon=88. PUSH PSW MOV TA,#0AAH MOV TA,#055H ORL MCON,#02H MOV MCON,#088H MOV TA,#0AAH MOV TA,#055H ANL MCON,#0FDH POP PSW MOV EA,C END Remember to set the right xdata start adr. in the beginning of the file. XDATASTART EQU 4000H Pih Lung
Hi, I copied the set of codes, but it didn't work well. a) Should I place the set of codes before or after "LJMP ?C_START" b) for "MOV EA, C", what is C, I gave it the value of #1. Is this correct ? c) In addition, I placed the following at the start of my codes MCON DATA 0C6H TA DATA 0C7H PSW DATA 0D0H d) Earlier, you mentioned "void set_mcon (void)", should this be invoked in the main() or commented out? Thanks.
hi a,b) right after LJMP ?C_START SETB C JBC EA,?C0158 CLR C ?C0158: PUSH PSW MOV TA,#0AAH MOV TA,#055H ORL MCON,#02H MOV MCON,#088H MOV TA,#0AAH MOV TA,#055H ANL MCON,#0FDH POP PSW MOV EA,C END c) my defines EA EQU 0xAF PSW EQU 0xD0 TA EQU 0xC7 MCON EQU 0xC6 d) commented out /Pih Lung
Hi, Thanks for your complete codes, but it still doesn't work. I debug and step-through. It seems that placing the MCON codes after LJMP ?C_START, will skip directly to main() without executing MCON codes. I tried to place it in other areas but no success. Am I missing something, for example should I configure additional parameters in the project options or should I use particular optimizations or memory model ? I am using small memomry model for Compact code rom size, optmization is 9, favour speed. Hope to hear from you. TIA
Hi My Project options: Device: use BL51 linker, not the LX51. Target: large, large, no OS. BL51 locate: code 0x0-0x3fff, xdata 0x4000-0x7fff code optim:6 or 8, but it has nothing to do with setting ECE2 in MCON, same thing with startup.a51 code. In the beginning of main() EA=0; MCON &= ~ECE2; EA=1; or set the original state of EA. This work for me! Pih Lung