RoboMaster

标题: 【RM2020 心得分享】青海大学河湟谷人 B板调试供电冲突处理 [打印本页]

作者: 富华    时间: 2019-12-22 17:42
标题: 【RM2020 心得分享】青海大学河湟谷人 B板调试供电冲突处理
本帖最后由 富华 于 2019-12-22 17:42 编辑

关于解决Robomaster B型开发板HAL库开发过程中遇到串口输出异常的办法一、前言
ST公司出了一个新的库——HAL库,此库基本与ST全系列芯片兼容。配套的软件CUBEMX生成初始化代码,省去了很多开发时间。
在Robomatser比赛中,大也推荐使用其来进行开发。在开发过程中,遇上了一些奇怪的bug。

二、问题现象
使用cubemx生成了一个串口通讯程序,以下是发送的字符串。

uint8_t *Buffer="1234567890";
由于初始化代码由cubemx生成,自行添加的代码仅为

/* USER CODE BEGIN WHILE */

while (1)  {               
HAL_UART_Transmit(&huart2,Buffer,10,10);               
delay_ms(1000);               
//HAL_UART_Transmit(&huart2,a,2,10);               
//delay_ms(1000);   
/* USER CODE END WHILE */   
/* USER CODE BEGIN 3 */  
}  /* USER CODE END 3 */
上述代码在日常使用的其他型号开发板上使用正常,但是在使用robomaster B型开发板的时候会出现以下情况
在插接STlink的情况下其输出结果为:

[attach]25696[/attach]
结果很正常,但是一拔掉STLINK就会变为:
[attach]25697[/attach]
三、解决办法
通过多方面的检查,最后得出结论,在STlink供电时,STlink直接3.3v给芯片供电,此时开发板正常工作。
[attach]25698[/attach]
而单独使用USB转TTL模块供电时,由于内部分压,芯片进入了掉电状态。
[attach]25699[/attach]
所以在调试的时候,可以直接在开发板的电源输入端接入6S电,此时可以保证正常运作。
[attach]25700[/attach]
感谢天津理工大学队员在我们排除bug时的帮助。
顺便希望论坛早日支持markdown(小声的)





欢迎光临 RoboMaster (https://bbs.robomaster.com/) Powered by Discuz! X3.2