STM8的SPI很奇怪啊

2019-07-19 21:52发布

stm8控制RFID芯片 PN512     用stm8的SPI与PN512通信  下面是读出各寄存器复位值的代码;
奇怪的是   正常打印出来的值应该是  4D 10 84 62   但是我现在打印出来的却是 80 4D 10 84 
不知道这个80是从哪里跑出来的  试过了很多次都是这样的结果。刚开始还以为是PN512坏了,
换另一个PN512  还是同样的结果   那可能就是软件里面有问题了,具体什么问题 请大家帮忙解答!!
[mw_shl_code=c,true] jc = ReadRawRC(DemodReg); //复位值4Dh UART1_SendByte(jc); jc = ReadRawRC(TxSelReg); //复位值10h UART1_SendByte(jc); jc = ReadRawRC(RxThresholdReg); //复位值84h UART1_SendByte(jc); jc = ReadRawRC(0x1c); //复位值62h UART1_SendByte(jc); void SPI_PN512(void) {     CLK_PeripheralClockConfig(CLK_PERIPHERAL_SPI,ENABLE);     SPI_DeInit();     GPIO_DeInit(GPIOA);     GPIO_DeInit(GPIOB);     GPIO_DeInit(GPIOC);               GPIO_Init(GPIOA,GPIO_PIN_3,GPIO_MODE_OUT_PP_HIGH_FAST); //NSS        GPIO_Init(GPIOD,GPIO_PIN_3,GPIO_MODE_OUT_PP_HIGH_FAST); //SCK        GPIO_Init(MF522_RST_PORT,MF522_RST,GPIO_MODE_OUT_PP_HIGH_FAST);  //RST     GPIO_Init(GPIOC,GPIO_PIN_6,GPIO_MODE_OUT_PP_HIGH_FAST);      GPIO_Init(GPIOC,GPIO_PIN_7,GPIO_MODE_IN_PU_NO_IT );       GPIO_WriteHigh(GPIOA,MF522_NSS);               SPI_Init(SPI_FIRSTBIT_MSB,SPI_BAUDRATEPRESCALER_2,SPI_MODE_MASTER,     SPI_CLOCKPOLARITY_LOW,SPI_CLOCKPHASE_1EDGE,SPI_DATADIRECTION_2LINES_FULLDUPLEX,     SPI_NSS_SOFT,0x07);     SPI_Cmd(ENABLE);       }  [/mw_shl_code] [mw_shl_code=c,true] [/mw_shl_code]
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。