完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
目前在使用坛主的开发板写点小程序,顺便学习一下STM32,因为通讯协议的需要通过串口输出定格式数据,见代码如下:
u8 SendBuffer[8]; u8 SendCount; for (SendCount = 0; SendCount<8; SendCount++) {printf("%02x", SendBuffer[SendCount]);} SendBuffer内数据为:02,00,00,00,00,00,24,03 如何能保证PC端串口接收到数据为:0200000000002403呢?我试了多种printf参数最接近的就是如上代码所诉,可是还是达不到要求输出为200000000002403,盼望有高人指点。 |
|
相关推荐
7个回答
|
|
|
|
|
|
而且依上情况显示的也是ASCII模式显示的,如果我要求实际以HEX显示则更困难了。以HEX显示则为:32 30 30 30 30……
|
|
|
|
软件中不一定好处理,因为第一位不是一定为02的。
|
|
|
|
|
|
|
|
|
|
|
|
1. 如果只判断首字节的前导0,只要判断SendBuffer[0]是否>0x0f,下面的这段就行了,
2. 如果去除整个数组所有的前导0,增加1个变量,从第1个不为0的数组开始就行了 for (SendCount = 0; SendCount<8; SendCount++) { if(SendCount) printf("%02x", SendBuffer[SendCount]); else if(SendBuffer[SendCount]>0x0f) printf("%02x", SendBuffer[SendCount]); else printf("%1x", SendBuffer[SendCount]); } |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1718 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1600 浏览 1 评论
1040 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
716 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1654 浏览 2 评论
1905浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
699浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
548浏览 3评论
570浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
535浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-13 04:33 , Processed in 1.286492 second(s), Total 90, Slave 74 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号