初级会员

- 积分
- 124
- 金钱
- 124
- 注册时间
- 2018-3-26
- 在线时间
- 288 小时
|
请教一下大家,串口接收的数据无法实现实时性,只能读取一次,怎么办?就是第一次传输数据可以完成读取显示的工作,改变数据值,屏幕数据就不动了,这段程序应该如何修改?
- void USART1_IRQHandler(void) //′®¿ú1ÖD¶Ï·tÎñ3ìDò
- {
- if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)
- {
- RxBuffer1[i++]=USART_ReceiveData(USART1);
- }
- USART1_rev_data(RxBuffer1);
- }
- void USART1_rev_data(u8 RxBuffer[])
- {
-
- if((0x16==RxBuffer1[0])&&(0x09==RxBuffer1[1])&&0x01==RxBuffer1[2]&&0xB5==RxBuffer1[11])
- {
- a=(RxBuffer1[3]<<8)+RxBuffer1[4];
- b=(RxBuffer1[5]<<8)+RxBuffer1[6];
- sprintf(buf,"%d",a);
- // printf("%d",a);
- sprintf(buf,"%d",b);
- LCD_ShowxNum(56,50,a/10,5,16,0);
- LCD_ShowxNum(56,80,b/10,5,16,0);
- LED0=0;
- }
- }
复制代码
|
|