C8051F012-GQR vs MB9BF168RPMC-G-JNE2
| Part Number |
|
|
| Category | Embedded - Microcontrollers | Embedded - Microcontrollers |
| Manufacturer | Silicon Labs | Cypress Semiconductor Corp |
| Description | IC MCU 8BIT 32KB FLASH 32LQFP | IC MCU 32BIT 1.03125MB 120LQFP |
| Package | Tape & Reel (TR) | Bulk |
| Series | C8051F01x | FM4 MB9B160R |
| Operating Temperature | -40°C ~ 85°C (TA) | -40°C ~ 125°C (TA) |
| Mounting Type | Surface Mount | Surface Mount |
| Package / Case | 32-LQFP | 120-LQFP |
| Supplier Device Package | 32-LQFP (7x7) | 120-LQFP (16x16) |
| Voltage - Supply (Vcc/Vdd) | 2.7V ~ 3.6V | 2.7V ~ 5.5V |
| Speed | 20MHz | 160MHz |
| Number of I/O | 8 | 100 |
| EEPROM Size | - | - |
| Core Processor | 8051 | ARM® Cortex®-M4F |
| RAM Size | 256 x 8 | 128K x 8 |
| Core Size | 8-Bit | 32-Bit |
| Connectivity | SMBus (2-Wire/I²C), SPI, UART/USART | CSIO, I²C, LINbus, UART/USART |
| Peripherals | Brown-out Detect/Reset, POR, PWM, Temp Sensor, WDT | DMA, LVD, POR, PWM, WDT |
| Program Memory Size | 32KB (32K x 8) | 1.03125MB (1.03125M x 8) |
| Program Memory Type | FLASH | FLASH |
| Data Converters | A/D 4x10b; D/A 2x12b | A/D 24x12b; D/A 2x12b |
| Oscillator Type | Internal | Internal |
-
1. What is an embedded microcontroller?
An embedded microcontroller is a device that integrates an entire computer system into a single chip. It usually includes functional modules such as a central processing unit, memory, input and output ports, and timers, all of which are integrated on a single chip. This design enables embedded microcontrollers to perform specific tasks with high flexibility and efficiency.
The main features of embedded microcontrollers include:
Highly integrated: multiple functions such as CPU, memory, and I/O interface are integrated on a single chip, reducing the number of components and system volume.
Strong specialization: Optimized for specific application scenarios, providing a specific combination of processing power, memory, and input and output interfaces.
Efficient and reliable: The integrated design makes the system more stable and reliable, reducing the connection of external components and signal interference.
High flexibility: According to different application requirements, embedded microcontrollers can have multiple derivative products, each with the same processor core, but different memory and peripheral configurations to adapt to different application scenarios. -
2. Is Arduino an embedded microcontroller?
Arduino is an embedded microcontroller platform based on open source hardware and software. It contains a microcontroller (MCU) and related modules that can interact with the external environment through hardware and software. The core board of Arduino consists of a microcontroller and related modules, with basic input and output connections and multiple communication interfaces, including serial ports, SPI and TWI, etc., which can communicate and transfer data with other devices.
Features of Arduino include:
Development environment: Arduino comes with a software development environment that can be programmed in C and C++ languages.
Libraries and functions: It has a rich hardware library and functions for rapid development.
Low cost: It is suitable for hardware development such as sensors, simple robots, thermostats and motion detectors, with low cost and simple operation.
Wide application: It is commonly used in projects such as IoT products, automation control and robots.
Compared with other microcontroller platforms, the advantage of Arduino is its simple and easy-to-use hardware and software tools, which enable electronic enthusiasts and general users to quickly realize various application projects. -
3. What is the difference between an embedded MCU and a PLC MCU?
The main difference between an embedded MCU and a PLC MCU is that their application fields, system architectures, and programming methods are different.
Although both embedded MCUs and PLC MCUs involve MCU technology, their application fields are significantly different. Embedded MCUs are mainly used in non-industrial fields such as consumer electronics, automobiles, aerospace, etc. They emphasize high specificity and flexibility and can be customized according to specific needs. PLC MCUs are mainly used in industrial automation control fields, such as electricity, petroleum, chemical industry, machinery manufacturing, etc. The original design intention is to adapt to complex industrial environments and have strong stability and reliability.
In terms of system architecture, embedded MCUs usually have fixed hardware and software configurations, are designed and developed for specific applications, and hardware and software are tightly integrated to form a complete system. PLC MCUs are based on a modular architecture, and different modules can be added to achieve different functions. Both hardware and software are standardized, which is convenient for users to select and configure.
In terms of programming language, embedded MCUs are usually programmed in high-level programming languages such as C and C++. These programming languages have powerful functions and flexibility and can meet complex programming needs. PLC MCUs are mainly programmed in ladder diagram language. This graphical programming method is simple and easy to understand, which is convenient for users to get started quickly. In addition, it also supports some text programming languages, such as instruction lists and structured text. -
4. What language is used for embedded microcontroller programming?
The main languages used for embedded microcontroller programming include C, C++, assembly language, Python and Rust. These languages have their own characteristics and are suitable for different development needs and scenarios.
C is one of the most commonly used languages in embedded development. It has the advantages of high efficiency, flexibility, and strong portability. It can directly operate hardware and is suitable for low-level driver development, kernel programming, etc. C++ is used in complex embedded systems and adds object-oriented features, which is suitable for the development of large applications. Although assembly language is difficult to learn and write, it is indispensable in scenarios that require high optimization and direct control of hardware. Python is easy to learn and use, and is often used in data processing, prototype development, and rapid testing. Rust is gradually gaining attention in the embedded field due to its memory safety and high performance, especially in applications with high security requirements.

