各位版上先進好
小弟現在使用STC12C5A60S2的晶片
想透過SPI的方式寫入資料到MAX3100
並且透過UART的方式傳回給電腦看
也就是 8051→MAX3100→MAX3100的TX接PC的RX→透過TERMINAL看資料
可是TERMINAL都收不到資料
以下是程式碼
麻煩看一下是哪裡有錯呢?
#include "STC12C5A60S2.h"
sbit SCLK = P1^7;
sbit MISO = P1^6;
sbit MOSI = P1^5;
sbit SPISS = P0^0;
#define MASTER
void spi(unsigned int dat );
void MAX3100init(unsigned int dat);
void main()
{
MAX3100init(0xc08b); //irda模式 9600bit/s 振盪器3.6864MHZ
while(1)
{
spi(0x8080); //發送資料到TX端
} }
void MAX3100init(unsigned int dat)
{
spi(dat);
}
void spi(unsigned int dat)
{ unsigned char i = 0;
unsigned int k;
k=dat;
SPISS=0; //選擇從機
for(i=0;i<16;i++)
{
SCLK=0;
if(k & 0x8000)
{
MOSI=1 ;
}
else
{
MOSI=0;
}
SCLK=1;
k=k<<1;
}
SPISS=1;
}