Electronics > Microcontrollers

Definitions: Microcontroller, Single Board Computer, et al.

(1/6) > >>

There are a number of devices that incorporate all or most of the functionality of a computer in a single chip. There are PIC chips which can be programmed at a low level (machine code or assembly). Then there are various single chip devices that incorporate some kind of higher level programming like Basic or C. And there are single board computers that incorporate one of the above as well as the memory, various forms of advanced input and output, and on board sensors and readout devices (from single LEDs to displays). And sometimes part or all of this advanced functionality is incorporated in the single, central controller chip which is the heart of the single board computer.

What I would like to know is just what are the proper names for these and for any others that I may have left out? AND, what names or terms exist that cover two or more of these groups and most especially for all of them?

This question has been festering in the back of my mind for some time now. I have struggled to find a term that covers all of these devices and have often used "PIC based devices" but I do not know if that is correct or, more importantly, if it conveys my meaning well. If pressed, I might say that "PIC" is perhaps used synonymous with "microcontroller". But I really do not know if that is correct. I mean, why would a Propeller chip or a Basic Stamp or an Arduino or a Raspberry Pi or a PicAxe or any of the others not be called a microcontroller?

I looked at other boards here but this one seemed to be the one with the most traffic in this area. And, after reading the posting guidelines which seemed to discourage posts in this board on any of them except microcontrollers, I glanced at the first page of topic titles finding the Raspberry Pi, which is specifically mentioned in those guidelines as an example of what is not to be talked about here, as part of not one, but two different topic titles. So, apparently this board does discuss a wide variety of these devices. This is just an observation, not meant as a criticism. And part of my reason for posting this question here.

Generally accepted terms:
Microcontroller - computing device with integrated program memory and peripherals.
Microprocessor - computing device that requires external memory and often peripherals.

SBC - a board or a module based on a microprocessor (most often) with required memories and peripherals.

Arduino and other boards like this are just prototyping/development boards. Calling them "a microcontroller" would be wrong and confusing.

Although there seems to be a dedicated thing called Single-Board Microcontroller (https://en.wikipedia.org/wiki/Single-board_microcontroller) for stuff like Arduino. I'm not sure it makes sense to have this as a separate thing.

But then again, you can make a parallel with a programmable logic controller (PLC), which is essentially a Single-Board Microcontroller (as described in the article above) with rugged I//O and a dedicated programming language.

The devices that support higher level languages are still microcontrollers, they just come already programmed with firmware that interprets the lower level language.

The device (IC) itself, sure. But calling Arduino a "microcontroller" is strange. It is like calling a PC system block a "processor", which some people do.

Yeah I'm not arguing that. I would call the Arduino a SBC or microcontroller development board. It is really nothing more than a microcontroller and the minimum "glue" to make it work. There is no interpreter there, just a bootloader.

There are or have been microcontrollers and SBCs that come pre-programmed with BASIC interpreters.


[0] Message Index

[#] Next page

There was an error while thanking
Go to full version