會員登陸
帳號:

密碼:

記住我



忘記密碼?

現在註冊!
網站導航
最新下載
訪問統計 (自2012/5/3)


正在流覽:   1 名訪客





請問SPI 接收失敗
新會員
註冊日期:
2016/06/02 17:10
所屬群組:
註冊會員
文章: 5
等級: 1; EXP: 34
HP : 0 / 8
MP : 1 / 24
離線
我是使用dspic33fj06gs202 當主端
nRF24L01當從端
而dspic從MISO卻抓不到資料
但從示波器上可以看到從nRF傳至MISO資料是對的
也有在MISO做拉升

想問關於SPI_MASTER設定、SPI_傳接、腳位設定 是否是錯的
//----------------------------------
void Init_SPI_Master (void)
{

IFS0bits.SPI1IF = 0; // Clear the Interrupt flag
IEC0bits.SPI1IE = 0; // Disable the interrupt

SPI1CON1bits.DISSCK = 0; // Internal serial clock is enabled
SPI1CON1bits.DISSDO = 0; // SDOx pin is controlled by the module
SPI1CON1bits.MODE16 = 0; // Communication is a byte (8 bits)
SPI1CON1bits.MSTEN = 1; // Master mode enabled

SPI1CON1bits.SMP = 0; // Input data is sampled at the middle of data output time
SPI1CON1bits.CKE = 1; // Serial output data changes on transition from
// active clock state to Idle clock state
SPI1CON1bits.CKP = 0; // Idle state for clock is a low level;

//clock = Fcy/20
SPI1CON1bits.PPRE = 0b10;//Primary prescale 4:1
SPI1CON1bits.SPRE = 0b011;//Secondary prescale 5:1

SPI1STATbits.SPIEN = 1; // Enable SPI module
// Interrupt Controller Settings
IFS0bits.SPI1IF = 0; // Clear the Interrupt flag
IEC0bits.SPI1IE = 0; // Disable the interrupt
}
//------------------

unsigned char SPI_Send(unsigned char data)
{

SPI1BUF = data; // Put command into SPI buffer
while (!SPI1STATbits.SPIRBF);
// Wait for the transfer to finish
return SPI1BUF; // Save the read value

}
//------------------

void Init_Port(void)
{
// RP2 SS_Bar
TRISBbits.TRISB2 = 0; //RP2
RPOR1bits.RP2R = 0b01001; //RP2 SS_Bar
LATBbits.LATB2 = 1;

// RB1 CE
TRISBbits.TRISB1 = 0; //RP1 CE
LATBbits.LATB1 = 0;

// RP4 SCK (Master )
RPOR2bits.RP4R = 0b01000; //Set RP4 as CLK -output
RPINR20bits.SCK1R = 0b00100;//Set RP4 as CLK -intput

// RP9 SDO (MOSI )
RPOR4bits.RP9R = 0b00111; //RP9 MOSI

// RP10 SDI (MISO )
RPINR20bits.SDI1R = 0b01010;//RP10 MISO

//Output
TRISAbits.TRISA4 = 0;
LATAbits.LATA4 = 0;
}
//------------------


還請大家幫助 謝謝

2016/12/22 21:40
轉換PDF檔 列印


Re: 請問SPI 接收失敗
資深會員
註冊日期:
2014/04/12 20:35
所屬群組:
註冊會員
文章: 209
等級: 13; EXP: 48
HP : 0 / 312
MP : 69 / 2852
離線
試著量看看 CS腳位有無動作?

2016/12/26 11:59
轉換PDF檔 列印






無法在此發表文章
可以在此觀看文章
無法回覆文章
無法編輯自己的文章
無法刪除自己的文章
無法發起投票調查
無法在此投票
無法上傳附加檔案
無法不經審核直接發表文章

[進階搜尋]


搜尋
線上教學影片
網頁捷徑
教育訓練
其它網站連結
電話: 02-25000405
產品技術問題產品技術支援專線:0800-717718 台北02-25088600 新竹03-5778366 Ext. 8600 高雄07-2137830 MicrochipDIRECT 專線: 07-2137830
Powered by XOOPS © 2001-2012 The XOOPS Project