微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 一些嵌入式调试的工作经验

一些嵌入式调试的工作经验

时间:11-29 来源:互联网 点击:
转眼间毕业两年多了,做的工作杂而无章,真是无奈啊!总结一下,一是理理思路,再个如果真个世界末日,也给后人留点什么吧!想一想,做的东西这是杂呀,安顺需来吧!1开地牛2组装控制柜3应用组太王4电力电子培训5公司迁址搬家6编写modbus程序规约7搭建励磁调节实验平台8可控电抗器的调研9电力大系统的理论研究与仿真10lwip协议站的移植11公司网页的维护与开发12变电站后台程序的开发13报表程序的升级与开发14从事公司采购业务,兼做采购员15erp生产管理系统的维护和开发。从搬运工搞到调试工,从理论研究搞到工程应用,从硬件设计搞到驱动,又从驱动搞到应用软件的开发,从研发搞到采购,从抽象思维搞到平面网页设计,从单兵作战搞到整个生产体系流程的合作话管理!太tmd的杂而无章了,除了cad制图还有销售,该干的也差不多都干了!作这么多,就知道每样都不精。要是能够在一个方面精通该有多好呀,起码有个立足之本了。真的很想安安心心的做嵌入式,做硬件设计,可却有那么多无奈,道可道非常道啊!这样下去,非废了不可。还好我还可以思考,如果哪天连思考的能力都没了,那可就真的废了哈!恩,总结下经验吧,

关于嵌入式调试的一些经验 :
(1)熟悉芯片:接触的嵌入式硬件平台有两个,一个dsp2812,一个是arm7架构的2292,这种嵌入式芯片datasheet都是鸟语写的,要看能把人累死。我是把那些文档当工具书来查了。开始根本不看datsheet,把它给的例程跑通!要是想做开发板熟悉芯片几个功能就好,一个是电源管理,一个是时钟管理,内存管理,还有是中断管理。先跑最小系统,然后拓展功能。
(2)开发 如果有了一块开发板,就要对其进行开发了。开发时要调研,在这上吃了大亏, 原因是调研不够祥尽。lwip协议站移植,主处理芯片为arm2292,网卡芯片为8019as,着重调研以下几项: 1为何要用这个协议栈,好处哪些,坏处哪些(因此选用了lwip而不是uip)。2在我们的平台上是否有搭建的可行性(决定了裸跑协议站而没有上mcos操作系统),3现行主流协议栈移植代码(可参照进行开发,要查到和自己开发最相近的文档哈),相关资料的查找(主要是8019芯片资料,这款芯的datasheet相当垃圾,介绍的一点不全,当时没有想到对这款芯片家族资料进行查找,其实结构功能都一样,害得耽误功夫),咨询外协团队的查找(arm2292是周立功代理的芯片,他们有强大的技术支持,老衲五木写过移植的教程留下了qq,老古论坛为8019as的专业论坛,有幸得到了联系方式)。
在下面 读硬件原理图,弄清原理,是个苦功夫,对于单片机不用了解很多,知道和应用相关模块就ok。
再下面是对开发软件平台的了解,每种开发平台都有自己的特点,对他们的操作试着了解。
读取寄存器,写几行代码,不断读取每个要用的寄存器,看下能否成功!
再往下就是加程序调试了,两种方法,一是自己写,按照datasheet的说明文档,另一种是借它山之石。调试是和datasheet跟进的,是个经验过程,总结以下技巧:
(1)程序单步跟踪,看变量
(2)程序模块化,一个模块一个模块封掉排查
(3)弄清数据流图,数据流动的每个过程都了解清楚,主要了解单片机的架构功能,比如双口ram的优点,设计的思想,isa总线结构设计的思想,数据怎样从起使端流到目的端等等!
(4)在程序中加标签变量,有时每个函数都加个,看看在哪个函数中出错
(5)接口程序的排查,每个功能模块的出错率不大,可能出错的是接口程序
遇到难题就百度下,有的问题很多人都会
遇到,还有不断的给技术支持打电话都是免费的,外协团队很重要啊,完后表示感谢下呀!这个项目给我最大启示是看成熟的技术是怎么做的。怀疑硬件问题那就拿成熟的评估板跑好了。从硬件,驱动,到软件一点点排查!嵌入式是个好东西,真想有时间从板子到驱动,再到上层应用一点点跟下来,嵌入式移植最关键的是数据结构,内存管理,与接口的函数,做完移植就又换毫不相干的任务了,无奈无奈。待续。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top