5520|9

13

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

【是德征文】安捷伦示波器又帮我化解了一个Bug [复制链接]

 
本帖最后由 zzwan 于 2017-3-2 17:31 编辑

        首先说一下我跟安捷伦的缘分吧。大学毕业后,我进了一家电子企业做硬件研发工作。那还是我的菜鸟期,出学校之后最早接触的示波器是泰克品牌的。之后公司花20万买过2台新示波器也是泰克的。从那时起,我一直用的就是泰克的示波器。因此我也有了一个认知误区,一直以为泰克是示波器第一品牌(嘿嘿,没接触过其他品牌示波器)。直到进入现在这家公司,我才发现山外有山。进实验室发现,清一色的全是安捷伦的设备,示波器,频谱仪,信号发生器,电流表等。这些年来,这些设备帮我解决了各种各样的bug,协助我及时完成了一个又一个的开发任务。        本文是关于示波器的文章,所以其他设备先不说的,等以后有机会再写吧。我们实验室有2台KEYSIGHT示波器,一台是中端的DSO-X 3054A,500MHz 4GSa/s; 另一台是高端的MSOS254A,2.5GHz 20GSa/s. 先来一张图片吧:


再来一张高端型号的:


        简单介绍一下这台中端型号DSO-X 3054A。500MHz,4GSa/s一般应用足够了,我也不做高频的,但现在都没用过那台高端的。4通道,带USB存储,操作简单易上手。
        现在说一下解决问题的过程吧。
        由于项目需要多个UART,而主控芯片只有1个,我需要用GPIO口模拟UART,软件+GPIO实现UART功能。由于不是什么复杂的功能,很快就完成了,无校验位,波特率9600,收发正常。我选了2个空闲的GPIO调试程序,调试完成之后需要切换到项目需要的GPIO上。这时出了问题了,每次reset之后,第一次发送数据,前面几个字节出错,后面就正常了。仔细翻看芯片的数据手册,2组GPIO没有太大区别,软件是一样的。唯一的区别是,出错的GPIO默认是SWD接口,程序初始化时,需要将这组IO设置为GPIO。刚开始我怀疑波特率太高,IO口反应不过来,将波特率降低之后,问题依然存在。反复分析,想不出所以然来,上示波器看一下IO的翻转情况,接着上图:
出错数据波形:


正确数据波形:


        从上面的波形中可以看出,出错时,UART Tx信号线上第一字节的起始位没有。说明GPIO根本没有翻转下来。
        这个就难搞了,可以确认软件没有问题,其他GPIO也没问题,偏偏是SWD复用的2个IO口出问题了。所以我怀疑是bootloader中将这2个IO口设置为SDW功能,进入用户main()程序之后,我们再将这2个IO口设置为GPIO时,出现问题了。
没办法了,寻求主控芯片的原厂技术支持。经过N多次电话+邮件沟通,问题确定了。这时我的DSO-X 3054A示波器立功了,上面2张图片发给原厂之后,立马定位到了问题。IO口由SWD功能转换为GPIO后,需要先将配置out_high寄存器,再配置in_out寄存器,否则就会出问题。这个细节就连芯片原厂都没注意到,所以手册上也未说明。

        十分感谢KEYSIGHT示波器这些年来的陪伴与帮助,同时恭祝是德科技继续前进,锐意突破,给我们带来越来越好的测量设备。

此内容由EEWORLD论坛网友zzwan原创,如需转载或用于商业用途需征得作者同意并注明出处






最新回复

是哪家的CPU呀,给后来人也提个醒。  详情 回复 发表于 2017-3-23 16:59

赞赏

2

查看全部赞赏

点赞 关注
个人签名zzwan
 
 

回复
举报

828

帖子

190

TA的资源

管理员

沙发
 
太给力了!必须赞一个!而且文确确实实的好!
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身

点评

我也是刚解决完问题,就看到这个征文了。正好分享一下,嘿嘿,文采太烂,还请见谅  详情 回复 发表于 2017-3-3 11:09
个人签名在路上……

EEworld 有你有我
 
 
 

回复

6423

帖子

17

TA的资源

版主

板凳
 
不错,定位很迅速

点评

嗯 也是好久不调底层了,涉及到硬件的部分,真离不开示波器。  详情 回复 发表于 2017-3-3 11:05
个人签名training
 
 
 

回复

13

帖子

0

TA的资源

一粒金砂(中级)

4
 
白丁 发表于 2017-3-2 22:42
不错,定位很迅速

嗯 也是好久不调底层了,涉及到硬件的部分,真离不开示波器。
个人签名zzwan
 
 
 

回复

13

帖子

0

TA的资源

一粒金砂(中级)

5
 
lightxixi 发表于 2017-3-2 17:55
太给力了!必须赞一个!而且文确确实实的好!

我也是刚解决完问题,就看到这个征文了。正好分享一下,嘿嘿,文采太烂,还请见谅
个人签名zzwan
 
 
 

回复

796

帖子

0

TA的资源

一粒金砂(高级)

6
 
支持一下啊
 
 
 

回复

2万

帖子

340

TA的资源

版主

7
 
安捷伦示波器现在改叫是德,东西看上去就是高大尚啊
我们这里一堆,哪个叫泰克的,呵呵
 
 
 

回复

527

帖子

0

TA的资源

五彩晶圆(中级)

8
 
顶楼主,好文!!
 
 
 

回复

38

帖子

0

TA的资源

一粒金砂(中级)

9
 
是哪家的CPU呀,给后来人也提个醒。

点评

NXP 无线 MCU, QN9020  详情 回复 发表于 2017-3-29 17:28
 
 
 

回复

13

帖子

0

TA的资源

一粒金砂(中级)

10
 
晴天霹雳2 发表于 2017-3-23 16:59
是哪家的CPU呀,给后来人也提个醒。

NXP 无线 MCU, QN9020
个人签名zzwan
 
 
 

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

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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

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

北京市海淀区中关村大街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
快速回复 返回顶部 返回列表