Comments (6)
Hi Hedley,
So you already have the SVD files? Looking at the documentation, it seems like the STM32L4 peripherals are closer to the STM32F7 peripherals... A simple way to know is to try to reuse the STM32F7 drivers with STM32L4 SVD and see if it compiles. If it does there's a good chance that the drivers will work.
If it doesn't you can see how it's done for STM32F4 vs STM32F7 and have specific drivers in a sub directory when needed.
We can help you with the directory and project file hierarchies.
Thanks for looking at this!
from ada_drivers_library.
The zip for all the L4 svd files is on here: http://www.st.com/en/microcontrollers/stm32l432kc.html (look for 'STM32L4 System View Description'). I understand on the dir stuff, thanks for the tip on F7 vs L4. Curr I have a bare minimum elf that gets to the PLL init. Now time to add back the missing bits. There is a cute board I bought for ~$10 (5x1.8cm). Its a Nucleo with a 32 pin(!) 80mhz stm32l432kc on it. Comes with an stlinkV2 too. Openocd 0.10 works fine. It has 256k flash and 64k ram. Enough to run Ada no trouble.
from ada_drivers_library.
Fabien, one other Q, how are the i-stm32*.ads files generated? svd.mk handles the arch files but for the embedded-runtimes/bsps? and now, this might expain why the PLL init -> hang(). ;)
from ada_drivers_library.
The i-stm32 packages are in the run-times, they are generated from the same SVD files the difference is the root package used in the SVD2Ada command line:
./svd2ada -p Interfaces.STM32
In Setup_PLL, there's a few busy loops waiting for a clocks to stabilize. If you have a debug link, it should be quick to identify.
from ada_drivers_library.
Tnx for the tips Fabien. I got a partial lib built for it. Pll locks off of msi 4mhz int clock, gpio is up, timer untested but Ada realtime works, I2C works, spi untested. I have enough working now to put in my make with Ada project using that tiny platform. Once the lib built clean, I had two minor bugs in my app but none in the lib. Found a couple of svd file errors for the part. Wonder how they validate those files...
from ada_drivers_library.
That's awesome!
I will close this issue and wait for your pull requests 😉
from ada_drivers_library.
Related Issues (20)
- Access to FE310-specific performance counters HOT 10
- FE310-specific performance counters HOT 1
- install_dependencies.py appears to be broken HOT 2
- Some examples do not build HOT 6
- Support LSM303AGR for newer micro:bit hardware revisions HOT 1
- Target not found for Micro:Bit with Debian Linux HOT 3
- Project Wizard doesn't generate startup files HOT 3
- Include directions in examples/README.md to have compatible versions of bb-runtimes and compiler
- Support for Adafruit Feather M0 board HOT 3
- mma8653 initialization fails on MicroBit HOT 21
- EXAMPLES: Installing run-time dependencies fails with both Python 2 and Python 3 on Linux HOT 2
- Make HAL packages preelaborable HOT 1
- I2C HAL ideas HOT 15
- Many warnings with GCC 12 HOT 2
- RISC-V requires "zicsr" ISA extension to build with FSF GNAT 12.1.1 HOT 11
- IO expander MCP23x08 reports GPIO mode always as Output HOT 1
- Support for STM32F411CEU6 board HOT 1
- Extension zicsr required in HiFive1_rev_B board
- Microbit.Time resets the board
- How to get the toolchain up and running? HOT 15
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 ada_drivers_library.