PIC单片机的SPI2BUF传入数值不对怎么办

unsignedcharSPI_RW(unsignedchardata){SPI2BUF=data;while(!IFS2bits.SPI2IF);IFS2bits.SP... unsigned char SPI_RW(unsigned char data)
{

SPI2BUF = data;
while(!IFS2bits.SPI2IF);
IFS2bits.SPI2IF = 0;
temp_data = SPI2BUF;
return SPI2BUF;

}
我传入的是0xcf,但是SPI2BUF我在调试的时候发现是0x5F怎么办
展开
 我来答
百度网友445a78443
2018-04-06 · TA获得超过113个赞
知道小有建树答主
回答量:121
采纳率:85%
帮助的人:78.7万
展开全部
_SDI2R = 9; /* SDI2 MISO -> RP9 */
_RP8R = 10; /* SDO2 MOSI -> RP8 */
_RP31R = 11; /* SCK2 SCLK -> RP31 */
SPI2CON1 = 0x012F; //SCLK = 3.2MHz
// SPI2CON1 = 0x013B; //SCLK = 8MHz
SPI2CON2 = 0x0000;
SPI2STATbits.SPIEN = 1;
uint8 SPI_ReadWriteByte(uint8 dat)
{
SPI2BUF = dat;
while(!SPI2STATbits.SPIRBF);
return (uint8)SPI2BUF;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式