https://medium.com/@prasadingle25904/unraveling-the-differences-between-microcontrollers-and-microprocessors-def0a4fa8437