I wanted to learn more about electronics, and I found this https://www.open.edu/openlearn/science-maths-technology/an-introduction-electronics/content-section-0 to start from so I can have a grasp on theories first, and I want to try learning microcontrollers afterwards but I can’t afford to buy any IRL atm, are there any softwares to simulate them to assist on learning without having the physical hardware? I’d be happy if anyone could give me any tips toward that, thank you if you read this far
Depends on what your focus is. If you want to build understanding of electronic components and how they interact through experimentation, Paul Falstad’s circuit simulator is a great start.
If you want to focus on digital logic, Logisim is great.
But here’s the thing: A microcontroller is controlled only through code. You want to learn electronics, you can simulate those. You want to learn about a specific microcontroller, read the manual for that controller. You want to learn to code a particular language, you learn that language.
You want to code on a microcontroller, get a microcontroller.
Edit:
Okay, so i was clicking around on Falstad’s site as i haven’t been there for a while and i found a thing called AVR8JS
This is literally what you are looking for! It allows you to set up a circuit, and use a simulated microcontroller to run C code on the circuit!
Are there softwares to simulate enough electronics and microcontrollers to learn?
It depends on what you are looking for. For a quick simulation to get a very rough, and more ideal, visual, you can use something like Falstad. But for anything more practical and useful, I’d recommend using SPICE. There’s lot’s of software out there that implements SPICE [2]. KiCAD offers SPICE simulation [1].
References
- “SPICE Simulation”. KiCAD. Accessed: 2024-11-21T02:26Z. https://www.kicad.org/discover/spice/.
- “List of free electronics circuit simulators”. Wikipedia. Published: 2024-09-07T14:19Z. Accessed: 2024-11-21T02:31Z. https://en.wikipedia.org/wiki/List_of_free_electronics_circuit_simulators.
I want to try learning microcontrollers afterwards but I can’t afford to buy any IRL atm
The perceived expensiveness of things is certainly relative, but I would still argue that the hardware for microcontrollers really doesn’t have to be that expensive [1][2][3][4].
References
- “Pocket AVR Programmer”. Sparkfun. Accessed: 2024-11-21T02:36Z. https://www.sparkfun.com/products/9825.
- “Raspberry Pi Pico”. CanaKit. Accessed: 2024-11-21T02:37Z. https://www.canakit.com/raspberry-pi-pico.html?cid=cad&src=raspberrypi.
- “ATMEGA328P-PU-ND”. DigiKey. Accessed: 2024-11-21T02:37Z. https://www.digikey.ca/en/products/detail/microchip-technology/ATMEGA328P-PU/1914589.
- “Arduino Uno Rev3”. Arduino Store. Arduino CC. Accessed: 2024-11-21T02:40Z. https://store-usa.arduino.cc/products/arduino-uno-rev3.
Give CRUMB a try, I’ve used it for learning basic circuit designs, and it does a pretty good job! I think a great start is trying to get a basic 555 timer going in it, based on publicly available electrical diagrams and descriptions. The analog oscilloscope feature is super fun to play with.
https://store.steampowered.com/app/2198800/CRUMB_Circuit_Simulator/
I think tinkercad is a great place to start. It’s browserbased and doesn’t cost money. It may not have a lot of components, but it still have quite a few more than just resistors, caps and inductors. And it is aimed at newbies and hobbyists, which is reflected in range of the available components. Being able to drag an Arduino into your sketch and have it run your program is neat.
We used to use yenka, when I taught electronics. It was OK for teaching, but I don’t know if I’d recommend it for self-paced learning as a hobbyist. It costs money, requires software installation and is so much more than just electronics that navigating the program can be difficult. And default settings explodes components when you put too much current through them, that alway annoyed me.
Looks like wikipedia has good lists.
https://en.m.wikipedia.org/wiki/Comparison_of_EDA_software
https://en.m.wikipedia.org/wiki/List_of_free_electronics_circuit_simulators
I’ve never used it, but I am intrigued by fritzing, can anyone recommend?
Ive never used it but I know a lot of the people in the Arduino space use fritzing for PCB design
Proteus (closed source, paid) has a whole range of microcontrollers, and I’ve found it to be great (pirated it). There is also Simulide (open source) with a more limited bunch of microcontrollers which I havent used much but was pretty nice.
Both allow you to attach your MCU to external circuits with Proteus in particularly having a wide range of components you can use. They also have tools for measuring and oscilloscopes, etc.