berton.ivan.001

Issues with command ADDW and SUBW (?)

Discussion created by berton.ivan.001 on Jun 30, 2018
Latest reply on Jul 7, 2018 by Clive Two.Zero

Hi everybody.

I use STM8S-Discovery Board with STM8S105C6 and ST Visual Develop v4.3.10, Windows 10.

 

If I use command ADDW or SUBW this way:

------------------------------------------------------------------------------

Example 1


ldw           X,#400                  ;Load 400 into X


addw       X,#100                   ;Add direct 100 to word X


test          cpw X,#500            ;Compare X with 500
                 jreq test               ;Jump to "test" if X=500

------------------------------------------------------------------------------

it works properly. The content X is 500.

 

But if I do this

------------------------------------------------------------------------------

Example 2

 

k                equ       $0365     ;RAM register is called k


mov          k,#100                  ;Move 100 into k
ldw           X,#400                  ;Load 400 into X


addw       X,k                         ;Add k to word X


test          cpw X,#500            ;Compare X with 500
                 jreq test               ;Jump to "test" if X=500

------------------------------------------------------------------------------

it doesn´t work. The content of X is not 500.

SUBW behave the same way.

 

According the programming manual PM004 Doc ID 13590 Rev3, page 78 and 152,

Example 2 should actually work. Issue or do I miss something?

 

Thanks for reply.

Ivan 

Outcomes