很不容易调试通了STM32模拟SPI,已经能够读取外置AD的数据了(经示波器验证读取数据正确),但是我想把读到的数据通过串口发送出去,在电脑上用串口调试程序看显示结果。但是输出是一串00 00 00 00 00......串口是没有问题的,通过很多方法他都是这样,很无助啊串口配置什么的都没有问题,如果各位觉得配置中我可能忽略什么可以提醒下。 请各位帮忙看看,感激不尽。 下面是我的接收和发送代码:接收到的数据应该是0x00CA,我怀疑是我的接收储存出了问题,只存取了高8位数据。 while(1) { GPIO_SetBits(GPIOC , GPIO_Pin_1); GPIO_SetBits(GPIOE , GPIO_Pin_0); Delay(3); GPIO_ResetBits(GPIOE , GPIO_Pin_0); Delay(13); for(size=0 ; size != buffsize ; size++) { GPIO_ResetBits(GPIOC , GPIO_Pin_1); Delay(1); Tx_Buffer = Tx_Buffer > 8); while(USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET); USART_SendData(USART1 , USART_TxBuffer ); } |
RE:STM32模拟SPI接收的数据不能发送
回复:STM32模拟SPI接收的数据不能发送
只看这段代码不能解决问题。你可以通过仿真来判断是不是真的接收到了数据,你通过示波器只是能看到数据的波形,但是你能确定你接收到数据了吗?
我用串口调试程序可以看到,RX是在一直增加的,而且通过示波器波形的幅度可以判断那是数据
RE:STM32模拟SPI接收的数据不能发送
RE:STM32模拟SPI接收的数据不能发送
回复:STM32模拟SPI接收的数据不能发送