ALTENBURG embedded softwareDomain specific programming languages
Embedded software development
Small IoT control devices
Embedded hardware development using modern microcontrollers with ARM core enables us to quickly build up specific platforms meeting the needs of our customers. We currently focusing on the STM32 family of microcontrollers manufactured by STMicroelectronics as this family provides a broad range of features needed for dedicated control applications coming with outstanding development and debugging tools. We also have a lot of experience with the Renesas M16C/R8C microcontroller family and of cource with many others like ATMEL's AVR.
Technology is the clue. Beside various trends in embedded software architecture, development and testing, the Internet of Things brings up some totally new trends in communication - mainly concerning wireless communication. There is a kind of 'back to the roots' trend in radio telemetry - sending small amounts of data over long distances using narrow bandwiths. In contrast to the ever growing data sizes shuffled over wireless LANs, this technology enables extreme low power devices to become a major part of the Internet of Things.
Embedded BASIC is a new scripting language especially designed to fulfill the needs for customer programmable IoT devices. In order to reduce costs and power consumption such devices have very limited memory resources and they are designed for a special purpose. As todays modern microcontrollers provide all features to build complete and powerful control systems, more and more IoT devices are single chip solutions. Due to their 32 bit architecture and hardware supported floating point operations, such single chip systems can provide an extremly high performance.
The most common programming language for embedded devices is C. But, programming in C still requires a lot of knowledge about the microcontroller itself especially about its internal components, like timers, interrupts and so on. Application programming should hide these complexity from the programmer. This is where scripting languages come into account. They are much easier to learn and use but they usually come as an interpreter - so extra memory will be needed and interpreters can be a performance drawback.
Yes and no! Embedded BASIC is a new scripting language. Yes, it will be executed by an interpreter, but as it is precompiled and domain specific it runs pretty fast! And, You will not be aware of the compiler at all as it runs just in that moment when the script is downloaded to Your system.
Embedded BASIC comes with a complete Realtime-OS, including graphic display support and a bunch of hardware features in just 70kB of FLASH! (measured on STM32F4 optimized for speed -O3). Additionlally there is a dedicated IDE with syntax highlighting, context help, download and much much more.