5 ms·
This is actually pretty great. I was looking for a way to dip my toes into low level stuff. After skimming a bit it seems very focused on hardware though. Out o
by RMPR 6y ago
This is actually pretty great. I was looking for a way to dip my toes into low level stuff. After skimming a bit it seems very focused on hardware though. Out of curiosity how does it compare to https://jaycarlson.net/embedded-linux/ https://jaycarlson.net/embedded-linux/ ?
- jimmyswimmy 6y agoMost of what embedded is, is hardware. To build the low level software and drivers requires a detailed understanding of the hardware and its datasheets. It would be pretty hard to give a generic overview of the software side these days, because there is just so much out there. I mean you have the TI parts for the beagle bone which have a pair of microcontrollers on them each having access to the same memory as the main processor. There's the video processor on Broadcoms chip in the raspberry pi. Understanding any of the details of these components requires understanding most of thousands of pages of documentation. Most people wait for someone else to do it for them! In the old days the only peripherals were timers and ADCs. You could make a generic and useful tutorial for those. Not anymore!
- diydsp 6y agoAfter a few decades in the biz I'm seeing things change. Almost all drivers these days are written. Embedded is more about integration. It's also interconnected with many web-based tools and operating systems.
- m-ee 6y agoI wish all drivers were written. Aside from things like arduino/pyboard the choice in my experience has been using some massively bloated questionably tested vendor code or just going to the data sheet and writing it yourself.
- markus_zhang 6y agoJust curious, is it possible to be good at digital circuit without studying analog circuit? I figured by skipping AC I might miss a huge part of the picture.
- dbuder 6y agoEverything is analog, your rise time, your standing waves, your sensors and everything has parasitics. My rule of thumb is that anytime you tell yourself you will avoid learning something in electronics you will eventually have to learn it. That said, you can get a very long way by knowing almost nothing at all beyond high school science and playing lego, and I'm not talking about arduino at all. Need an Analog Front End? Take one from a reference design, take their code while you are at it. Want to know what is messing with your circuit? Learn and understand Maxwell's equations, or put it on a scope and google about. If you want to get products manufactured there is a lot to learn but if you do normal well understood things you don't need to be brilliant or talented.
- tedfernau 6y agoI wouldn’t say Maxwells equations are necessary to accomplish almost anything in embedded systems, or even in most of electrical engineering.
- markus_zhang 6y agoThanks, I got the idea. So basically the deeper you go the more fundamental you have to go back, right? I'm also considering a bottom up method that starts from (re)learning circuits from high school physics classes. Back then, IIRC we also used breadboard and I very much enjoyed the experiment part of the course. Plus it might help the kid in the future.
- petee 6y agoCheck out "Introductory Microcontroller Programming" by Peter Alley (to be clear, not me.) for Wocester Polytech; I came across this by accident the other day - [pdf] https://web.wpi.edu/Pubs/ETD/Available/etd-042811-095908/unrestricted/alley.pdf https://web.wpi.edu/Pubs/ETD/Available/etd-042811-095908/unr... Over the period of being the TA for these courses multiple times, I learned a great deal, but also noticed several recurring issues the students seemed to face. In addition to furthering my own knowledge on the care and feeding of microcontrollers, this thesis is an attempt to provide students with a resource to overcome some of their difficulties, to provide a better understanding of the hardware level operation of a microcontroller, and as instruction into improving their knowledge and code. edit: in addition, for really low level hardware, check out Ben Eater's series on YouTube building a breadboard 6502