Internships/ProjectIdeas/ArduinoVisualisation:detail: Difference between revisions
No edit summary |
No edit summary |
||
Line 37: | Line 37: | ||
|'''Oscilloscope''': the widget could be connected to any pin showing the updated signal generated by QEMU. | |'''Oscilloscope''': the widget could be connected to any pin showing the updated signal generated by QEMU. | ||
|} | |} | ||
= Execution flow = | |||
[[File:ejecution_flow.png|800px|Execution flow.]] | |||
When the visualizer is run with a board a netlist is selected. The netlist is parsed by the app looking for the widgets used and generating a QEMU execution line. | |||
The QEMU execution line will generate all the interface devices needed and will let ready the core for code execution. |
Revision as of 10:10, 9 March 2020
The QEMU emulated Arduino board visualizer is a platform for QEMU based board emulation interfacing.
Using the inteface a board is defined as a group of *widgets* connected to the Ardunio. Each widget is defined as a block that can have two features:
- User interaction: the user can modify the parameters of the widget.
- Visualization: the widget will show updates of the state of the circuit.
Widgets
Led with brightness: the widget indicates the brightness of the led.
|
Apple | |
Potentiometer: the widget modifies the middle point of the potentiometer configuring a variable voltage to the ADC. | ||
Switch: the widget will be used to turn on/off all the board. The state of the switch is represented with a colored box with text:
| ||
Serial console: the widget will show the updated serial output. | ||
Button: the widget could be modify by the user. While the button is pressed the pin is connected to GND and HiZ when not. | ||
Oscilloscope: the widget could be connected to any pin showing the updated signal generated by QEMU. |
Execution flow
When the visualizer is run with a board a netlist is selected. The netlist is parsed by the app looking for the widgets used and generating a QEMU execution line.
The QEMU execution line will generate all the interface devices needed and will let ready the core for code execution.