【问题标题】:MSP430 ports accessMSP430 端口访问
【发布时间】:2015-06-19 20:13:59
【问题描述】:

我正在使用 msp430 开发一个项目。如何读取特定端口接收的值并将其分配给变量?喜欢 P1.5 吗?我已经将 P1DIR 设置为输入。 我做到了:

data = (P1IN & SDA_TMP); // Where SDA_TMP is a defined prep

【问题讨论】:

  • SDA_TMP 的值是多少?
  • 你所说的“明确的准备”是什么意思?
  • SDA_TMP 是:#define SDA_TMP (0x0020)

标签: c ports msp430


【解决方案1】:

类似这样的:

const bool data = (P1IN & (1 << 5)) != 0;

这使用按位和 (&amp;) 来屏蔽第五位(其值为 1 &lt;&lt; 5),然后与零进行比较。如果设置了第 5 位,data 中的结果将为true,否则为false

另请参阅this tutorial 了解更多信息。

【讨论】:

  • 好的,谢谢。这就是我一直在寻找的......我正在用 C 编码,所以我将用 unsigned char 替换 const bool
猜你喜欢
  • 2012-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-06
  • 2020-12-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多