UDE STK 5.0使用方法

因为项目接触到UDE这个开发环境,但是由于新版UDE配套的仿真器价格实在是过高,因此只能使用这个老版,在使用过程有了一些心得,在此做个分享,操作难免有不规范之处,仅供参考。

首先需要连接设备,我使用的芯片为英飞凌的SAK-TC377TP-96F300S,搭配的仿真器型号Infineon DAP miniWiggler通过FC-10Pin(2×5)1.27mm排线连接,仿真器的外观如下图所示:

在连接方面需要注意,排线的红线一侧,应当与接口处丝印箭头处位于同一侧,如图所示:

确认连接好线路之后,先打开UDE,然后给开发板上电(需要按照这个顺序,否则仿真器可能无法正常连接),接下来按照如下操作新建工作空间workspace:

因为我用的是英飞凌芯片,所以选择这个,还需要确认你的芯片是单核还是多核,因为TC377是多核,所以选择了Multicore Configuration这个:

出现以下信息代表连接成功:

接下来进入界面,需要将提前准备好的.elf文件等烧录进开发板中,具体流程如下:

建议把这几个框都勾上,之后每次打开这个页面,都会默认选择之前已经载入的.elf,如果想要修改elf文件,可以通过如下方式:

完成此步骤后,右下角可以看到,各个核正在下载程序。

完成后会弹出这个画面,首先需要设置下载的起始地址:

后面的弹窗一直选是、确认,出现successful说明设置成功,确认之后关掉UCBs的设置页面。

出现success说明下载成功,注意完成之后建议都点右上角的×关掉。

此时就可以跑程序了,有的电脑直接点左边的运行程序就行,有的则需要再点一下reset才能跑起来,原因未知。

下面介绍一些使用方法:

一、设置断点:首先要选对所在核,知道你需要断点的这段程序是在哪个核运行的,在下面可以选择核,然后再source files中找到对应的文件并打断点,用来进行调试,但UDE的调试体验较差。

二、监控数据:可以通过【Watches】功能来监控软件中的变量,watches是不分核的,可以使用browse功能(需要右键上面name所在的栏)搜索你需要的变量,也可也直接敲出准确的变量名。

还可以通过refresh period功能来定时刷新这些变量,设置频率,勾选并确认即可:

右键对应的数据,还可以进行修改数值(也可也左键点一下数据并停顿,出现蓝色就可以修改了,然后点一下旁边就修改完成了)、更改数据显示格式等操作。

-------------------------------------------------------------------------------------------------------------------------------------

补充说明一:

我使用的板子上有个电路如图:

这是一个方便软件调试设计的电路,要求上电之前,使用条线或跳帽将X4001的两个引脚短接,之后就可以按照前文提到的方法下载程序,并进行后续调试。

拔掉跳帽后上电,程序虽可以正常运行,但此时UDE将无法连接板子,会出现报错如下:

Message from component 'Tc2CoreTargIntf':

Can't connect target!

此时可以通过连接设置使UDE与板子成功连接,用来监控、修改变量值,具体操作如下:

修改为Keep application running之后,点击错误提示页的Retry,下面message中的error就消失了,可以重新载入程序,但此后不会再进入下载设置页面,程序会自动运行(不用点运行按键),运行后也可也通过watches对参数进行修改。

成功运行效果如图:

另外,如果要拔掉跳帽运行,建议让板子至少在上电前10s内没有通过电,确保板子内的余电释放完,避免影响功能安全相关芯片的功能。

-------------------------------------------------------------------------------------------------------------------------------------

补充说明二:

重点提醒一下大家,关于板子自动休眠配置的问题,我的软件写了手动休眠(通过使用watches中对Goto_Sleep_Cmd置1实现休眠)和自动休眠(上电后延迟一段时间自动休眠),其中自动休眠一定要设置延时,尽量不要设置为上电后直接休眠。休眠时板子和软件有一些表现:

1. 当板子处于休眠状态时,板子和UDE的连接会暂时断开,message中会一直出现error

2. 当板子处于休眠状态时,watches就无法使用了,部分参数值甚至会出现乱跳的情况

3. 当板子处于休眠状态时,因为连接断开,自然也无法下载新程序

4. 当板子从休眠中被唤醒时,板子会进行初始化,也会恢复与UDE的连接,各项功能可以正常使用。

此时如果你的程序在休眠前没有设置延时,那可能刚一唤醒,又自动休眠了,板子和UDE的连接会断开,导致陷入循环,无法下载新程序,我的AUTO_SLEEP就设置了约8秒的延迟,便于更新程序。

当然如果你已经遇到了没有设置延迟唤醒的问题,也有解决方法,可以试试将杜邦线接到配置为唤醒源的引脚上,根据唤醒边沿配置情况进行短地或短电源,进行操作的同时点击连接报错的retry,多试几次可能就连上了。(一般看到电源上的电流稳定在连接状态时的电流大小时,基本就说明连接成功了,比如我的板子正常工作电流约为0.56A,连接、载入、下载程序的过程中电流约为0.36A),希望大家不要遇到类似问题。

祝大家使用顺利!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值