如何定义MSP430管脚

[复制链接]
3620|24
 楼主| juventus9554 发表于 2009-12-21 22:09 | 显示全部楼层 |阅读模式

在C语言如何定义MSP430管脚呢?
 楼主| 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 这个写法是错误的。只能字节或字操作。
beny5566 发表于 2009-12-21 22:54 | 显示全部楼层
可以吧,
用宏定义
liliang9554 发表于 2009-12-21 22:57 | 显示全部楼层
如果你想对P2.6进行复位或置位只能这样:

P2OUT|=0x40       //p2.6=1
P2OUT&=~0x40      //p2.6=0
beny5566 发表于 2009-12-22 12:44 | 显示全部楼层
hulan1985 发表于 2009-12-22 23:11 | 显示全部楼层
用位域可以实现
hulan1985 发表于 2009-12-22 23:11 | 显示全部楼层
具体也给你吧
#define SPI_CLK IO_BIT_ALIAS(&P2OUT,6)

SPI_CLK = 0;

SPI_CLK =1;
贾君鹏子 发表于 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

原来用位域也可以操作
午夜粪车 发表于 2009-12-23 15:51 | 显示全部楼层
用io430xxx.h,里面对位作了定义。
liliang9554 发表于 2009-12-23 16:06 | 显示全部楼层
在对应芯片的头文件里面都有定义,不需要再定义了吧
贾君鹏子 发表于 2009-12-23 22:33 | 显示全部楼层
IAR都定义好了啊
thf2008 发表于 2009-12-24 00:09 | 显示全部楼层
学习了
hulan1985 发表于 2009-12-24 18:34 | 显示全部楼层
用位域可以实现,很简单的
 楼主| juventus9554 发表于 2009-12-24 18:38 | 显示全部楼层
用位域可以实现,很简单的
hulan1985 发表于 2009-12-24 18:34

嗯,我比较了一下,觉得确实很简单,谢谢啊
五谷道场 发表于 2009-12-24 18:53 | 显示全部楼层
IAR都定义了啊
午夜粪车 发表于 2009-12-24 18:58 | 显示全部楼层
430不可以位操作,只能字节或字操作。
swolf 发表于 2009-12-24 19:02 | 显示全部楼层
430不可以位操作,只能字节或字操作。
午夜粪车 发表于 2009-12-24 18:58

不能那么说吧,
看你怎么操作。
hulan1985 发表于 2009-12-28 22:48 | 显示全部楼层
都说了可以位域实现啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

900

主题

12190

帖子

3

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