Today, I would like to share with you my views on the characteristics of microcontroller, ARM, FPGA, and embedded development. If there is any omission, I hope you will leave a message to remind me.
1. Features of SCM:
(1) Restricted by the degree of integration, the on-chip memory capacity is small, generally the internal ROM: less than 8KB;
(2) Internal RAM: less than 256KB.
(3) High reliability
(4) easy to extend
(5) Strong control function
(6) Easy to develop
2. Features of ARM:
(1, comes with cheap program memory (FLASH) and non-volatile data memory (EEPROM). These memories can be written repeatedly, which makes the program development experiment more convenient and work more reliable.
(2) High speed, low power consumption. The working speed of the AVR microcontroller is 30-40 times that of the M51 microcontroller under the condition of the same external crystal vibration. And add the sleep function and CMOS technology, so that its power consumption is much lower than the M51 microcontroller.
(3) Industrial grade products. With large current output can be directly driven ××× and relay, a watchdog timer, to prevent the program to fly, thus improving the anti-interference ability of the product.
(4) super function simplified instruction, with 32 general working registers, equivalent to M51 microcontroller in 32 accumulators! The bottleneck effect of the single accumulator is overcome.
(5) The program is easy to download. AVR microcontroller can be downloaded in parallel or serially, without an expensive programmer. In addition, it can be downloaded online! That is to say, you can modify and burn the program directly on the circuit board.
(6) With analog comparator, pulse width modulator, analog-to-digital conversion functions. It makes analog signal processing in industrial control more simple and convenient.
(7, parallel port, timing counter, interrupt system and other important resources of the SCM internal functions have been greatly improved so that it is more suitable for the real-time control of the industrial production process.
(8 )its clock frequency can be connected to the external or use the MCU internal oscillator, its frequency can be set in 1MHz-8MHZ, making the hardware development and production more concise.
(9) Powerful communication function, built-in synchronous serial interface SPI, universal serial interface UART, two-wire serial bus interface TWI(I2C), make network control, data transmission more convenient.
(10) Super secret function, the application can use multiple protection lock functions. It can quickly complete the commercialization of manufacturers’ products at low prices and so on. In addition to the above features, “zero peripheral” is also an important feature of the AVR embedded microcontroller. Because the chip has built-in program memory, crystal oscillator, and increased online assembly function.
So AVR microcontroller chip connected to the DC power supply, download a program that can work independently. No additional external equipment, no need to use expensive programmers and emulation devices. This has brought us convenient conditions for learning and development.
3. FPGA features:
(1) The design of ASIC circuit using FPGA (special-purpose integrated circuit), users do not need to chip production, can get the common chip.
(2)FPGA can be used as a pilot sample of other full-customized or semi-customized ASIC circuits.
(3) There are abundant triggers and I/O pins in FPGA.
(4)FPGA is one of the devices with the shortest design cycle, the lowest development cost, and the lowest risk in the ASIC circuit.
(5)FPGA adopts high-speed CMOS technology, low power consumption, and can be compatible with CMOS and TTL levels.
It can be said that the FPGA chip is one of the best choices for the small-batch system to improve system integration and reliability.
FPGA is stored in the chip RAM program to set its working state, so it is necessary to work on the chip RAM programming. Users can use different programming methods according to different configuration modes.
When power-on, the FPGA chip reads the data from EPROM into the on-chip programming RAM. After the configuration is completed, the FPGA enters the working state. After power down, the FPGA recovers into a white chip, and the internal logic relationship disappears. Therefore, the FPGA can be used repeatedly. FPGA programming does not need a special FPGA programmer, just use the general EPROM, PROM programmer can. When you need to modify the FPGA function, just change an EPROM. In this way, the same FPGA, different programming data, can produce different circuit functions. Therefore, the use of FPGA is very flexible.
3. Features of embedded system
The system kernel is small
Because the embedded system is generally used in small electronic devices, the system resources are relatively limited, so the kernel is much smaller than the traditional operating system. For example, in the ENEA OSE distributed system, the kernel is only 5K, and the Windows kernel? There’s no comparison.
② strong specificity
Embedded system is highly personalized, in which the combination of a software system and hardware is very close, generally for the hardware of the system for transplantation, even in the same brand, the same series of products also need to be modified according to the changes and changes of the system hardware. At the same time for different tasks, often need to make major changes to the system, the compilation and download of the program should be combined with the system, this kind of modification and the general software “upgrade” is completely two concepts.
③ system simplification
Generally, there is no obvious distinction between system software and application software in embedded systems, so it is not required to be too complicated in functional design and implementation. This helps to control the cost of the system on the one hand, and also helps to achieve system security on the other.
④ High real-time system software (OS) is the basic requirement of embedded software. And the software requires solid-state storage to increase speed; Software code requires high quality and reliability.
(5) If embedded software development wants to move towards standardization, it must use a multitasking operating system
Applications of embedded systems can run directly on a chip without an operating system. However, to reasonably schedule multiple tasks, utilize System resources, System functions and interface with expert library functions, users must select the RTOS (Real-time Operating System) development platform by themselves, to ensure the real-time performance and reliability of program execution, reduce development time and ensure software quality.
⑥ Embedded system development needs development tools and environment.
Due to its itself cannot develop bootstrap, even after the completion of the design of the user is usually can’t modify the program function, must be to develop a set of development tools and environment, these tools and the environment is generally based on general computer soft hard piece of equipment and a variety of logic analyzer, mixed-signal oscilloscope, etc. Development often has the concept of host and target machine, the host is used for the development of the program, the target machine is the final execution machine, development needs to be combined alternately.