打印

如何定义MSP430管脚

[复制链接]
2460|24
手机看帖
扫描二维码
随时随地手机跟帖
沙发
juventus9554|  楼主 | 2009-12-21 22:10 | 只看该作者
就像51
可以用
Sfr P2.1 = P2^1;

为什么MSP430我用如下语句,
#define SPI_CLK P2OUT.6;

SPI_CLK = 0;
....
SPI_CLK =1;

却不行呢?

使用特权

评论回复
板凳
贾君鹏子| | 2009-12-21 22:12 | 只看该作者
430不可以位操作

使用特权

评论回复
地板
午夜粪车| | 2009-12-21 22:53 | 只看该作者
因为430不可以位操作,所以P2OUT.6 这个写法是错误的。只能字节或字操作。

使用特权

评论回复
5
beny5566| | 2009-12-21 22:54 | 只看该作者
可以吧,
用宏定义

使用特权

评论回复
6
liliang9554| | 2009-12-21 22:57 | 只看该作者
如果你想对P2.6进行复位或置位只能这样:

P2OUT|=0x40       //p2.6=1
P2OUT&=~0x40      //p2.6=0

使用特权

评论回复
7
beny5566| | 2009-12-22 12:44 | 只看该作者

使用特权

评论回复
8
hulan1985| | 2009-12-22 23:11 | 只看该作者
用位域可以实现

使用特权

评论回复
9
hulan1985| | 2009-12-22 23:11 | 只看该作者
具体也给你吧
#define SPI_CLK IO_BIT_ALIAS(&P2OUT,6)

SPI_CLK = 0;

SPI_CLK =1;

使用特权

评论回复
10
贾君鹏子| | 2009-12-23 15:41 | 只看该作者
具体也给你吧
#define SPI_CLK IO_BIT_ALIAS(&P2OUT,6)

SPI_CLK = 0;

SPI_CLK =1;
hulan1985 发表于 2009-12-22 23:11

原来用位域也可以操作

使用特权

评论回复
11
午夜粪车| | 2009-12-23 15:51 | 只看该作者
用io430xxx.h,里面对位作了定义。

使用特权

评论回复
12
liliang9554| | 2009-12-23 16:06 | 只看该作者
在对应芯片的头文件里面都有定义,不需要再定义了吧

使用特权

评论回复
13
贾君鹏子| | 2009-12-23 22:33 | 只看该作者
IAR都定义好了啊

使用特权

评论回复
14
thf2008| | 2009-12-24 00:09 | 只看该作者
学习了

使用特权

评论回复
15
hulan1985| | 2009-12-24 18:34 | 只看该作者
用位域可以实现,很简单的

使用特权

评论回复
16
juventus9554|  楼主 | 2009-12-24 18:38 | 只看该作者
用位域可以实现,很简单的
hulan1985 发表于 2009-12-24 18:34

嗯,我比较了一下,觉得确实很简单,谢谢啊

使用特权

评论回复
17
五谷道场| | 2009-12-24 18:53 | 只看该作者
IAR都定义了啊

使用特权

评论回复
18
午夜粪车| | 2009-12-24 18:58 | 只看该作者
430不可以位操作,只能字节或字操作。

使用特权

评论回复
19
swolf| | 2009-12-24 19:02 | 只看该作者
430不可以位操作,只能字节或字操作。
午夜粪车 发表于 2009-12-24 18:58

不能那么说吧,
看你怎么操作。

使用特权

评论回复
20
hulan1985| | 2009-12-28 22:48 | 只看该作者
都说了可以位域实现啊

使用特权

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

本版积分规则

900

主题

12190

帖子

3

粉丝