Keil™, An ARM® Company

Technical Support

RTX51 TINY: PROBLEMS WITH EARLY CYGNAL SILICON


Information in this article applies to:

  • C51 Version 7.01 and Earlier

QUESTION

Are there any problems using Cygnal devices with the RTX51 Tiny RTOS?

ANSWER

Yes. Some early versions of Cygnal devices required at least one instruction to execute after selecting a new register bank in the PSW before using one of the single-byte MOV Rn, A instructions. Such a construct is found in the RTX51 Tiny kernel. Source code is provided so you can easily correct this problem. In the RTX51TNY.A51 source file, you must change the following code:

TIMERINT:       CALL    RETINT          ; Enable Interrupts again.
                MOV     ?RTX_SAVEPSW,PSW
                MOV     PSW,#?RTX_REGISTERBANK
                MOV     saveacc,A

to this:

TIMERINT:       CALL    RETINT          ; Enable Interrupts again.
                MOV     ?RTX_SAVEPSW,PSW
                MOV     PSW,#?RTX_REGISTERBANK
                MOV     saveacc,ACC

RTX51 Tiny Version 2 will be updated to avoid this sequence of instructions.

Note: This problem does not exist in later revisions of the Cygnal silicon.

Last Reviewed: Tuesday, April 20, 2004


Did this article provide the answer you needed?
 
Yes
No
Not Sure