Board logo

标题: 振奋,NIOS2终于可以在FALSH中跑起来了哇!!! [打印本页]

作者: zxg312416    时间: 2007-8-27 13:24     标题: 振奋,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的朋友提供一点点成功的经验:细节决定成败!!!!这句话说得多好啊

    


作者: bjxiong    时间: 2007-8-27 14:07

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

恭喜一下!


作者: xhw0341888    时间: 2007-8-27 15:24

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


作者: zxg312416    时间: 2007-8-28 09:20

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


作者: 看帖不回你咬我    时间: 2007-8-28 19:15

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

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

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


作者: 5101102    时间: 2007-8-29 10:31

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

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

在那儿设置的?

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


作者: 5101102    时间: 2007-8-29 11:30

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

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

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


作者: 看帖不回你咬我    时间: 2007-8-29 15:47

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]
作者: kzw    时间: 2007-8-29 16:14

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


作者: 5101102    时间: 2007-8-29 16:50

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

haha 这个我都懂

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

[em05]

^_^ 谢谢哥们!好!


作者: 5101102    时间: 2007-8-29 17:11

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

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

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

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

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


作者: 看帖不回你咬我    时间: 2007-8-29 17:35

哎 什么都好 就是进不了定时器中断程序[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");也不会有输出。


作者: 5101102    时间: 2007-8-29 19:49

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 ()作为主程序的开头!?


作者: 看帖不回你咬我    时间: 2007-8-29 20:13

是int main哦。

胡思乱想ing……

查到原因再告诉你们。


作者: zxg312416    时间: 2007-8-30 09:50

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


作者: zxg312416    时间: 2007-8-30 09:53

13楼的,中断程序我还没搞,有时间我们一起解决这个问题吧
作者: 看帖不回你咬我    时间: 2007-8-30 10:18

报……报告~ 7楼和13楼里住的是同一个人


作者: bjxiong    时间: 2007-8-30 10:47

呵呵!太逗了!我记得好像有个帖子是专门讲flash的,你们可以搜一下。可能会有用的
作者: 5101102    时间: 2007-8-30 22:29

哈哈 反正谢谢各位了!
作者: zhutou    时间: 2007-9-3 16:09

你好幸福哦

小弟现在正为这个问题所困绕呢!


作者: HSJ3095270    时间: 2007-9-6 23:09

明年第三法






欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0