stm32 串口3 为什么每次只能收到4个字节?谁有例程发我一份?我用的红牛板。

2019-03-23 18:21发布


复制代码stm32 串口3 为什么每次只能收到4个字节?(要求收8个)为什么?或者谁有例程发我一份?我用的红牛板。
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
mynameisbill2
1楼-- · 2019-03-24 21:23
 精彩回答 2  元偷偷看……
mynameisbill2
2楼-- · 2019-03-24 23:44
ienglgge 发表于 2015-12-30 21:30
例程本身就应该可以接收啊。主要就是中断接收函数部分。把数组存入数组,计数器加一。数组稍微大一点。主程 ...
  1. void USART3_IRQHandler(void)
  2. {
  3.         if(USART_GetITStatus(USART3,USART_IT_RXNE)==SET)
  4.         {
  5.                 USART_ClearITPendingBit(USART3,USART_IT_RXNE);
  6.                 hh[0] = USART_ReceiveData(USART3);
  7.                 LCD_ShowNum(105,60,hh[0],3);
  8.                 if(USART_ReceiveData(USART3)==0x08)
  9.                 flag++;                        
  10.                 hh[1]=hh[0]+1;                               
  11.                 USART_ITConfig(USART3, USART_IT_RXNE, DISABLE);               
  12.                 Delay2(1);
  13.         }
  14.         if(USART_GetITStatus(USART3, USART_IT_TXE) != RESET)
  15.         {
  16.                 USART_ITConfig(USART3, USART_IT_TXE, DISABLE);
  17.                 GPIO_ResetBits(GPIOF, GPIO_Pin_11);

  18.                 Delay2(1);
  19.         }
  20. }
复制代码

这是例程里的中断服务函数,只能接受单字节,要怎么改改才能接受多字节呢?我改了改没改成功,您能具体说说吗?
mynameisbill2
3楼-- · 2019-03-25 00:19
suoma 发表于 2015-12-30 22:52
1、你是单字节发送吗?
2、你的buffer多大?

发送没问题,但是接受只能最多接收4个字节,我是用串口助手发的,buffer是64字节
ienglgge
4楼-- · 2019-03-25 04:56
 精彩回答 2  元偷偷看……

一周热门 更多>