我有一个电容测量模块(可以将测量的数据通过USart发送出来)、一个f4开发板还有一个串口助手,,,我将电容测量模块的输出数据和f4开发板的USart2链接,然后f4开发板的USart1和电脑相连,,电容测量模块是一直向开发板发送数据的,而我不想让开发板USart2接收到的数据都传给电脑,当串口助手给开发板USart1发送字符1的时候,开发板再将接到的数据通过USart1发送到串口助手。
void USART1_IRQHandler(void)
{
if(USART_GetFlagStatus(USART1,USART_IT_RXNE))
{
get=USART_ReceiveData(USART1); //就是将rxne标志位清零没有其他意义
USART_SendData(USART1,res); //res是全局变量, res就是USart2得到的数据发送到串口助手;
}
}
void USART2_IRQHandler(void)
{
if(USART_GetFlagStatus(USART1,USART_IT_RXNE))
{
res=USART_ReceiveData(USART2);
}
}
其本质意思就是串口助手给开发板USart1发送一次要发送数据的信号,,USart1就将USart2接受的数据发送给串口助手一次。
比如,,USart2接受的数据是50个每秒,,而我在某一个时刻通过串口助手给USart1发送采集一次的信号,USart1接到串口助手的信号的时候就给串口助手发送一次数据。
希望表达明白了,,
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>