I've been using and programming 8051 controllers for decades now, and although they're still being updated by some manufacturers (to the point of making them single-cycle devices, and with in-system programming and other features), and can still handle a lot of complicated tasks, I'm giving serious consideration to learning how to use a recent model that is not constrained to an 8-bit architecture. This is mainly because of maximum code size, the lack of higher than 8-bit functions and registers, and the speed at which they run, which is a bit limited compared to newer technologies. The model that I'm most familiar with is the AT89LP4052, although I've used other atmel 32 pin devices before.
I'm not attracted to arduino nor raspberry, since (although they seem powerful) I consider those devices to be too high end for what I intend to use them for.
I've been programming in assembly all my life, and I'm no big fan of C. This is because most of my applications are time-critical, and I have to know exactly what instruction is being performed at the MCU at all times.
So far I'm considering ARM and AVR as possible substitutes for the 8051. What do you think? Which device that you are familiar with would you recommend for me to start learning, considering that I intend to program it using assembly? Also, it must have at least one UART port. And USB capability would be nice, but not essential.
I'm not attracted to arduino nor raspberry, since (although they seem powerful) I consider those devices to be too high end for what I intend to use them for.
I've been programming in assembly all my life, and I'm no big fan of C. This is because most of my applications are time-critical, and I have to know exactly what instruction is being performed at the MCU at all times.
So far I'm considering ARM and AVR as possible substitutes for the 8051. What do you think? Which device that you are familiar with would you recommend for me to start learning, considering that I intend to program it using assembly? Also, it must have at least one UART port. And USB capability would be nice, but not essential.