STM32 is a general-purpose embedded microcontroller based on arm Cortex-M3 core launched by Italian semiconductor company. It has the characteristics of flexible design, rich configuration, low cost, strong applicability and high cost performance. It is widely used in industrial control, communication, Internet of things, Internet of vehicles and other fields.
1. Big end format: the high byte of data has a low address, and the low byte has a high address;
Small end format: low address exists in low byte and high address exists in high byte of data.
2. The AMBA on-chip bus standard introduced by arm company includes AHB system bus and APB peripheral bus.
3. The maximum addressing space is 4GB (32nd power of 2). The maximum range of addresses that a CPU can find is called addressing capability. The addressing capability of a CPU is in bytes. For example, a 32-bit addressing CPU can address addresses of the 32nd power of 2, which is 4G. This is why a 32-bit CPU can match 4G memory at most. No matter how many CPUs there are, they can’t be found.
4. Arm instruction set is 32 bits, thumb instruction set is a subset of arm instruction set, and the length of instruction code is 16 bits. ARM core is like a high school, which includes ordinary high school and vocational high school. Ordinary high school is equivalent to arm state, and vocational high school is equivalent to thumb state. If you can’t understand this, you can think of the normal mode and acceleration mode in the bubble go kart. When the go kart accelerates, you have to wait until the gas collecting pipe is full, and then “Ctrl” once, you switch to the acceleration mode, and when the gas is released, you come back again. No matter the acceleration mode or the ordinary mode, you are running, It’s just that the speed is different.
The arm state and thumb state can be switched directly through some instructions. They are both running programs, but the length of instructions is different. This concept is very important for beginners, because when the arm thumb is not clear, how can we understand the two states?
The relationship between them is clear, so that we can have an in-depth understanding of what the arm state is and what the thumb state is.
In addition: M series of arm mainly use thumb instruction, ARM9 and a series mainly use arm instruction
There is no thumb instruction in S3C2440. S boot code.
5. A pointer to a function is called a function pointer, which stores the first address of the function module, that is, the entry address of the function.
Source: China electronic network