智能车制作

标题: 关于MC9S12XS单片机SPI模块的数据发送和接收 [打印本页]

作者: 妖精小七    时间: 2015-4-30 09:26
标题: 关于MC9S12XS单片机SPI模块的数据发送和接收
我现在有一块16位的XS128单片机,我想用它的SPI模块实现对陀螺仪的数据的接收,再通过串口SCI模块发送出来,有没有哪位大神做过相关的研究,求指教!!
这两天调试了一下程序,SPI的发送能实现,但是总是没有接收,单步调试的时候SPISR寄存器里面的SPIF总是无法置位,这是为什么呀?
跪求大侠帮忙,感激不尽!!

作者: 妖精小七    时间: 2015-4-30 14:27
拜托拜托!
作者: Sixeleven    时间: 2015-12-23 15:35
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */
unsigned char jieshou;
//**********延时函数***************
void delay(int z) {
  int x,y;
    for(z;z>0;z--)
      for(x=110;x>0;x--)
        for(y=25;y>0;y--);
}
//***************spi初试化******************
void spi_int(void) {
SPI0BR=0X44;
SPI0CR1=0x5e;
}
void send_data(unsigned char data) {
while(!SPI0SR_SPTEF);
SPI0DR=data;
}
unsigned char recesive_data(void) {
while((SPI0SR&0x80)==0);
return SPI0DRL;
}
void main(void) {
  /* put your own code here */
jieshou=0;
DDRB=0XFF;
PORTB=0X00;
spi_int();

        EnableInterrupts;


  for(;;) {
    send_data(0xff);
    jieshou=recesive_data();
    PORTB=jieshou;
    delay(500);
  }
}




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2