CodeWarriorV7.0 assembler mnemonic error

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

CodeWarriorV7.0 assembler mnemonic error

4,064 次查看
FredT
Contributor II
I've just installed the new CodeWarrior for ColdFire V7.0 and I have imported an CodeWarrior for ColdFire V6.4 project. I'm using a MCF52235

Now I'm having a compilation error saying: "unknown assembler instruction mnemonic". Here is the line in trouble:

movec d0,cacr

It doesn't seem to accept the "cacr". The project was working fine on CodeWarrior for ColdFire V6.4.

Fred Talbot
标签 (1)
标记 (1)
0 项奖励
回复
4 回复数

1,744 次查看
FredT
Contributor II
I've tried to comment the line in error and everything is working fine when I'm in debug mode, but when I'm not, the device doesn't work properly.

Fred Talbot


Message Edited by FredT on 2008-01-07 04:47 PM
0 项奖励
回复

1,744 次查看
FredT
Contributor II
Here is my function that doesn't compile:

asm void mcf5xxx_wr_cacr(unsigned long) { /* Set VBR */
    move.l  4(SP),D0
//   .long   0x4e7b0002      /* movec d0,cacr */
   movec d0,cacr
   nop
    
   rts
}

In the mcf5xxx_lo.s file, in the CodeWarrior V7.0 repertory, I found this assembler definition of the same function:

mcf5xxx_wr_cacr:
_mcf5xxx_wr_cacr:
    move.l  4(SP),D0
    .long   0x4e7b0002      /* movec d0,cacr */
    nop
    rts

Both seems to do the same operation in differents ways. I've tried both of them and nether seems to works, except when I'm in debug mode, the second one works fine, but it doesn't matter since everything is working fine in debug mode when I comment the line with error.

Fred Talbot
0 项奖励
回复

1,744 次查看
FredT
Contributor II
When I program the device and start the device with the debugger, it's working fine, but when I try to reset the device and start the debugger later, I'm having a "exception vector name: Adress Error".

Look like the RAM is filled when I'm trying to print on the UART port because it's cause an exception that tried to print something to, so it loop.
0 项奖励
回复

1,744 次查看
FredT
Contributor II
Problem is the 52235 doesn't have cache and the cacr register isn't implemented.
0 项奖励
回复