C 错误:不存在匹配的asm模式
在ASCET中用C编写(ASCET类似于SIMULINK) 外部源是C 错误:不存在匹配的asm模式,c,assembly,simulink,low-level,C,Assembly,Simulink,Low Level,在ASCET中用C编写(ASCET类似于SIMULINK) 外部源是 asm uint32 HAL_GetTB(uint16 reg); uint32 HAL_GetTimeBase(uint16 reggy); uint32 HAL_GetTimeBase(uint16 reggy) { uint32 rtn; rtn = HAL_GetTB(reggy); return(rtn); } asm uint32 HAL_GetTB(uint16 reg) {
asm uint32 HAL_GetTB(uint16 reg);
uint32 HAL_GetTimeBase(uint16 reggy);
uint32 HAL_GetTimeBase(uint16 reggy)
{
uint32 rtn;
rtn = HAL_GetTB(reggy);
return(rtn);
}
asm uint32 HAL_GetTB(uint16 reg)
{
GetTimebaseVal:
mfspr r3, reg
}
标题为:
#define TIMEBASELOWREAD 268
#define TIMEBASEHIGHREAD 269
extern uint32 HAL_GetTimeBase(uint16 reggy);
C代码的两个模块是:
uint32 TBH;
TBH = HAL_GetTimeBase(TIMEBASEHIGHREAD);
return(TBH);
以及:
在飞思卡尔MPC5674(定点)上使用对象基控制器算法和隐式实现对RTA(活动)进行编码
我对这个错误感到非常困惑
asm uint32 HAL_GetTB(uint16 reg)
{
GetTimebaseVal:
mfspr r3, reg
}
应该是:
asm uint32 HAL_GetTB(uint16 sprreg)
{
% reg sprreg;
! "r3"
GetTimebaseVal:
mfspr r3, sprreg
}
asm uint32 HAL_GetTB(uint16 sprreg)
{
% reg sprreg;
! "r3"
GetTimebaseVal:
mfspr r3, sprreg
}