打印

头文件宏定义

[复制链接]
543|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jlyuan|  楼主 | 2016-9-16 18:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本人初学MSP430 可能问题有些低级 不过真心求解答 CCSv5开发g2231
在msp430g2231.h中出现了如下宏
#define SELM0                  (0x40)         /* MCLK Source Select 0 */
#define SELM1                  (0x80)         /* MCLK Source Select 1 */

#define SELM_0                 (0x00)         /* MCLK Source Select 0: DCOCLK */
#define SELM_1                 (0x40)         /* MCLK Source Select 1: DCOCLK */
#define SELM_2                 (0x80)         /* MCLK Source Select 2: XT2CLK/LFXTCLK */
#define SELM_3                 (0xC0)         /* MCLK Source Select 3: LFXTCLK */
在选择MCLK时钟源时应该选择下面4个宏中的其中之一 但上面2个宏有什么作用呢?

相关帖子

沙发
yszong| | 2016-9-16 18:15 | 只看该作者
楼主可以看下宏定义的值,其实东西都是一样的。

使用特权

评论回复
板凳
午夜粪车| | 2016-9-16 18:16 | 只看该作者
之所以会有这样的定义,个人的猜测是下面4个是为了和User Guide符合,上面那个为了和以前版本兼容

使用特权

评论回复
地板
spark周| | 2016-9-16 18:18 | 只看该作者
这不难理解,SELM0代表是BCSCTL2的第6位,SELM1是第7位。代表的是寄存器的第位,而下面的宏定义是代表写入BCSCTL2的值

使用特权

评论回复
5
jlyuan|  楼主 | 2016-9-16 18:20 | 只看该作者
这个怎么说

使用特权

评论回复
6
spark周| | 2016-9-16 18:21 | 只看该作者
比如要选择DCO为MCLK的时钟源,就直接对写为BCSCTL2=SELM_0。

使用特权

评论回复
7
wyjie| | 2016-9-16 18:22 | 只看该作者
SELM1    SELM0
SELM_0    0              0
SELM_1    0              1
SELM_2    1              0
SELM_3    1              1

使用特权

评论回复
8
jlyuan|  楼主 | 2016-9-16 18:24 | 只看该作者
其实还是不大明白,我再琢磨琢磨吧,多谢了哈,结贴了先

使用特权

评论回复
9
豆腐块| | 2016-9-16 21:43 | 只看该作者
多读读手册和例程就明白了

使用特权

评论回复
10
i1mcu| | 2016-9-17 22:43 | 只看该作者
对应的宏定义去都一样的。

使用特权

评论回复
11
i1mcu| | 2016-9-17 22:45 | 只看该作者
可能是宏定义的习惯写法。

使用特权

评论回复
12
lefeng| | 2016-9-25 22:02 | 只看该作者
这两种表达方法是一个效果,楼主试试就知道了

使用特权

评论回复
13
baimiaocun2015| | 2016-9-25 22:17 | 只看该作者
这个都是根据pdf资料的进行定义的。

使用特权

评论回复
14
Snow7| | 2016-9-26 20:28 | 只看该作者
SELM0,SELM1控制两位,产生4种状态,SELM_0到SELM_3刚好

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

880

主题

12030

帖子

4

粉丝