1. Software
This is probably the biggest difference. The operating system was introduced. Why was the operating system introduced? What are the benefits?
1) Convenience. This is mainly reflected in the later development, that is, developing applications directly on the operating system. Unlike a single-chip microcomputer, everything needs to be rewritten. The early operating system transplantation work still needs to be done by professionals.
2) Security. This is a feature of LINUX. The memory management of the LINUX kernel and user space is separated, so the system will not crash due to a single program error of the user. This has never been seen in the software development of single-chip microcomputers.
3) Efficiency. The introduction of process management and scheduling system makes the system run more efficiently. In traditional single-chip microcomputer development, most of them are based on interrupt foreground and background technology, which has limitations in the management of multiple tasks.
2. Hardware
The current 8-bit microcontroller technology hardware is developing very fast, and many very powerful microcontrollers have appeared. However, there is still some gap compared with 32arm.
Most ARM chips integrate SDRAM, LCD and other controllers into the chip. In 8-bit machines, most of them need to be expanded externally.
In general, a MCU is a microcontroller, and ARM is obviously a microprocessor.
After the introduction of embedded operating system, many functions that single-chip system cannot complete can be realized. For example: embedded web server, Java virtual machine, etc. In other words, there are many free resources to use, and the above two services are examples. If you develop these functions on a single-chip computer, you can imagine the difficulty.
How do beginners choose ARM development hardware?
1. If you have experience in hardware and single-chip microcomputers, it is recommended that you make a minimum system board yourself: If you have never done ARM development, it is recommended that you do not be greedy for perfection at the beginning, and make all the applications well, because the startup method of ARM is different from that of DSP or single-chip microcomputers, and you often encounter various problems. Therefore, it is recommended to first lay out a small system board with only Flash, SRAM or SDRAM, CPU, JTAG, and reset signals, leaving an expansion interface. If the minimum system can run normally, your task is half completed. Fortunately, the peripheral interfaces of ARM are basically standard interfaces. If you have experience in wiring these hardware, it is a very easy thing for you.
2. Write the startup code. According to the hardware address, write a small code that can be started, including the following parts:
Initialize the port, shield the interrupt, copy the program to SRAM; complete the code remapping; configure the interrupt handle and connect it to the C language entry. You may see that the bootloader has a lot of things in some sample programs given to you, but don't be bothered by these complicated programs, because you are not making a development board, your task is to make a small program to make your application run.
3. If you are working on hardware, each manufacturer basically has a DEMO board schematic for the chip. Digest the schematic first. This way, when you design in the future, you will have a clear idea of how to allocate resources. You must digest the device's DATSHEET well.
4. Carefully study the information of the chip you are using. Although ARM is compatible in terms of the kernel, each chip has its own characteristics, and these issues must be considered when writing programs. Especially for girls, don't be dependent here. You always want to modify other people's sample programs, but the more you modify them, the more messy they become.
5. Read more operating system programs. There are many open source programs for ARM applications. If you want to improve yourself, you should read more programs from others. Linux, UC/OS-II, etc. are all very good source codes.
6. If you are doing software, it is best to have some understanding of the operating system mechanism. Of course, this is a piece of cake for software engineers. But if you are a hardware engineer, it will be a bit difficult.
Q: Is it better to make a minimum system board with 2 layers or 4 layers?
Answer: Only AT91 can use two-layer boards, and the others can use at least 4 layers. If the ground and power supply of 44b0 are well processed, two-layer boards can also be used.
Previous article:STM32 learning exploration: the realization of running lights
Next article:ARM Some Summary
- Popular Resources
- Popular amplifiers
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- LED chemical incompatibility test to see which chemicals LEDs can be used with
- Application of ARM9 hardware coprocessor on WinCE embedded motherboard
- What are the key points for selecting rotor flowmeter?
- LM317 high power charger circuit
- A brief analysis of Embest's application and development of embedded medical devices
- Single-phase RC protection circuit
- stm32 PVD programmable voltage monitor
- Introduction and measurement of edge trigger and level trigger of 51 single chip microcomputer
- Improved design of Linux system software shell protection technology
- What to do if the ABB robot protection device stops
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- Share the C language program of FIR filter implemented by MSP430 microcontroller
- [2022 Digi-Key Innovation Design Competition] CAN Communication Data Display Terminal
- How to design high frequency (>100K) ultrasonic sensor processing circuit
- A design scheme of smart water meter controlled by NFC
- Oscilloscope waveform jitter can be turned into stable waveform by setting trigger properly
- How to measure the noise floor of an oscilloscope
- PLC online monitoring control cloud configuration software SCADA
- Is this dime-sized millimeter-wave sensor evaluation board worth trying?
- Xintang M2354 Fault Injection Attack Protection
- Date in spring - go to the beach and relax