2012-10-10 64 views
0

我一直在试图让nxtOSEK启动并运行,因为有一些C++项目希望与我的NXT一起工作,并且在搜索网络时似乎是最推荐的系统这样做。垃圾输出到NXT屏幕

我一直在关注this tutorial (I'm on Mac)更新我的砖,并得到它的设置,并设法达到我编译示例程序并将它们下载到我的砖的点。

然而,当我编译和运行HelloWorld程序(它简单地输出“OSEK的HelloWorld”砖瓦的屏幕,我得到一个完整的乱码屏幕,只能通过重新功率回来。


编辑

在生成过程中,我发现了以下错误:

err:wineconsole:WCUSER_SetFont wrong font 
err:wineconsole:WCUSER_SetFont wrong font 
莫非

这可能是问题的一部分?

为了好玩,我会转储整个构建过程......也许鹰眼睛会注意到我错过了一些东西。

[email protected]~/Desktop/nxtOSEK/samples_c/helloworld$ make all 
Compiling ../../ecrobot/../toppers_osek/kernel/alarm.c to alarm.o 
Compiling ../../ecrobot/../toppers_osek/kernel/event.c to event.o 
Compiling ../../ecrobot/../toppers_osek/kernel/interrupt.c to interrupt.o 
Compiling ../../ecrobot/../toppers_osek/kernel/osctl.c to osctl.o 
Compiling ../../ecrobot/../toppers_osek/kernel/resource.c to resource.o 
Compiling ../../ecrobot/../toppers_osek/kernel/task.c to task.o 
Compiling ../../ecrobot/../toppers_osek/kernel/task_manage.c to task_manage.o 
Compiling ../../ecrobot/../toppers_osek/config/at91sam7s-gnu/cpu_config.c to cpu_config.o 
Compiling ../../ecrobot/../toppers_osek/config/at91sam7s-gnu/lego_nxt/sys_config.c to sys_config.o 
Generating OSEK kernel config files from ./helloworld.oil 
err:wineconsole:WCUSER_SetFont wrong font 
err:wineconsole:WCUSER_SetFont wrong font 
Compiling kernel_cfg.c to kernel_cfg.o 
Compiling ../../ecrobot/../ecrobot/c/syscalls.c to syscalls.o 
Compiling ../../ecrobot/../ecrobot/c/ecrobot_bluetooth.c to ecrobot_bluetooth.o 
Compiling ../../ecrobot/../ecrobot/c/ecrobot_base.c to ecrobot_base.o 
Compiling ../../ecrobot/../ecrobot/c/ecrobot.c to ecrobot.o 
Compiling helloworld.c to helloworld.o 
Compiling ../../ecrobot/../toppers_osek/syslib/at91sam7s-gnu/lego_nxt/hw_sys_timer.c to hw_sys_timer.oram 
Assembling ../../ecrobot/../lejos_nxj/src/nxtvm/platform/nxt/vectors.s to vectors.o 
Assembling ../../ecrobot/../toppers_osek/config/at91sam7s-gnu/debug.S to debug.o 
Assembling ../../ecrobot/../toppers_osek/config/at91sam7s-gnu/lego_nxt/sys_support.S to sys_support.o 
Assembling ../../ecrobot/../ecrobot/c/nxt_binary_header.s to nxt_binary_header.o 
Assembling ../../ecrobot/../ecrobot/c/nxt_entry_point.s to nxt_entry_point.o 
Assembling ../../ecrobot/../ecrobot/c/ecrobot_init.s to ecrobot_init.o 
Assembling ../../ecrobot/../toppers_osek/config/at91sam7s-gnu/cpu_support.S to cpu_support.oram 
Assembling ../../ecrobot/../toppers_osek/config/at91sam7s-gnu/irq.s to irq.oram 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_udivsi3.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_divsi3.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_umodsi3.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_modsi3.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_dvmd_tls.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_arm_addsubdf3.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_arm_muldivdf3.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_arm_cmpdf2.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_muldi3.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_divdi3.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_clzsi2.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-memcpy.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-memset.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strcmp.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strcpy.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strlen.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strncpy.o) does not support interworking, whereas helloworld_OSEK_rom.elf does 
Generating binary image file: helloworld_OSEK_rom.bin 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_udivsi3.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_divsi3.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_umodsi3.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_modsi3.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_dvmd_tls.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_arm_addsubdf3.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_arm_muldivdf3.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_arm_cmpdf2.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_muldi3.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_divdi3.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_clzsi2.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-memcpy.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-memset.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strcmp.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strcpy.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strlen.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strncpy.o) does not support interworking, whereas helloworld_OSEK_ram.elf does 
Generating binary image file: helloworld_OSEK_ram.bin 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_udivsi3.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_divsi3.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_umodsi3.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_modsi3.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_dvmd_tls.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_arm_addsubdf3.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_arm_muldivdf3.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_arm_cmpdf2.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_muldi3.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_divdi3.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/thumb/libgcc.a(_clzsi2.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-memcpy.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-memset.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strcmp.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strcpy.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strlen.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
/opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/bin/ld: Warning: /opt/local/lib/gcc/arm-elf/4.6.1/../../../../arm-elf/lib/thumb/libc.a(lib_a-strncpy.o) does not support interworking, whereas helloworld_OSEK_rxe.elf does 
Generating binary image file: helloworld_OSEK.rxe 

再次编辑 和良好的措施有些版本信息:

FW NBC/NXC 1.07 
AVR   1.01 
BC4   1.01 
Build  3012081214 

编辑第三

也有垃圾的屏幕和冻结砖当运行一个应该简单旋转电机的程序。


编辑第四

我相信我已经想通了这个问题,但我仍然不知道如何去解决它。事实证明,我的NXT的固件没有更新。我试图通过Mac和Windows来做到这一点,但似乎并没有“采取”。例如,我每次都会收到“下载成功”消息,但是当我启动NXT时,我从未看到nxtOSEK徽标。这可以解释为什么我在屏幕上看到垃圾,但现在我不知道为什么它不能正常闪烁。

我首先将它置入固件更新模式(tic-tic-tic),然后执行flash过程..但是...什么都没有。

回答

1

寻找你的问题,我从你的构建过程中找不到任何错误。但后来快速浏览了http://lejos-osek.sourceforge.net/whatislejososek.htm,似乎MacOSX并不支持nxtOSEK。这可能完全是你的问题,除非我错过了一些东西。

+0

不支持true,但它似乎是以前完成的。也许我只会使用Windows VM来尝试构建过程。 – espais

+1

我会给予你作为唯一回答的奖励......我将无法在下周之前在VM上试用,但当我发现时我会更新我的问题。 – espais

+0

现在更新了'真正'问题的问题 – espais