It’s been a few months now since ST introduced STM32Java development environment based on MicroEJ solution. Here is a brief look back at this successful launch that received an innovation prize in June.
The STM32Java development environment provides everything needed to build embedded Java applications supported by STM32 MCU series. It includes an IDE with a Java compiler, several Java platforms especially optimized for STM32 MCUs, standard libraries and related tools. It is a solution to easily and quickly develop appealing Graphical User Interfaces (it enables to integrate simulation design techniques similar to those used in smartphones) relying on the Model-View-Controller triad.
The GUIs are flexible and really easy to maintain because they’re based on the Java technology. One of the major benefits of Java is OOP (Object-Oriented Programming) which is perfect for software modularity and loose coupling between the different parts of software architecture. It also substantially simplifies maintenance of applications. The virtualization, the multi-tasking, the garbage collector, etc. concepts bring huge additional benefits: RAM usage optimization, run-time exception checking, development and debugging support, portability, etc. It all leads to higher development productivity and time saving. More generally speaking, we think that software productivity and scalability are greatly improved compared to traditional developments in C/C++.
By the way, STM32Java is compatible with C code. Applications can mix C (legacy control or command code for example) with Java seamlessly through lightweight libraries making these two worlds communicate together. Some other useful widget libraries are also available as well as tools like Storyboard Tool, Font Designer, and a simulation tool to quickly evaluate the GUI’s behavior on a PC, using the very same Java code as developed for the target hardware.
Running STM32Java programs based on MicroEJ requires features that are embedded on special STM32 MCU.