社区导航

 

搜索
查看: 3283|回复: 13

这些宏,在哪儿定义的 ?

[复制链接]

1万

TA的帖子

33

TA的资源

版主

Rank: 6Rank: 6

发表于 2013-3-8 18:18 | 显示全部楼层 |阅读模式
为了掌握MSP430F5529,看了它的例程,当对某个宏的定义追踪时,追到了MSP430F5529.h文件这里就断了踪影了,
例如:
SFR_16BIT(ADC12CTL0);

再往下找ADC12CTL0是怎么定义的,就找不到了,使用ctrl + H ,也没有办法找到关键词ADC12CTL0,

特发求助,谢谢解答

回复

使用道具 举报

27

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2013-3-8 20:47 | 显示全部楼层
路过,顶一下

回复

使用道具 举报

1万

TA的帖子

33

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2013-3-10 11:18 | 显示全部楼层
例如,
P1OUT ^= 0x01;
这一句中的P1OUT,可以找到:
#define P1OUT                  (PAOUT_L)
这时知道SFR_8BIT(PAOUT_L)

再往下找PAOUT_L这个宏,就找不到了。

从定义可以知道PAOUT_L是一个地址,但这个关键词“PAOUT_L”在哪儿定义呢?

是编译器定义的吗?

[ 本帖最后由 dontium 于 2013-3-10 11:20 编辑 ]

回复

使用道具 举报

452

TA的帖子

5

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

发表于 2013-3-11 10:19 | 显示全部楼层
这个宏对应的值应该是这个寄存器的实际物理地址,应该在编译器的系统头包含路劲下的哪个头文件里面。你可以从工程文件里面一直一层一层的往下查,要么在编译器的相关头文件的文件下下去找,一定找得到。

点评

当查到如上面提到的PAOUT_L时,再右键查它的定义,就查不到了,在CMD文件中也没有发现  详情 回复 发表于 2013-3-11 14:03

回复

使用道具 举报

1万

TA的帖子

33

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2013-3-11 14:03 | 显示全部楼层

回复 4楼 lr2131 的帖子

当查到如上面提到的PAOUT_L时,再右键查它的定义,就查不到了,在CMD文件中也没有发现

回复

使用道具 举报

1万

TA的帖子

33

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2013-3-21 22:29 | 显示全部楼层

顶!

搞430的高手们,解答一下吧

回复

使用道具 举报

6056

TA的帖子

13

TA的资源

裸片初长成(初级)

Rank: 10Rank: 10Rank: 10

荣誉会员勋章

发表于 2013-3-24 14:42 | 显示全部楼层
  1. #define P1OUT_              (0x0021u)  /* Port 1 Output */
  2. DEFC(   P1OUT             , P1OUT_)
  3. #define DEFC(name, address) __no_init volatile unsigned char name @ address;
复制代码

回复

使用道具 举报

6056

TA的帖子

13

TA的资源

裸片初长成(初级)

Rank: 10Rank: 10Rank: 10

荣誉会员勋章

发表于 2013-3-24 14:45 | 显示全部楼层
东老大,这个我是翻的“msp430g2553.h”文件。
你那个估计是5系列的。

点评

谢谢你。 在msp430g5529.h文件中,找不到象你七楼那一句: #define P1OUT_ (0x0021u) 形式的定义  详情 回复 发表于 2013-3-24 16:51

回复

使用道具 举报

1万

TA的帖子

33

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2013-3-24 16:51 | 显示全部楼层

回复 8楼 wstt 的帖子

谢谢你。

在msp430g5529.h文件中,找不到象你七楼那一句:
#define P1OUT_              (0x0021u)
形式的定义

点评

我待会用带IDE的电脑找的看看,找到了再回复你。  详情 回复 发表于 2013-3-24 17:08

回复

使用道具 举报

6056

TA的帖子

13

TA的资源

裸片初长成(初级)

Rank: 10Rank: 10Rank: 10

荣誉会员勋章

发表于 2013-3-24 17:08 | 显示全部楼层

回复 9楼 dontium 的帖子

我待会用带IDE的电脑找的看看,找到了再回复你。

回复

使用道具 举报

6056

TA的帖子

13

TA的资源

裸片初长成(初级)

Rank: 10Rank: 10Rank: 10

荣誉会员勋章

发表于 2013-3-24 17:12 | 显示全部楼层
  1. #define DEFCW(name, address) __no_init union \
  2. { \
  3.   struct \
  4.   { \
  5.     volatile unsigned char  name##_L; \
  6.     volatile unsigned char  name##_H; \
  7.   }; \
  8.   volatile unsigned short   name; \
  9. } @ address;
  10. #define DEFCW(name, address) sfrbw name, name##_L, name##_H, address;
  11. sfrbw macro name, name_L, name_H, address;
  12. sfrb name_L = address;
  13. sfrb name_H = address+1;
  14. sfrw name   = address;
  15.       endm
  16. #define  PAOUT_              (0x0202u)  /* Port A Output */
  17. DEFCW(   PAOUT             , PAOUT_)
复制代码
我把相关代码贴出来了,不知直接定义的,也是用了结构体。

点评

这是哪个文件?  详情 回复 发表于 2013-3-24 20:42

回复

使用道具 举报

1万

TA的帖子

33

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2013-3-24 20:42 | 显示全部楼层

回复 11楼 wstt 的帖子

这是哪个文件?

点评

就是5529.h那个  详情 回复 发表于 2013-3-24 21:10

回复

使用道具 举报

1772

TA的帖子

0

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

发表于 2013-3-24 20:54 | 显示全部楼层
我在看430G2553例程的时候也出现过这类似的问题,最后也没有解决,现在看看

回复

使用道具 举报

6056

TA的帖子

13

TA的资源

裸片初长成(初级)

Rank: 10Rank: 10Rank: 10

荣誉会员勋章

发表于 2013-3-24 21:10 | 显示全部楼层

回复 12楼 dontium 的帖子

就是5529.h那个

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

关闭

站长推荐上一条 /5 下一条

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2020-2-20 01:50 , Processed in 0.388269 second(s), 18 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表