串口2每次接收数据量最大为256字节,求原因

2019-10-15 17:51发布

根据原子哥例程进行配置寄存器,通过无线模块进行串口通信,向模块发送512字节,只能接收256字节,应该不是无限模块方面问题,求分析可能原因~~~

[mw_shl_code=c,true]unsigned int i_num2 = 0; void USART2_IRQHandler(void) { if(USART2->SR&(1<<5)) { rec = USART2->DR; Write_byte(i_num2,rec); i_num2++; } } 通过液晶屏实时显示i_num2数值[/mw_shl_code]

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
龙之谷
1楼-- · 2019-10-15 19:44
大意了,看手册发现好像单次发送字节数最大256字节,联系技术人员证实确实是此原因,如发送字节大需要加延时。
--------------------------------------------------
整篇只有我在自问自答,以此终结此帖子,给以后如有同样问题的人一个思考方向吧!
龙之谷
2楼-- · 2019-10-16 00:09
好吧,补充一下,不能排除任何器件原因,在主函数发送512字节,电脑端接收到的也是256字节,也是无语了

unsigned int t1=0,t2=0;

                for(t1=1;t1<3;t1++)
{
for(t2=0;t2<256;t2++)
{
USART2->DR = t1*t2%256;
while((USART2->SR&0X40)==0);
delay_us(5);
}
}
正点原子
3楼-- · 2019-10-16 02:19
谢谢分享...
shui00419
4楼-- · 2019-10-16 04:11
我也遇到同样的问题,多谢楼主,看来要想增加每次传输的字节数还得想别的办法了
我不是萌妹子
5楼-- · 2019-10-16 06:36
 精彩回答 2  元偷偷看……
yuzeyuan1
6楼-- · 2019-10-16 09:55
我不是萌妹子 发表于 2016-10-27 11:35
char 不是256个么

哪里有写char

一周热门 更多>