
单片机用printf发送串口数据
TI=1;printf("item%d.bco=612800",row);sendend();TI=1;printf("item%d.bco=10400",exrow);...
TI=1;
printf("item%d.bco=612800",row);sendend();
TI=1;
printf("item%d.bco=10400",exrow);sendend();
我在助手只能接收到61280 1040。如果程序中改成61280 1040,就只能接收到6128 104.为什么? 展开
printf("item%d.bco=612800",row);sendend();
TI=1;
printf("item%d.bco=10400",exrow);sendend();
我在助手只能接收到61280 1040。如果程序中改成61280 1040,就只能接收到6128 104.为什么? 展开
1个回答
展开全部
printf中%d输出的最大即是2的32次方个长度;
2^32=42949 6729 6
你的61280 10400 已经超出了这个范围。
所以只能显示61280 1040
你的数要在42949 6729 6之内,如果需要把61280 10400 全部显示出来,很简单
把%d改为%ld
因为%ld输出的最大即是2的64次方个长度,即2^64=18446744073709551616

2025-01-03 广告
要从电脑的一个串行口接收数据并将其从另一个串行口发送出去,你可以使用以下步骤:1. 确定你要使用的两个串行口。在大多数计算机上,串行口通常被称为COM1、COM2等。确保你了解每个串行口的名称或编号。2. 编写一个程序来读取来自一个串行口的...
点击进入详情页
本回答由迪凯特科技(北京)有限公司_提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询