首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

振奋,NIOS2终于可以在FALSH中跑起来了哇!!!

振奋,NIOS2终于可以在FALSH中跑起来了哇!!!

激动哇!振奋哇!NIOS2终于可以在FALSH中跑起来了哇!!!

前几天在网上发帖,我的NIOS2 老是在FLASH中没法跑起了,

     今天中午,忍受着饥锇的煎熬,终于2007 年8月27日,12点50分,这是NIOS开发历史上的大事,将我自己开发的一第一块NIOS2从软件到硬件全部调通,真是让人兴奋,让世人剐目相看!!!,令世人震惊!!!

    经过这次NIOS2开发经历,让我感受到搞技术的辛酸与成功的喜悦!

   高兴归高兴,还是说说我处理问题的细节吧:

   前面提到我虽然把程序下载到FALSH里了,但是并没在FLASH中跑起来,其原因是在NIOS2 IDE,要将systerm library  中选项配置成如下:

program memory (.TEXT)   :配置成  CFI—FLASH

read-only data memory(.rodat) 配置成CFI-FLASH

其余如.RWDATA等只能配制在RAM中;

我原来的错误就是把.TEXT 和.rodata配置在SRAM中了,所以程序只能在SRAM中调试,

如果要在FLASH中运行程序,一定要将.text 和.rodta配置在CFI-FLASH中。

这样一下载程序,就能上电运行了!!!!!

希望我的NIOS开发过程所碰到的问题及解决办法能为初步开发NIOS2和将要开发NIOS2的朋友提供一点点成功的经验:细节决定成败!!!!这句话说得多好啊

    

真不容易啊!都看你最近问了好多问题了!

恭喜一下!

想看更多的东西?来我的博客,精彩多多! http://blog.eccn.com/u/bjxiong/index.htm

我一直也被这个困扰着,赶紧试一试。

有类似问题的朋友,就问我哈

楼主还想不想再次“让人兴奋,让世人剐目相看!!!,令世人震惊!!!”呢

机会来了,去帮我研究一下中断该怎么样实现吧!!

我在这里静候下一个历史时刻的到来~~

program memory (.TEXT)   :配置成  CFI—FLASH

read-only data memory(.rodat) 配置成CFI-FLASH

在那儿设置的?

----我也遇到Flash下载的问题,情形和楼主差不多,最近没有时间作这方面的实验!请教了!谢谢!

我曾经是,QII的里的东西(硬件部分),能烧写到flash里了并且通电后能够完成配置(掉电后不用再通过QII Programmer下载.sof文件)。但是niosII里的东西(软件部分),不能通过flash配置(还要Debug As才能运行)!

后来,去搞VHDL的IP编写了没时间看看相关知识,[em07]在这里请教楼主了,谢谢!

[此贴子已经被作者于2007-8-29 11:58:25编辑过]

QUOTE:
以下是引用5101102在2007-8-29 10:31:00的发言:

program memory (.TEXT)   :配置成  CFI—FLASH

read-only data memory(.rodat) 配置成CFI-FLASH

在那儿设置的?

----我也遇到Flash下载的问题,情形和楼主差不多,最近没有时间作这方面的实验!请教了!谢谢!

haha 这个我都懂

在Resource→XXX_syslib[XX]→Properties→system library里面

[em05]

恭喜楼主,有问题到论坛来交流交流。

在交流中前进,共同实现nios的应用。
QUOTE:
以下是引用看帖不回你咬我在2007-8-29 15:47:00的发言:

haha 这个我都懂

在Resource→XXX_syslib[XX]→Properties→system library里面

[em05]

^_^ 谢谢哥们!好!

QUOTE:
以下是引用看帖不回你咬我在2007-8-28 19:15:00的发言:

楼主还想不想再次“让人兴奋,让世人剐目相看!!!,令世人震惊!!!”呢

机会来了,去帮我研究一下中断该怎么样实现吧!!

我在这里静候下一个历史时刻的到来~~

你中断有什么问题?说来听听

哎 什么都好 就是进不了定时器中断程序[em06]

#include "system.h"
#include "altera_avalon_pio_regs.h"
#include "alt_types.h"
#include <stdio.h>
#include <io.h>
#include "sys/alt_irq.h"

void do_timer( void * context, alt_u32 id )
{
  IOWR(TIMER_0_BASE,0,0);

  XXXXXXXXXXXXXXXXXX;//这部分是自己的程序,单独作为main运行过,没问题。

    return 0;
 }

int main ()
{
  alt_irq_register( TIMER_0_IRQ, (void *)0, do_timer );  
  IOWR( TIMER_0_BASE, 1, 0x7 ); ←每次运行到这里就不再望下走了!!TIMER的地址里是03 00 00 00 07 00 00 00 ……
  while(1){;}
}

XXXXX部分换成printf("Hello from Nios II!\n");也不会有输出。

QUOTE:
以下是引用看帖不回你咬我在2007-8-29 17:35:00的发言:

哎 什么都好 就是进不了定时器中断程序[em06]

#include "system.h"
#include "altera_avalon_pio_regs.h"
#include "alt_types.h"
#include <stdio.h>
#include <io.h>
#include "sys/alt_irq.h"

void do_timer( void * context, alt_u32 id )
{
  IOWR(TIMER_0_BASE,0,0);

  XXXXXXXXXXXXXXXXXX;//这部分是自己的程序,单独作为main运行过,没问题。

    return 0;
 }

int main ()
{
  alt_irq_register( TIMER_0_IRQ, (void *)0, do_timer );  
  IOWR( TIMER_0_BASE, 1, 0x7 ); ←每次运行到这里就不再望下走了!!TIMER的地址里是03 00 00 00 07 00 00 00 ……
  while(1){;}
}

XXXXX部分换成printf("Hello from Nios II!\n");也不会有输出。

感觉没错呀!!!!

你确定是用的int main ()  !?而不是用的int   alt_main ()作为主程序的开头!?

是int main哦。

胡思乱想ing……

查到原因再告诉你们。

谢谢各位的支持,我会继续努力的,7楼的朋友,你要把NIOS配置。SOF下载到配置芯EPCS下行哦,用AS方式下载,NIOS中的软件。ELF就用flaSh programmer 烧写到CFI-FLASH中去,这样上电才行哦

返回列表