and found that it might be a nice way to introduce me to MPlab and programming at a lower level. Since MPide is pretty much like writing Arduino sketches, I thought that I could easily get used to the microcontroller and later learn how to use Mplab with the same microcontroller. However, I’m clueless when it comes to register stuff and lower level programming and the support that the microcontroller has to learn MpLab programming doesn’t look very good.
Any recommendations? All I want is a microcontroller that would enable me to go more in-depth in MCU programming, to the point where I could maybe get to learn assembler code (maybe that’s asking for too much). I’d then use this to implement it with the Vex Robotics kits that I have.
This is a pretty deep/wide question, with lots of room for differing opinions. You should start with a common 8-bit SOC (system-on-a-chip). There are lots to choose from, but PIC (from Microchip) and AVR (from Atmel) are the most popular architectures. The original VEX microcontroller used a PIC part, and Arduino uses an AVR part.
The PIC and AVR product lines are comparable in terms of device capabilities, available tools, pro to boards, and community support. They both offer parts in “DIP” packages that are easier to prototype with, if you decide you want to breadboard some projects.
So, it comes down to personal preference. I prefer AVR because I find the peripheral registers make more sense to me, and the Harvard architecture used on the PICs needlessly complicates the instruction model (which is why you need “rom” storage qualifiers in PIC C code). I’m sure other folks will have solid reasons they prefer PIC.
As for Arduino, don’t write that off as too high-level. Most Arduino boards include a 6-pin ICSP header that lets you directly program the AVR part. That lets you bypass the Arduino IDE and directly control every byte the executes on the chip. Have a look at [this board as an option for a Vex-compatible Arduino board (you just need F-F gender changers for the port pins).
After you’ve mastered 8b, you can move on the 32b processors if you want; most of the 8b lines have “big brother” chips in the 32b range, though it seems that ARM is the only 32b SOC that the industry is using in volume these days. All of these 32b options will build on what you learn from 8b parts, though they will offer much more power and flexibility at the expense of more complicated peripheral/register sets.
If you can talk a bit more about projects you want to accomplish, I can probably give you some more directed advice rather than just running on