Let's talk about this algorithm in detail.
For example, there is a one-dimensional array with 96 elements. I want to divide it into 32 columns and 3 rows, and then into 16 columns and 6 rows. I also want to take the table elements from the head of the row and column respectively. For example, tab[]={0x08,0xa0,.......,0xff}; (You may think of dividing it into a multidimensional array and then using two for loops, such as for(int i=0;i<3;i++)
{
for(int j=0;j<32;j++)
tab[i][j];
}
But it’s still not flexible enough)
How can I change it flexibly? It is impossible to list two data tables, right? I thought hard for two days and looked up old books. Finally, I used a shift method. First, I took the element count from its array table, and then did the shift and addition and subtraction operations.
I did a test and the result was quite good. See the picture
In this way, you can get the size of the table and change the values of a, b, 4, 5. To get the desired result. This can be made into a small subroutine. The compiled file is also quite small, suitable for selecting larger element tables. Sometimes short statements are not an advantage (in microcontrollers). Statements that are suitable for machine reading are good. Of course, which is better, 2+2 or 2*2? The machine knows, I believe, you know... If you can save the loop statement occupying MCU system resources. Haha, why not?
Previous article:How to write a microcontroller program
Next article:Detailed explanation of the connection between MCU and 8255 chip
- Popular Resources
- Popular amplifiers
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- 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
- TMS320C6748 DSP Development Kit
- CRC16 algorithm code for UDMA
- TI CC1310 Problem Summary
- Thank you everyone, Shenzhen Xiaohua is back
- Popular Science: Discover How Smart Homes Work
- Is there any example of Cadence signal integrity?
- The functions of handheld devices realize information management in various industries
- [Silicon Labs BG22-EK4108A Bluetooth Development Evaluation] 1. Development Board Unboxing and Environment Setup
- Five solutions to common wireless transmission delay problems
- I am quite confused about the following constant current circuit