搜索
bottom↓
回复: 0

[求助]MSP430 SPI主机哪里有错误呢,有注释

[复制链接]

出0入0汤圆

发表于 2013-1-23 10:31:22 | 显示全部楼层 |阅读模式
本帖最后由 CodeMonkey 于 2013-1-23 11:28 编辑

我现在的错误是,MISO悬空,也会有信号.

  1. #include <msp430.h>

  2. void SPIInit(){
  3.   P1OUT = 0x00;                             // P1重置
  4.   P1DIR |= BIT0 + BIT3;                     // 状态灯和从机选择位
  5.   P1SEL = BIT1 + BIT2 + BIT4;
  6.   P1SEL2 = BIT1 + BIT2 + BIT4;             //SOMI SIMO SPI_CLK
  7.   UCA0CTL0 |= UCMSB + UCMST + UCSYNC;
  8.   /*
  9.    * EN28J60 时序
  10.    * CS Low 片选
  11.    * SCK Low 不活跃
  12.    * 上升沿输入,下降沿输出.
  13.    * MSB 优先
  14.    * MSP430 主机模式
  15.    * UCSYNC 同步模式
  16.    */
  17.   UCA0CTL1 |= UCSSEL_1;
  18.   UCA0BR0 |= 0x02;
  19.   UCA0BR1 = 0x00;//发送波特率
  20.   UCA0MCTL = 0x00;                             //  不调制
  21.   UCA0CTL1 &= ~UCSWRST;                     // USCI 设置完成
  22.   IE2 |= UCA0RXIE;                          // 开启接收中断
  23. }

  24. void SysInit(){
  25.   DCOCTL = 0x00;
  26.   BCSCTL1 = XT2OFF + DIVA_3;
  27.   BCSCTL2 = DIVM_3+DIVS_3;
  28.   BCSCTL3 = 0x00;
  29.   WDTCTL = WDTPW + WDTHOLD;                 // 关闭看门狗
  30. }

  31. void SendData(unsigned char d){
  32.   P1DIR |= BIT5;                           // 片选
  33.   P1OUT |= BIT5;
  34.   P1OUT &= ~BIT5;
  35.   UCA0TXBUF = d;
  36.   P1OUT |= BIT5;
  37. }
  38. int main(void)
  39. {
  40.   SysInit();
  41.   SPIInit();
  42.   SendData(0xff);
  43.   __bis_SR_register(GIE);       // 开启中断,CPU不休眠.
  44. }

  45. #pragma vector=USCIAB0RX_VECTOR
  46. __interrupt void USCIA0RX_ISR(void)
  47. {
  48.   volatile unsigned int i;

  49.   while (!(IFG2 & UCA0TXIFG));              // 即使需要接收数据,也要等待发送完成

  50.   if (UCA0RXBUF == 0x05)                // 比较数据,如果返回0xaa,就是发送成功.
  51.     P1OUT |= BIT0;                          // 正确,亮灯'
  52.   else
  53.     P1OUT &= ~BIT0;                         // 错误,不亮灯
  54. }

复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-20 22:37

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表