一个困扰了很久的问题,关于430的头文件

[复制链接]
 楼主| aptx4869670 发表于 2014-8-3 10:36 | 显示全部楼层 |阅读模式
这个问题是关于分频的设置的,ACLK分频和SMCLK分频都是寄存器上两位控制的,为啥他们的掩码形式不一样呢,为啥不统一成第一种或者第二种的样子
#define DIVA_0              (0x00)   /* ACLK Divider 0: /1 */
#define DIVA_1              (0x10)   /* ACLK Divider 1: /2 */
#define DIVA_2              (0x20)   /* ACLK Divider 2: /4 */
#define DIVA_3              (0x30)   /* ACLK Divider 3: /8 */

#define DIVS0               (0x02)   /* SMCLK Divider 0 */
#define DIVS1               (0x04)   /* SMCLK Divider 1 */
yirongfu 发表于 2014-8-3 11:39 | 显示全部楼层
可能只是编程人员的习惯,也为了跟一些例程能配套上。确实有些地方给人不统一规范的感觉。我也遇到过,例程编译不过,发现是一些宏定义不一致。
ar_m_cu 发表于 2014-8-3 12:39 | 显示全部楼层
因为数据域在寄存器中的位置不同
 楼主| aptx4869670 发表于 2014-8-3 15:51 | 显示全部楼层
ar_m_cu 发表于 2014-8-3 12:39
因为数据域在寄存器中的位置不同

谢了,能具体说说吗
 楼主| aptx4869670 发表于 2014-8-3 15:51 | 显示全部楼层
yirongfu 发表于 2014-8-3 11:39
可能只是编程人员的习惯,也为了跟一些例程能配套上。确实有些地方给人不统一规范的感觉。我也遇到过,例程 ...

嗯,也有可能,谢谢
dirtwillfly 发表于 2014-8-3 21:16 | 显示全部楼层
3楼正解
具体的和msp430的内部电路设计有关,硬件就是这样设计的
juky20080105 发表于 2014-8-4 16:12 | 显示全部楼层
前四个相当于字节操作。
后两个相当于位操作。
tty1 发表于 2014-8-5 18:00 | 显示全部楼层
aptx4869670 发表于 2014-8-3 15:51
谢了,能具体说说吗

很明显,ACLK的设置在第4、5位,SMCLK的设置在第1、2位
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

8

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部