Using frameworks as a virtual platform for programming is a powerful and efficient approach in the world of computers. In this approach, the framework hides the complexity of underlaying software and hardware layers from the developer by providing a well-defined interface so that the developer need not concern about the specific environment but only pay attention to the actual designing task. The framework also makes the creation of platform-independent products possible since the final software will be able to run on any platform for which the framework is available.
Whether this technological approach can be adopted for microcontroller design and if it was profitable to do so, is a fair question. Searching for an answer in this thesis we create an abstraction of the microcontroller which has most of the important characeristics of a real controller. We use this model to define an interpreted language which can be used to target this controller and also addresses and simplifies the implementation of some general tasks when working with microcontrollers. Once the architecture is defined, we test it on a real hardware unit by controlling a board that can be used in various controlling scenarios.