583|3

56

帖子

3

TA的资源

一粒金砂(中级)

楼主
 

【DigiKey“智造万物,快乐不停”创意大赛】 bbb RMP(Red Magic Probe) 站起来了 [复制链接]

 

bbb RMP(Red Magic Probe)站起来了

哈哈,经过这几天的 debug,主要是上游社区群 blackmagic 里的请教,慢慢地无法通过 load 命令下载程序的问题就解决了。目前可以通过 bbb RMP 下载程序到 32 了。先上一张下载成功的截图:

开心哦,下面就是简单介绍下这个问题的解决过程。

  1. 首先是放开打印支持,经过大佬的指点怀疑是我这边向 gdb 应答的时候出错了,并不是 gdb 协议栈那边的问题(gdb 还是比较稳定可靠的),在这个方向下,我 rebase 我的程序同步到上游,因为 maintainer dragonmux 告诉我我代码太老了,最近的更新修复了好多 BUG.我就 rebase 到最新的代码,然后逐渐发现是在 gdb 给我下发了 vFlashWrite 命令后我没有正常返回应答,调试发现是我接收到 gdb 的 package 校验没有通过。因为 gdb 的 package 最后两个字节是前面内容的校验和。

  2. 知道了原因后就是下一个问题了,为什么我收到的 gdb 的 package 校验会不通过呢?我就想看看 gdb 到底发送出来的数据和我接收到的是否一致,这时候我继续向大佬请教,如何查看 gdb 发送的内容,方法是在 gdb 下输入 set debug remote 1 放开打印,这样就可对比了,砍下 gdb 实际发送出来的数据如下:

可以看到发送方明显发送了字符\r\x0d,而我在我这边打印并没有发现这个字符。具体如下:

然后大概就知道问题,所在了,添加了对串口配置的如下 diff

  1. diff --git a/src/gdb_packet.c b/src/gdb_packet.c
  2. index 6ab5307a..7aa688d8 100644
  3. --- a/src/gdb_packet.c
  4. +++ b/src/gdb_packet.c
  5. @@ -117,6 +117,8 @@ packet_state_e consume_remote_packet(char *const packet, const size_t size)
  6. #endif
  7. }
  8. +// vFlashWrite:addr:XX... 写数据 XX 到指定的 addr flash 地址
  9. +// XX 是 binary data
  10. size_t gdb_getpacket(char *const packet, const size_t size)
  11. {
  12. packet_state_e state = PACKET_IDLE; /* State of the packet capture */
  13. diff --git a/src/platforms/bbb/platform.c b/src/platforms/bbb/platform.c
  14. index 13493d74..8f6af07e 100644
  15. --- a/src/platforms/bbb/platform.c
  16. +++ b/src/platforms/bbb/platform.c
  17. @@ -112,6 +112,8 @@ static bool set_interface_attribs(void)
  18. // disable IGNBRK for mismatched speed tests; otherwise receive break
  19. // as \000 chars
  20. tty.c_iflag &= ~IGNBRK; // disable break processing
  21. + tty.c_iflag &= ~ICRNL; // 取消 0d -> 0a 转换
  22. + tty.c_iflag &= ~IXON;
  23. tty.c_lflag = 0; // no signaling chars, no echo,
  24. // no canonical processing
  25. tty.c_oflag = 0; // no remapping, no delays

然后问题就顺利解决了,附上我的代码仓库连接:
https://github.com/iysheng/blackmagic/tree/bbb
在此向这几天来帮助我解决这个问题的社区伙伴们表示诚挚的感谢,社区的范围特别好很nice。

最新回复

钻研就是要这个效果。 痛苦的过程,一旦熬过了,就能收获快乐!   详情 回复 发表于 2024-1-11 16:31
点赞 关注
 
 

回复
举报

331

帖子

5

TA的资源

纯净的硅(中级)

沙发
 

钻研的精神值得学习!

gdb用好了,能够对开发工作起到非常大的帮助!

 

点评

因为是比赛哦,想着做的好一点。这个过程也是有点熬人的,好在问题可以解决。有一种豁然开朗的感觉。  详情 回复 发表于 2024-1-11 09:23
 
 
 

回复

56

帖子

3

TA的资源

一粒金砂(中级)

板凳
 
HonestQiao 发表于 2024-1-11 08:14 钻研的精神值得学习! gdb用好了,能够对开发工作起到非常大的帮助!  

因为是比赛哦,想着做的好一点。这个过程也是有点熬人的,好在问题可以解决。有一种豁然开朗的感觉。

点评

钻研就是要这个效果。 痛苦的过程,一旦熬过了,就能收获快乐!  详情 回复 发表于 2024-1-11 16:31
 
 
 

回复

331

帖子

5

TA的资源

纯净的硅(中级)

4
 
iysheng 发表于 2024-1-11 09:23 因为是比赛哦,想着做的好一点。这个过程也是有点熬人的,好在问题可以解决。有一种豁然开朗的感觉。

钻研就是要这个效果。

痛苦的过程,一旦熬过了,就能收获快乐!

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
推荐帖子
芯片封装技术

芯片封装技术 自从美国Intel公司1971年设计制造出4位微处a理器芯片以来,在20多年时间内,CPU从Intel4004、80286、80386、80486 ...

AVR单片机工具软件集锦---连载中

从网上搜集来的AVR相关的小工具软件,供大家分享 需要特别说明的是,这些软件是从网上搜集来的,我本人无意侵占相关作者的版权, ...

(5)EE推荐:2011年及往年各省、地区竞赛项目设计方案集锦(电路图、代码等)

控制类 最新基于80C51单片机的智能小车设计 https://bbs.eeworld.com.cn/thread-290672-1-1.html 智能车资料整理 https://bb ...

2011仪器器件清单分析(全)——决战2011全国大学生电子设计竞赛

本帖最后由 paulhyde 于 2014-9-15 09:27 编辑 决战2011全国大学生电子设计竞赛——仪器器件清单分析 格式好乱……原文可以在 ...

EEWORLD网友南山小聚,有图有真相!

相聚的时间总是那么短暂,感谢大家能抽出时间过来聚会,不知道都吃饱没?我同事说菜好像少了:Sweat:刚刚才想起来,好像 ...

电流检测电路

电流检测的应用 电路检测电路常用于:高压短路保护、电机控制、DC/DC换流器、系统功耗管理、二次电池的电流管理、蓄电池管理 ...

数字电源和模拟电源之间是用电感隔离还是磁珠?

数字电源和模拟电源之间是用电感隔离还是磁珠?

呱唧呱唧来吃瓜:大佬们吵架啦~~~

最近华为和小鹏两家人来了场隔空的技术革新讨论,咱来远程旁观下这场辩论吧 下面是管管找到的第N手的图: 750646 ...

稳压管电路有关疑惑

800037 第二问我不明白为什么解析说,(稳压管最大稳定电流>=电阻最大电流+稳压管最小电流),所以最大稳定电流至少是20+5 = 25mA ...

《Rust实战》读书笔记——第9章,时间,2个OS两个方案

817131 遥想1/4世纪之前,人类曾为“千年虫”问题困扰,以至于有个电影还用到了这个题材。女主是美女凯瑟琳泽塔琼 ...

关闭
站长推荐上一条 1/10 下一条
有奖直播:当AI遇见仿真,会有什么样的电子行业革新之路?
首场直播:Simcenter AI 赋能电子行业研发创新
直播时间:04月15日14:00-14:50

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网 8

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表