Embedded Systems Tutorials With PIC MCUs | Final Episode

Previous Tutorial Previous Tutorial End of The 1st Edition Next Tutorial Next Tutorial
Concluding The 1st Edition Of Embedded Systems Tutorials (With PIC MCUs)

 

Congratulations to everyone who have been following my embedded systems tutorials up to this point. Up till now, you’ve approached reading ~100k words of tutorials. That’s a lot of information indeed. You should have also completed +20 practical LABs. And have built your own firmware drivers for various modules as well as interfacing some sensors.

In this post, i’ll conclude everything we’ve done up till this point. Then, I’ll state the roadmap for the 2nd edition of this series of tutorials, what’s going to change, what I’m going to publish, and what you need to learn next. So, bare with me till the end!

[toc]


   What We’ve Done So Far   

 

The First Edition of “Embedded Systems Tutorials” series had a couple of goals that are, hopefully, met in the meantime. First of which is to introduce the readers to the fundamentals of embedded systems on both sides firmware & hardware. The main target was to get as much information about the underlying fundamentals as possible. That’s why there were only 1,2, or 3 practical LABs after introducing each hardware module (e.g. Timers, CCP, UART, SPI, etc).

At this point, after completing the last 21 tutorials, we should have almost completed everything in the following checklist of goals.

☑ Introduction To Embedded Systems

☑ Fundamental Concepts For Embedded Development 

☑ Introduction To Microcontrollers Programming

☑ Developing Embedded Projects With Microchip PIC MCUs

☑ Bare-Metal Embedded-C Programming

☑ Basic Sensors Interfacing

☑ Driving Actuators (e.g. Stepper, DC motors)

☑ Developing Basic Device Drivers For Various Peripherals (e.g. Timers, PWM, Serial ports, etc)

☑ Efficient Utilization & Handing of interrupt Signals

☑ How To Establish a Successful Serial Communication (e.g. MCU<->MCU, MCU<->PC, MCU<->Phone)

☑ How To Read & Get The Info You Need From a Datasheet

 

 


   What’s Next?   

 

The orientation of my website is to provide both informative tutorials in a systematic manner and also personal thoughts about technical topics. The ultimate goal is to publish as much useful content as I can. That’s why I’m going to start publishing tutorials about electronics which every embedded systems enthusiast needs to know. Alongside the 2nd edition of this “Embedded Systems Tutorials” series.

The 2nd Edition Will Be Shooting For The Following Targets

☑ +35 Practical Projects

☑ Interfacing More Sensors & Modules

☑ Introducing New Microcontrollers & Architectures

☑ More Serial Communication Ports (e.g. I2C, CAN, USB, etc)

☑ Building User-Friendly Interfaces (e.g. LCDs, Graphical OLED, etc)

☑ Dealing With Analog Signals & Audio (e.g. ADCs, DACs, MP3 Player, etc)

☑ … Maybe Extra Few Topics

After completing the first edition, I’ve already received a tremendous amount of kind emails, donations, and love of you guys. That’s why I’m working on this 2nd edition. And we can take it a little bit further with your support.

Perspective on The Electronics Tutorials

These tutorials are going to be published on a regular basis with no specific order. Geared towards all electronics enthusiasts. As well as embedded systems engineers those who are willing to get more information about hardware electronics stuff. I hope you find it helpful and enjoy it. 

 


   What You Should Do Next   

 

The main reason for choosing an old PIC MCU as a hardware platform to practice all the tutorials in the “1st Edition” was the availability of simulation tools that can help you build, run, and debug your applications with the minimum overhead of dealing with physical hardware stuff. However, it’s not the way to go thereafter. It was a newbie-friendly introductory way to get yourself familiar with the process.

I’ll do my best in crafting the tutorials of the 2nd edition of this series. But all in all, there are many tasks for you to do. And numerous skills you need to sharpen, so go through the following checklist to find out what you’ll have to learn next

☑ Practice C-Programming. A lot!

☑ Learn Real-Time Operating Systems (RTOS)

☑ .Start Developing ARM-Based Embedded Applications

☑ .Learn Basic Networking

☑ .Sharpen Your Analog & Digital Design Skills

☑ .Get Professional Software & Hardware Testing Training 

 

There is no silver bullet. There is no single course, book, or website to give you all the information you need to be “Good” at something.

Take the time and the effort to dig deep into documents (like datasheets, app notes, etc). Deep google the technical forums to find real “Treasures” of information here and there. There are generous experienced people in our community who take the time to post informative comments. So make sure you keep learning from whatever resource you come across. And never wait for the ultimate course, book, or whatever to help you, Because it doesn’t and will never exist.

 


   Recommended Resources   

 

I highly recommend only reading the datasheet for developing MCU-Based applications. Nobody can tell you as much as the original manufacturers of these devices. The same goes for all electronics, sensors, and modules.

To learn embedded systems, computer architecture, c-programming, and electronics, I highly recommend the following textbooks.

Computer Organization Embedded Systems With ARM Embedded Systems By Jonathan
The Art of Electronics Embedded Systems And RTOS The C Programming Language Book

 

 

 

 

 

 

Previous Tutorial Previous Tutorial End of Edition 1 Next Tutorial Next Tutorial
Share This Page With Your Network!
Join Our +25,000 Newsletter Subscribers!

Stay Updated With All New Content Releases. You Also Get Occasional FREE Coupon Codes For Courses & Other Stuff!

Photo of author
Author
Khaled Magdy
Embedded systems engineer with several years of experience in embedded software and hardware design. I work as an embedded SW engineer in the Automotive & e-Mobility industry. However, I still do Hardware design and SW development for DSP, Control Systems, Robotics, AI/ML, and other fields I'm passionate about.
I love reading, writing, creating projects, and teaching. A reader by day and a writer by night, it's my lifestyle. I believe that the combination of brilliant minds, bold ideas, and a complete disregard for what is possible, can and will change the world! I will be there when it happens, will you?

Leave a Comment