In recent years embedded systems have reached more and more domains: mobile phones, tablets, household appliances, home automation systems, sensor networks, and drones are among the use cases.
Manufacturers provide pre-assembled, expandable experimenting and prototyping boards with basic peripherals included. The essence of these kits is that easy integration of a few modules makes it very easy to build moderately complex prototypes. Usually these boards come with programming environments and pre-written libraries. One of the most widely known and used such prototyping board is the Arduino UNO.
The topic of this thesis is to create a simulator running on an ordinary desktop computer which is capable of simulating an Arduino UNO. This board uses an AVR ATmega328P microprocessor, which is a relatively low performance 8-bit processor, but has a low power consumption and is inexpensive. With the help of the simulator, those interested in this system can try it on their computers.