TI中文支持网
TI专业的中文技术问题搜集分享网站

UCD3138 变量赋值问题?

请问有人遇到过给 位域结构体 赋值无效的问题吗?
问题描述:定义了一个 外部变量extern 位域结构体,给它赋值,然后调试查看寄存器值,发现寄存器值没有赋进去?
开发环境:CCS_6.2
编译器版本:TI v5.2.4
芯片器件:UCD3138A  ARM7内核

下面附 位域结构体 的定义、赋值 代码:

定义:
typedef struct
{
        Uint16 loop_switch :1;
        Uint16 adc12_presample:1;
        Uint16 sync_on:1;
        Uint16 on_off_toggled:1;
        Uint16 exit_iloop_timer:1;
        Uint16 exit_iloop_timer_lock:1;

        Uint16 res :10;
}CUSTOM_FLAG;
EXTERN CUSTOM_FLAG flag;

赋值:
        flag.loop_switch = 1;
        flag.sync_on = 1;
        flag.on_off_toggled = 1;
        flag.adc12_presample = 1;
        flag.exit_iloop_timer = 1;
        flag.exit_iloop_timer_lock = 1;

调试查看后各位域值为 0

下面附 位域结构体 的定义、赋值、调试查看寄存器值 三张截图:

Johnsin Tao:

Hi建议在E2E美国网站上问一下。TI数字电源代码都是不公开的,所以讨论得比较少。

Liding Yuan:

回复 Johnsin Tao:

好的,感谢回复!

赞(0)
未经允许不得转载:TI中文支持网 » UCD3138 变量赋值问题?
分享到: 更多 (0)