搜索
bottom↓
回复: 19

用ISP烧入成功,但程序跑不走来,什么原因呢?

[复制链接]

出0入0汤圆

发表于 2012-8-11 17:43:03 | 显示全部楼层 |阅读模式
ISP烧写器是按这里的资料做的
http://www.amobbs.com/thread-5490539-1-1.html

用ISP烧写器烧程序到LGT里,烧写软件那里提示烧写成功了,但程序就是跑不起来,用仿真器烧程序就没有问题,请问各位大神这是什么原因啊??

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2012-8-11 18:28:14 | 显示全部楼层
你确定用仿真器写进去能正常运行的?

出0入0汤圆

 楼主| 发表于 2012-8-11 18:52:02 | 显示全部楼层
本帖最后由 YRHeng 于 2012-8-11 18:53 编辑
chengzepeng 发表于 2012-8-11 18:28
你确定用仿真器写进去能正常运行的?


确定,测试程序如下,用ISP烧入的串口没有任何数据输出,但用仿真器烧的,串口大约一秒发送一个字符‘O’
void main()
{
   
      USART_Init();
      while(1)
      {
       delay_ms(1000);
       UART1_Write('O');
      }
}

PS:ISP烧写软件为V2.0.0.3版的

出0入0汤圆

发表于 2012-8-11 20:07:05 | 显示全部楼层
试试ISP读取出来的flash是不是和写入的一样

出0入0汤圆

发表于 2012-8-11 20:21:17 | 显示全部楼层
用ISP烧入成功,但程序跑不走来


you managed to contradict yourself in one sentence.

出0入0汤圆

 楼主| 发表于 2012-8-11 20:35:46 | 显示全部楼层
本帖最后由 YRHeng 于 2012-8-11 20:40 编辑
millwood0 发表于 2012-8-11 20:21
you managed to contradict yourself in one sentence.


我的意思是单片机里的程序跑不起来,要不就是跑飞了,烧录软件提示是写入入成功的。。
08/11/12 20:16:28  下载FLASH文件成功.
08/11/12 20:16:28  写成功,烧录总数:34,失败数:9,成功数:25

出0入0汤圆

 楼主| 发表于 2012-8-11 20:55:18 | 显示全部楼层
goodcode 发表于 2012-8-11 20:07
试试ISP读取出来的flash是不是和写入的一样

确实不一样啊
用ISP写进去,用仿真器读出来


然后用仿真器写进去,然后用仿真器读出来

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2012-8-11 21:02:03 | 显示全部楼层
我用智峰的progisp172打开一个HEX 文件,然后用LGT的SPI下载软件打开同一个HEX文件,结果很郁闷,是LGT的下载器解释HEX文件出问题??还是我的系统问题?我的系统是XP 32位的啊。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2012-8-11 22:37:11 | 显示全部楼层
下载失败率高到四分一以上了说明了什么?
ISP下载有问题,不是接触不良就是软件通讯出错,这时的成功没用的!

出0入0汤圆

 楼主| 发表于 2012-8-11 23:31:15 | 显示全部楼层
chengzepeng 发表于 2012-8-11 22:37
下载失败率高到四分一以上了说明了什么?
ISP下载有问题,不是接触不良就是软件通讯出错,这时的成功没用的 ...

那个是因为我ISP下载和仿真器都接上了。。没有退出仿真状态就直接用ISP烧写导致的,事实上我用了量产那个功能把单片机烧了十来次都成功。。
而且数据通信应该没问题,用ISP烧写,用仿真器读FLASH数据跟ISP软件显示FLASH数据的一致,我倒觉得问题出在下载软件解释HEX文件那。

出0入0汤圆

发表于 2012-8-11 23:37:29 | 显示全部楼层
我只用ISP下载进去没运行过,

毕竟我有仿真器,

对这个编程器信心不大,

有空我也研究下!

出0入0汤圆

发表于 2012-8-12 23:23:56 | 显示全部楼层
chengzepeng 发表于 2012-8-11 23:37
我只用ISP下载进去没运行过,

毕竟我有仿真器,

我觉得不能老怪USB口接触问题,我用智峰软件下AVR从来没有出过问题。

