【无标题】

TI DSP 新旧版本寄存器调用方法的对比分析

分析方法:分别对两种形式的代码的汇编代码进行比较,查看差异

  1. 驱动库模式:

1757 HWREGH(WD_BASE + SYSCTL_O_WDCR) |= SYSCTL_WD_CHKBITS | SYSCTL_WDCR_WDDIS;
00b405: F5A97029 MOV @AL, *(0:0x7029)
00b407: 5068 ORB AL, #0x68
00b408: F4A97029 MOV *(0:0x7029), @AL

驱动库模式,采用整体赋值的方式,
① 需要先将寄存器WDCR(地址:0x7029)的数据取出,放到AL
② 将所要赋值的数据与元数据进行按位或(ORB),放入AL
③ 将新数据从AL写到原来的寄存器WDCR(地址:0x7029)

  1. 寄存器模式:
    对寄存器进行某位赋值,实际上只需要1条指令,采用的时OR指令,
    67 CpuSysRegs.PCLKCR13.bit.ADC_C = 1;
    00800c: 1A3C0004 OR @0x3c, #0x0004

总结,通常采用HWREGH 都使用了两条以上指令,先将绝对地址放入寄存器,再操作

而按位操作通常只需要1条指令

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HBisnotme

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值