abelykh0 / stm32f103-vga-rs Goto Github PK
View Code? Open in Web Editor NEWVGA demo on bluepill (using STM32F103 microcontroller)
License: MIT License
VGA demo on bluepill (using STM32F103 microcontroller)
License: MIT License
Hello,
I tried to test your example. Very interesting!
Nevertheless i can't make it work. It seems to be a memory problem :
stm32f103 is 20KB only.
let mut display = VgaDisplay {
create a 14972 bytes stack entry then init::LateResources {
seems to do a memcpy at fixed Resources space in memory heap as we can see directly in ghidra :
0800047a 09 f1 36 00 add.w r0,r9,#0x36
0800047e 29 46 mov r1,r5
08000480 43 f6 7c 22 movw r2,#14972
08000484 00 f0 9e f8 bl compiler_builtins::compiler_builtins::arm::__a undefined __aeabi_memcpy()
So we have an overlap between heap and stack.
A solution can be not to create stack display
.
$ rustup show
Default host: x86_64-unknown-linux-gnu
rustup home: /home/myhome/rustup
installed toolchains
--------------------
stable-x86_64-unknown-linux-gnu (default)
nightly-x86_64-unknown-linux-gnu
installed targets for active toolchain
--------------------------------------
thumbv7m-none-eabi
x86_64-unknown-linux-gnu
active toolchain
----------------
stable-x86_64-unknown-linux-gnu (default)
rustc 1.42.0 (b8cedc004 2020-03-09)
$ rustup default
stable-x86_64-unknown-linux-gnu (default)
$ rustc --version
rustc 1.42.0 (b8cedc004 2020-03-09)
Please provide a detailed explanation of how this project works as you provided in the https://github.com/abelykh0/VGA-demo-on-bluepill#project-description and https://github.com/abelykh0/VGA-demo-on-bluepill#evolution-of-the-project sections of VGA-demo-on-bluepill
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.