出0入0汤圆

发表于 2012-8-12 23:42:39 | 显示全部楼层
总结下:

1:按照官方原理图上制作,这个明显有问题,去藕电容都没有的,稳定性可想而知。
2:按照读出的逻辑来看,SPI是IO模拟的,官方版固件读取的时序很不稳定。
3:那个ISP的编程没有SPI使能脚,收发数据就类似同步串口模式。

具体最终稳定性如何还得到看官方公布协议后出个人版编程器才能确定。

出0入0汤圆

发表于 2012-8-27 20:59:39 | 显示全部楼层
唉,碰到同样问题,楼主搞定没有?

出0入0汤圆

 楼主| 发表于 2012-8-28 08:54:14 | 显示全部楼层
borg 发表于 2012-8-27 20:59
唉,碰到同样问题,楼主搞定没有?

还没呢,暂时放弃LGT,等待开发工具成熟了再玩

出0入0汤圆

发表于 2012-8-28 11:25:42 | 显示全部楼层
YRHeng 发表于 2012-8-28 08:54
还没呢,暂时放弃LGT,等待开发工具成熟了再玩

仁兄可以把你的hex文件给出来,我们测试一下。

出0入0汤圆

 楼主| 发表于 2012-8-28 17:02:47 | 显示全部楼层
logicgreen 发表于 2012-8-28 11:25
仁兄可以把你的hex文件给出来,我们测试一下。

好的,我把我测试的源码也放上来,编译环境是mikroC PRO for AVR
刚刚试了下,还是老问题,仿真器写进去程序正常运行,ISP就不行

这是已经编译好的HEX文件


#include "iolgt8f0xa.h"
#define  uchar unsigned char
#define  uint unsigned int
#define  ulong unsigned long
#define  cuchar const unsigned char


void USART_Init(void)        //串口通信初始化
{
       UART1_Init(9600) ;
       UCSR0B |= (1 << RXCIE0) | (1 << RXEN0) | (1 << TXEN0);    //接收中断使能,接收使能,发送使能
       SREG_I_bit = 1;
}


void main()
{

      USART_Init();
      UART1_Write_Text("hello");
       DDRA=0xff;
      while(1)
      {

       PORTA=~PORTA;
       delay_ms(1000);
      }
}


void SIG_UART_RECV(void) org 0x28
{
  uchar c;
  c=UDR0;

}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2012-8-28 17:13:06 | 显示全部楼层
另外还发现还存在这个问题:有部分HEX文件会出现下载失败的情况

我把程序修改一下,编译出来的HEX文件就下载失败了,还原成以前的代码,重新编译,下载就成功了

出现下载失败的HEX文件


相关代码

#include "iolgt8f0xa.h"
#define uchar unsigned char
#define  uint unsigned int
#define  ulong unsigned long
#define cuchar const unsigned char
void USART_Init(void);        //串口通信初始化
void main()
{

      USART_Init();
      UART1_Write_Text("hello");

      DDRA=0xff;
      while(1)
      {
              PORTA=~PORTA;
              UART1_Write_Text("OK");
              delay_ms(1000);
      }
}

void USART_Init(void)        //串口通信初始化
{
       UART1_Init(9600) ;
       UCSR0B |= (1 << RXCIE0) | (1 << RXEN0) | (1 << TXEN0);    //接收中断使能,接收使能,发送使能
       SREG_I_bit = 1;
}

void SIG_UART_RECV(void) org 0x28
{
  uchar c;
  c=UDR0;
}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2012-8-28 22:11:42 | 显示全部楼层
YRHeng 发表于 2012-8-28 17:13
另外还发现还存在这个问题:有部分HEX文件会出现下载失败的情况

我把程序修改一下,编译出来的HEX文件就下 ...

你的问题我们已经解决,请重新下载ISP的应用软件,谢谢你的支持。

出0入0汤圆

 楼主| 发表于 2012-8-28 23:06:20 | 显示全部楼层
logicgreen 发表于 2012-8-28 22:11
你的问题我们已经解决,请重新下载ISP的应用软件,谢谢你的支持。

感谢班竹,更新了电脑端软件后程序烧到单片机里面可以运行了
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 05:43

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表