打印

【分享】spi通信

[复制链接]
2000|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
胡斯哲|  楼主 | 2013-12-28 20:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MSP430F149的两个USATR 在实现SPI通讯,采用中断接受

#include  <msp430x14x.h>

void main(void)
{
  volatile unsigned int i;

  WDTCTL = WDTPW + WDTHOLD;                 // Stop watchdog
  P1OUT = 0x00;                             // P1.0 setup for LED output
  P1DIR |= 0x03;
  P5SEL |= 0x0E;                            // P5.1,2,3 SPI option select
  P5OUT &= ~0x01;
  P5DIR |= 0x01;                            //Reset Slave
  P5DIR &= ~0x01;
  U1CTL = CHAR + SYNC + MM + SWRST;         // 8-bit, SPI, Master
  U1TCTL = CKPL + SSEL1 + STC;              // Polarity, SMCLK, 3-wire
  U1BR0 = 0x02;                             // SPICLK = SMCLK/2
  U1BR1 = 0x00;
  U1MCTL = 0x00;
  ME2 |= USPIE1;                            // Module enable
  U1CTL &= ~SWRST;                          // SPI enable
  IE2 |= URXIE1 + UTXIE1;                   // RX and TX interrupt enable

  for (i = 0xFFF; i > 0; i--);              // Time for slave to ready
  _BIS_SR(LPM0_bits + GIE);                 // Enter LPM0 w/ interrupt
}

#pragma vector=USART1RX_VECTOR
__interrupt void SPI1_rx (void)
{
  P1OUT = RXBUF1;                           // RXBUF1 to TXBUF1
}

#pragma vector=USART1TX_VECTOR
__interrupt void SPI1_tx (void)
{
  unsigned int i;

  i = P1IN;
  i = i >> 4;
  TXBUF1 = i;                               // Transmit character
}


相关帖子

沙发
waitingf| | 2013-12-28 21:31 | 只看该作者
这个这个。。。怎么连点注释都没有呢

使用特权

评论回复
板凳
zxf0168| | 2013-12-28 21:43 | 只看该作者
后面有注释啊,可惜是英文的

使用特权

评论回复
地板
胡斯哲|  楼主 | 2013-12-28 22:11 | 只看该作者
waitingf 发表于 2013-12-28 21:31
这个这个。。。怎么连点注释都没有呢

英文的  这个还可以看到的吧:)

使用特权

评论回复
5
胡斯哲|  楼主 | 2013-12-28 22:12 | 只看该作者
zxf0168 发表于 2013-12-28 21:43
后面有注释啊,可惜是英文的

偷偷告诉你  这是为了搞任务 网上搞的。。。  
是pudn上下载的。。。

使用特权

评论回复
6
angerbird| | 2013-12-28 23:01 | 只看该作者
这个是直接的利用单片机自带的SPI总线模块的啊

使用特权

评论回复
7
angerbird| | 2013-12-28 23:02 | 只看该作者
不过一般的用的最多的就是模拟的SPI 总线的

使用特权

评论回复
8
someonewho| | 2013-12-28 23:12 | 只看该作者
悟空兄的代码很实用 如果在代码前附上说明就好啦

使用特权

评论回复
9
胡斯哲|  楼主 | 2013-12-28 23:25 | 只看该作者
angerbird 发表于 2013-12-28 23:01
这个是直接的利用单片机自带的SPI总线模块的啊

是的啊

使用特权

评论回复
10
胡斯哲|  楼主 | 2013-12-28 23:26 | 只看该作者
someonewho 发表于 2013-12-28 23:12
悟空兄的代码很实用 如果在代码前附上说明就好啦

看看寄存器  这个代码不难

使用特权

评论回复
11
justbybing| | 2013-12-28 23:32 | 只看该作者
是啊 代码就要结合着寄存器看的

使用特权

评论回复
12
zxf0168| | 2013-12-29 21:13 | 只看该作者
胡斯哲 发表于 2013-12-28 22:12
偷偷告诉你  这是为了搞任务 网上搞的。。。  
是pudn上下载的。。。

好吧,PUDN没积分,下载不下来

使用特权

评论回复
13
胡斯哲|  楼主 | 2013-12-29 21:15 | 只看该作者
zxf0168 发表于 2013-12-29 21:13
好吧,PUDN没积分,下载不下来

pudn不需要积分   

使用特权

评论回复
14
u880| | 2013-12-29 21:56 | 只看该作者
该怎么拯救英语不好的人

使用特权

评论回复
15
胡斯哲|  楼主 | 2013-12-29 21:58 | 只看该作者
u880 发表于 2013-12-29 21:56
该怎么拯救英语不好的人

呵呵  正因为有有道才活到现在。。。

使用特权

评论回复
16
huigoushang| | 2013-12-29 22:02 | 只看该作者
准备下载看看 很有用的样子

使用特权

评论回复
17
zxf0168| | 2013-12-29 22:33 | 只看该作者
胡斯哲 发表于 2013-12-29 21:15
pudn不需要积分

怎么不需要啊,我记得是必须上传多少文件

使用特权

评论回复
18
胡斯哲|  楼主 | 2013-12-29 22:36 | 只看该作者
zxf0168 发表于 2013-12-29 22:33
怎么不需要啊,我记得是必须上传多少文件

上传5个文件就够了了   以后全部免费下载了

使用特权

评论回复
19
zxf0168| | 2013-12-29 22:41 | 只看该作者
胡斯哲 发表于 2013-12-29 22:36
上传5个文件就够了了   以后全部免费下载了

好吧,我竟然不知道,我就上传了一个,貌似

使用特权

评论回复
20
地瓜patch| | 2013-12-29 22:45 | 只看该作者
哈哈,楼主很诚实啊

使用特权

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

本版积分规则

个人签名:读书喝茶,不争朝夕

141

主题

1431

帖子

6

粉丝