Comments (7)
It's because I am stupid !
I forgot to push this file,
Now normally it is fixed,
Would you try again and tell me what it gives ?
Thanks in advance,
-- B
from learn-fpga.
Thank you very much. It works perfectly now.
Regards, Bernd.
from learn-fpga.
Hello Bruno,
sorry to bother you again. I am not able to see any UART output in the terminal.
Executing make ICESTICK in FemtoRV directory works without errors, iceprog is successfully programming femtosoc.bin. But there is no output in the terminal.
make blinker_loop.prog in the ASM_EXAMPLES directory works as expected. I can see the LEDs blink.
Make hello.prog in the EXAMPLES directory seems not to produce any output in the terminal.
So I disabled/commented NRV_IO_SSD1351 and NRV_IO_MAX7219 in RTL/CONFIGS/icestick_config.v and run make ICESTICK again.
Now I get the following error message:
/home/bernd/fpga/mue/project/riscv/femtorv_2102/learn-fpga/FemtoRV/FIRMWARE//TOOLCHAIN/riscv64-unknown-elf-gcc-8.3.0-2020.04.0-x86_64-linux-ubuntu14/bin/riscv64-unknown-elf-gcc -Os -I/home/bernd/fpga/mue/project/riscv/femtorv_2102/learn-fpga/FemtoRV/FIRMWARE//LIBFEMTOGL -I/home/bernd/fpga/mue/project/riscv/femtorv_2102/learn-fpga/FemtoRV/FIRMWARE//LIBFEMTORV32 -I/home/bernd/fpga/mue/project/riscv/femtorv_2102/learn-fpga/FemtoRV/FIRMWARE//LIBFEMTOC -DICE_STICK=1 -fno-pic -march=rv32i -mabi=ilp32 -fno-stack-protector -w -Wl,--no-relax -c femtoGL.c
femtoGL.c: In function 'GL_init':
femtoGL.c:62:16: error: 'OLED_WIDTH' undeclared (first use in this function)
GL_width = OLED_WIDTH;
^~~~~~~~~~
femtoGL.c:62:16: note: each undeclared identifier is reported only once for each function it appears in
femtoGL.c:63:16: error: 'OLED_HEIGHT' undeclared (first use in this function)
GL_height = OLED_HEIGHT;
^~~~~~~~~~~
../makefile.inc:72: recipe for target 'femtoGL.o' failed
make[2]: *** [femtoGL.o] Error 1
I am unsure now, if NRV_IO_SSD1351 and NRV_IO_MAX7219 should be disabled or not.
Regards, Bernd.
from learn-fpga.
I found a workaround: I added
#if !defined(SSD1351) || !defined(SSD1331)
#define OLED_WIDTH 1
#define OLED_HEIGHT 1
#endif
in femtorv32h, line 112 to get femtoGL compiled with NRV_IO_SSD1351 and NRV_IO_MAX7219 disabled.
And now I can see the UART messages in the terminal :-)
Regards, Bernd.
from learn-fpga.
Hi,
There is an easier way:
You can edit RTL/CONFIGS/icestick_config.v and comment-out all the devices you are not using
(NRV_IO_SSD1351, NRV_IO_MAX7219), then the firware detects it and sends all outputs to the UART.
I'll make it clearer in the tutorial.
Best wishes,
-- B
from learn-fpga.
yes, I tried to comment-out NRV_IO_SSD1351 and NRV_IO_MAX7219. But compiling the firmware fails then with the error, I mentioned above:
femtoGL.c: In function 'GL_init':
femtoGL.c:62:16: error: 'OLED_WIDTH' undeclared (first use in this function)
GL_width = OLED_WIDTH;
Anyway, I thank you for this fantastic project and close this issue now.
Regards, Bernd.
from learn-fpga.
You are perfectly right.
I have pushed your suggested fix, thank you very much !
-- B
from learn-fpga.
Related Issues (20)
- From Blinky to RiscV - porting to other HDLs
- Interrupt handling, double triggering HOT 2
- Rv32i quark Block diagram HOT 4
- Out of memory while generating hex for blinky in step 20, IceStick HOT 3
- Icebreaker FPGA UART communication garbage out HOT 4
- Issue connecting iCEstick Evaluation Kit
- Building radiona_ulx3s_ex fails but the original LiteX python script works (ULX3s-12F) HOT 1
- comment/code mismatch
- broken link HOT 1
- FROM_BLINKER_TO_RISCV step 14 multiply simulates but doesn't run on IceStick
- comment/code mismatch FROM_BLINKER_TO_RISCV step 4 (?) HOT 1
- ice-sugar-nano: PLL avaliable but unused
- Step 7 Yields No Output HOT 15
- FROM_BLINKER_TO_RISCV: step 19: verilator command does not work. HOT 2
- FROM_BLINKER_TO_RISCV: no terminal output for step22.v on iCEstick HOT 14
- Which linker script should I be using with the ULX3S? HOT 2
- How to fit larger programs on the Icestick ULXS3 or Arty HOT 1
- Error when running make ARTY HOT 7
- Why does make hello.prog use iceprog after running make ARTY.firmware_config? HOT 1
- Struggling to make LiteOS HOT 31
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from learn-fpga.