Oberon STM32F429I-DISCO station
# oberon_stm32f4
Portage of Oberon system to stm32f429i-disco board
Version 2 released!
Improved SD card write reliability
Improved VGA signals
Improved keyboard support
PS/2, RTC, nRF24L01+ (CRC + SPI) drivers ported from C to Oberon
Minor bugs correction
# Changes in oberon 07 compiler:
Registers usage control in procedures
Cortex M4 microcontrollers save automatically a set of registers on stack when servicing an interruption.
If an Oberon exception handler contains too complicated expressions, there is a risk that a non saved register is used.
To prevent that case to happen, I introduced a new notation ^n after the PROCEDURE keyword:
PROCEDURE^3 handler;
BEGIN ....
END handler;
With this information, the compiler can check that no more than n register are used. The save/restoration instructions are automatically generated according to the declared number of used registers.
Unsafe local variables marking
This Oberon compiler allow allocation of unitialized pointers on stack.
Those pointers are not checked at runtime, so they are not safe until they are properly intialized.
I made a change in the compiler to allow detection of the declaration of local variables containing pointers.
The developer must check the code to be sure that no bad use is made with these variables.
For example, assume that a Files.Rider is declared as a local variable. Using of the "file" member (eg. via Files.Base) is unsafe until the rider has been initialized with Files.Set.
When the developer has determined that the code usage of the local variable is safe, he or she must mark the variable with an exclamation mark (!) in its declaration.
Oberon STM32F429I-DISCO station
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.

Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW
ESP32-S3 4.3inch Capacitive Touch Display Development Board, 800×480, 5-point Touch, 32-bit LX7 Dual-core Processor
BUY NOW
Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW- Comments(0)
- Likes(1)

-
Engineer Apr 13,2024
- 1 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10

-
10design
-
10usability
-
10creativity
-
10content
More by Christian Schoffit
-
-
Nintendo 64DD Replacement Shell
98 0 1 -
V2 Commodore AMIGA USB-C Power Sink Delivery High Efficiency Supply Triple Output 5V ±12V OLED display ATARI compatible shark 100W
171 4 1 -
How to measure weight with Load Cell and HX711
342 0 3 -
-
Instrumentation Input, high impedance with 16 bit 1MSPS ADC for SPI
478 0 0 -
RGB LED Matrix input module for the Framework Laptop 16
752 0 2