打印
[其他ST产品]

香水城-请教STR7的程序启动问题

[复制链接]
4004|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xuexuejudy|  楼主 | 2009-6-26 09:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
你好:
 
我用IAR的Flash loader + ST-Link对STR710进行开发,在调试的时候是在Flash里面的。 但是当我把调试好的板子只是上电运行时,程序根本就不跑。请问一下,要想上电之后程序直接从片子的Falsh中运行,我还需要怎样做呢?
沙发
xuexuejudy|  楼主 | 2009-6-26 09:35 | 只看该作者

ST的高手有在线的没?

使用特权

评论回复
板凳
ST_ARM| | 2009-6-26 09:50 | 只看该作者

你调试的时候

程序能正常运行吗?

使用特权

评论回复
地板
vigia| | 2009-6-26 09:51 | 只看该作者

BOOT引脚要选成从flash BOOT

2种接法
1,BOOTEN为0,BOOT1和BOOT0随便
2,BOOTEN为1,BOOT1和BOOT0为0

使用特权

评论回复
5
xuexuejudy|  楼主 | 2009-6-26 11:12 | 只看该作者

调试的时候程序能正常运行啊

使用特权

评论回复
6
xuexuejudy|  楼主 | 2009-6-26 11:14 | 只看该作者

回复5楼:BOOT引脚的设置是正确的啊

使用特权

评论回复
7
xuexuejudy|  楼主 | 2009-6-26 11:16 | 只看该作者

会是烧写程序的问题吗

我在设置属性的时候选择了verify download 和 use flash loader。
要是想往Flash里面烧写程序还有其他的地方需要改动吗? 请高手帮忙

使用特权

评论回复
8
香水城| | 2009-6-26 11:20 | 只看该作者

请检查一下你的电路,尤其是复位电路是否正常

还可以做一个很小的程序下载下去看看是否能够正常工作,比如仅仅闪烁几个LED。

使用特权

评论回复
9
xuexuejudy|  楼主 | 2009-6-26 11:24 | 只看该作者

程序调试的时候都好使,所以怀疑是程序下载到flash的问题呢

使用特权

评论回复
10
香水城| | 2009-6-26 11:29 | 只看该作者

程序下载到flash肯定没有问题

因为你调试时,程序就是在Flash中,如果下载有问题,调试时就会有问题了。

使用特权

评论回复
11
xuexuejudy|  楼主 | 2009-6-27 12:26 | 只看该作者

再次请教ST的高手们

我的程序只要是在Flash里调试的时候都好用,但是只上电的时候程序根本就是不跑。我用的启动文件什么的都是ST的库和例程里面的。问:我要想板子上电后程序直接运行,需要改启动文件或是其他的文件吗?

使用特权

评论回复
12
香水城| | 2009-6-27 12:39 | 只看该作者

请你最好按照我在8楼的建议试试看

1)检查复位电路
2)做一个很小的程序看看是否正常。

这样可以排除是否为启动文件的问题。原则上启动文件是不需要修改的,除非你的程序中有特别的要求。

使用特权

评论回复
13
arm_fan168| | 2009-6-27 12:40 | 只看该作者

热启动与冷启动的问题

以前我遇到过类似问题,原因是我在程序开头对24c256进行了操作,而在刚上电的时候24c256自身的内部初始化还没有完成,所以程序死在操作24c256处。下载到flash再调试,24c256都已经上电一段时间了,所以能够正常运行。如果复位电路和boot脚都没有问题的话,问题就有可能是出在热启动与冷启动的差异上,片内的外设或片外的其它芯片都有可能。

使用特权

评论回复
14
xuexuejudy|  楼主 | 2009-6-27 13:02 | 只看该作者

检测复位电路

我编写了一个CAN接收数据的程序,在调试的时候能收到CAN分析仪发送过来的数据。问题同样出现了,板子只上电时,再用分析仪发数,则现实发送失败。  这样的话是复位电路工作不正常引起的吗?要怎样检查它正常与否呢?

使用特权

评论回复
15
香水城| | 2009-6-27 13:07 | 只看该作者

如果复位电路正常,写个小程序应该可以跑起来

你现在的问题首先是要区分程序是否跑起来了,或者程序跑起来但运行不正常,从你的提问中我看不出答案。

使用特权

评论回复
16
xuexuejudy|  楼主 | 2009-6-27 13:14 | 只看该作者

回复版主:我认为是程序只上电时没有跑起来

使用特权

评论回复
17
xuexuejudy|  楼主 | 2009-6-27 13:39 | 只看该作者

补充说明

我现在的复位电路就是简单的由电容和电阻组成的上电复位。

使用特权

评论回复
18
xuexuejudy|  楼主 | 2009-6-27 14:33 | 只看该作者

复位电路中电阻是2.2K,电容是1nF

使用特权

评论回复
19
xuexuejudy|  楼主 | 2009-7-1 11:59 | 只看该作者

有高手在线的没?

复位电路我加了复位芯片,但是还是在Flash中调试时程序好使。脱机程序不运行。这会是什么原因呢? 

我的输出文件的.map文件中有如下一段:

                ****************************************
                *                                      *
                *           CROSS REFERENCE            *
                *                                      *
                ****************************************

       Program entry at :           40000628  Relocatable, from module : ?program_start

在链接文件vlikarm_flash.xcl文件中有如下一段:
// Code memory in flash
-DROMSTART=0x40000000
-DROMEND=0x4003FFFF

// Data memory
-DRAMSTART=0x20000000
-DRAMEND=0x2000FFFF

-DVECSTART=ROMSTART

这样不是已经规定了程序上电后从Flash中运行吗?
但是现在程序脱机无法运行。
请高手指教!!不胜感激!!

使用特权

评论回复
20
xuexuejudy|  楼主 | 2009-7-1 15:06 | 只看该作者

就没有人用过IAR和STlink了吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

42

帖子

0

粉丝