在C语言如何定义MSP430管脚呢?

[复制链接]
 楼主| jiahy 发表于 2011-6-17 15:54 | 显示全部楼层 |阅读模式
本帖最后由 永远的不知 于 2011-8-31 19:02 编辑

就像51
可以用
Sfr P2.1 = P2^1;
为什么MSP430我用如下语句,
#define SPI_CLK P2OUT.6;
SPI_CLK = 0;
....
SPI_CLK =1;
却不行呢?
shimx 发表于 2011-6-17 16:19 | 显示全部楼层
430不可以位操作
午夜粪车 发表于 2011-6-17 16:20 | 显示全部楼层
因为430不可以位操作,所以P2OUT.6 这个写法是错误的。只能字节或字操作。
Peter_zb 发表于 2011-6-17 17:13 | 显示全部楼层
430不可以进行位操作
五谷道场 发表于 2011-6-17 22:41 | 显示全部楼层
如果你想对P2.6进行复位或置位只能这样:

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

SPI_CLK = 0;

SPI_CLK =1;
dengdc 发表于 2011-6-17 23:03 | 显示全部楼层
具体也给你吧
#define SPI_CLK IO_BIT_ALIAS(&P2OUT,6)

SPI_CLK = 0;

SPI_CLK =1;
jiaxw 发表于 2011-6-17 23:02
原来用位域也可以操作
heweibig 发表于 2011-6-20 09:10 | 显示全部楼层
用io430xxx.h,里面对位作了定义。
wuhany 发表于 2011-6-20 09:12 | 显示全部楼层
在对应芯片的头文件里面都有定义,不需要再定义了吧
lizye 发表于 2011-6-20 09:28 | 显示全部楼层
IAR都定义好了啊
 楼主| jiahy 发表于 2011-6-20 09:32 | 显示全部楼层
本帖最后由 jiahy 于 2011-6-20 09:40 编辑

嗯,我比较了一下,觉得确实很简单,谢谢啊
 楼主| jiahy 发表于 2011-6-20 09:42 | 显示全部楼层
结贴了,多谢各位
您需要登录后才可以回帖 登录 | 注册

本版积分规则

862

主题

9861

帖子

4

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