Tool methodology (reproduced)

Reprint address: http://www.wtoutiao.com/p/1c3pU03.html

 

I found that people often ask questions about libraries on the Internet. Let me talk about my understanding. I have been doing embedded for a long time, and I have contacted a lot of construction. Maybe my point of view can give you some reference. 

What is a library? Before I came into contact with stm32, I played with lpc and s3c series of arms. When programming these chips, programmers spend a lot of energy on operating registers, and they cannot guarantee that their operations are stable and correct. After ensuring the correct operation of the registers, the programmer can focus on the application and the system, and the application and the system, for the programmer, are often more meaningful than the understanding of the registers of the chip itself. Because the chip is just a tool, after you understand the register operation of a chip, you need to re-understand the register operation of the new chip when you play with it. For learners, it is necessary to learn registers, because you want to complete the accumulation of knowledge (quantitative change). However, mature embedded engineers want to spend as little time as possible on the chip itself, because they want the product development cycle to be as short as possible. Mature embedded engineers will spend a lot of time researching application and system frameworks, because these things can be used on any chip architecture and are unchanged (thinking). No matter how the tool (chip platform) is changed, it is the same thing - just a processor. Because of this consideration, st has released a library for the stm32 chip. The so-called library is for the stm32 chip, which writes all register operations as functions, provides function APIs to programmers, and can ensure the stability of these functions. correctness. The programmer will be freed from the tedious work of manipulating registers. When you need to use a certain module of stm32, you only need to look through the api calling method of the library, or find the routine, and you can easily use the function (api) in the library to operate a certain module of stm32. In my case, I didn't know what stm32 was until March of this year. Now, I have written more complex programs including various driver routines and cool system (Q-OS) on stm32, but I really don't know how a module of stm32 operates registers. , because I have been using the library. 

Now many learners are putting the cart before the horse. The original st out of the library is to free the programmer from the complicated operation of registers. But now inexperienced beginners are desperately trying to understand how the library is implemented and how the registers are manipulated. There is a kind of module that seems to want to play, you must understand the concept of register operation and so on. These concepts can not be said to be incorrect, because I can understand the desire of beginners to explore the unknown world. However, in this way of learning without paying attention to the method, the final result is that the learner runs into the wall everywhere, no one asks the question, and can't find the answer when looking for the answer. 

The point I agree with is that for a beginner who has only been exposed to microcontrollers. Don't use a set of methods for learning single-chip microcomputers on stm32. Beginners can rest assured. When learning for the first time, they don’t pursue the specific implementation of the library, don’t ask how to operate the registers, just call the library’s api with confidence, and believe in the reliability of the library (in fact, it is really good. reliable). Do more research on what APIs each module in the library has, how the APIs are used, what parameters are there, what values ​​are returned, etc. I believe this is very simple, because many APIs know how to use them just by looking at their names, not to mention that there are so many routines and documents on the Internet for reference. Then organize these APIs, write interesting applications you want, increase your interest in embedded, and protect your confidence. Remember, you are enjoying the speed and convenience that the library gives you the first time! When you have an understanding of each module of stm32, when you learn it for the second time, because you have a global view and confidence, you will be patient, pick a module at random to study the implementation of the library, and study how to operate registers and registers. What skills are there to operate and so on. I believe this time, the difficulty has been greatly reduced. 

Using the method I mentioned, going deep and learning to guide yourself can greatly reduce the difficulty of learning and let yourself really understand what stm32 is. Always remember that libraries and stm32 and other chips are just tools. Mastering tools is a must, but the key to the core is thinking!

Let me take this opportunity to introduce to you the "tool thinking method_theory" that I have summarized, and I hope to communicate with you! 

In the past two years, I have been exposed to a lot of things, and I am a person who can't be idle, with a wide range of interests and unlimited energy. The more experience you have, the more you will naturally understand, and the more you understand, the more things you will see. What I write here today is my own philosophy of life that I have shaped over the past few years. I don't know if this set of method theory is suitable for others, but as far as I am concerned, it has been able to help me solve all things in my life. I hope that people who read my article can think the same way about their own thinking. Or learn from my method. 

It will be better if you understand Wang Yangming's psychology before referring to my methodology. My methodology, entirely based on psychology, is just a practical extension. 

I have been a governor since high school, and I know how to work hard for what I want. At that time, I worked hard for a good university to overcome the most primitive human weaknesses in my heart, such as laziness, weakness, and vanity. Although I didn't know how to guide myself like today, it was precisely because of this difficult environment that I had the most basic understanding of my emotional intelligence, and I knew how to restrain myself, and I took the first step for my future success. step. 

In college, like many people, I wanted to realize my own value, and I wanted to make money to support myself. So I did a lot of things, student work, tutoring, selling newspapers, making sales calls, whatever I wanted to try, I tried hard. It is precisely because of this little bit of incident that I began to know how to observe and think, and to explore my innermost thoughts. 

When I was in college, I completed two accumulations of knowledge. One was the accumulation of knowledge about graphic design and web design. I studied for more than a year. I once hoped to make money by making websites to support myself. The second is the accumulation of embedded devices. The moment I contacted the microcontroller, I knew that embedded devices had been handed over to me for the rest of my life, and embedded devices would definitely become the most important tool in my life. Because of these two accumulations of knowledge, I completed it by self-study, no one taught me anything, everything was done by myself. So I deeply believe that there are many paths that no one can learn from, and that only by walking on your own can you come out. It is also these learning experiences that I began to know how to guide myself. I once wrote an article "The Last Words Written in University", which is about how to find my own interests and use my interests to overcome the difficulties encountered in learning. to overcome the weaknesses of human nature. 

After graduating, I also made my own product and started my own business. Of course, reality hit me hard. I've also switched jobs several times, but none of them turned out to be the jobs I wanted. I was at a loss for a while, not knowing what the future would hold, not knowing if there was a suitable job for me in China. I was also crazy for a time, trying to learn new things, hoping that new things can bring me more competitiveness and let the applicants know that I am a good horse. I kept asking questions about my life and thinking constantly. On this basis, two things changed me. 

The first thing is that I read a book called "Things in the Ming Dynasty", maybe most people read this book as a novel. But I have always been a person who likes to think a lot. For me, I have learned more from this book than a novel. At least, after I knew Wang Shouren and the study of the mind, I realized that all the thoughts I had summarized before were based on the fact that others had summarized them (of course, my summary is far worse than that of Wang Shouren, only It can be said that I have a tendency to develop in this direction in my own method summary). I began to become an idealistic person, and I used life experiences to talk to my heart more thoroughly. 

The second thing is that I started to invest in stocks. Since November 2009, I entered the secondary market with my dream and 10,000 yuan. Of course, I am not a god of stocks, and the reality is cruel. Although I have a little conceit, but 10,000 or I lost 3,000. Now I don't remember the heartache at that time, but I know that I must persevere. I have mentioned more than once in my writings that there are many factors that promote success, but there is only one factor that determines success, and that is persistence. Of course, there must be a way to persevere. I took out the money in the stock market and told myself that if I couldn’t turn the 100,000 in the simulated stock market into 150,000, I would no longer do the real deal. So in such an environment, I insisted on taking my simulated disk seriously, got up every morning to read the news, and spent at least two hours watching the disk every day. I've talked to some veterans and they say it's hard to imagine seeing a virtual disk the same as a real one, but I did, and they look the same to me. Under my perseverance, my understanding of the stock market has gradually changed qualitatively, and more importantly, my understanding of my life has also changed qualitatively. 

I once mentioned in my series of stock market summaries that the stock market is the condensation of life. Those who do not do well in the stock market will not be successful in life; those who are successful in life will not lose money in the stock market. I find more and more that the stock market and life have something in common: the stock market is a bet, every time you make a bet, you don’t know whether your stock will fall or rise tomorrow; life is also a gamble, you never know whether it will be a raise or unemployment tomorrow, You also won't know what you'll get after college or lament the emptiness of life. The difference is that in the stock market, you will have all the weaknesses of human nature, only look at the illusory profits and ignore the risks. That is to say, in the stock market, you are willing to make a big bet to participate in a bet with a small probability of winning but a large odds. In life, people appear to be more rational. You are willing to find a stable job, but you are not willing to go for a career, such as starting a business, resigning and looking for a better job, etc. It is equivalent to, in life, you are willing to play small chips to participate in a game with a high probability of winning, but the odds are relatively small. 

It is precisely because of the total experience of my life, plus the advice of Mingyue that year, plus the destruction of the condensed life of the stock market, plus the practical opportunities given to me by the embedded business, plus my own diligence. The habit of thinking and the way I learned to guide myself because of my laziness made me finally see through everything one day and completed the transformation from quantity to quality. I found that everything around me, embedded, stock market, work, arm, development environment, microcontroller, c language, web design, google, Taobao, pcb, everything is just a tool, the real core, forever unchanged The core, only one thing, is your thinking! 

Photoshop\Dreamware is just a tool, the first thing you have to do is to use your own method to master this tool and complete the accumulation. When you master these tools, your thinking is the essence that determines whether you can become a good designer. When you see a print advertisement or web page, do you silently think about its most attractive idea? Do you know exactly what the feeling, idea or value you want to convey to the viewer before drawing? Do you have a think tank that puts all the good ideas of others into it, and puts all the wrong ideas on the ban? 

The single chip microcomputer, arm, operating system, and library are just a tool. The first thing you have to do is to master these tools in your own way and complete the accumulation of quantity. When you master these tools, your thinking determines whether you have the potential to become a good developer. When you touch enough architecture chips or systems to complete the qualitative change, you will find that you are the same as me today. You see that all processors are the same, all executing instructions. You see all the protocols are the same, all specify the io to specify the level at the specified time. If you learn new libraries, new operating systems, and new architectures, you will no longer be afraid or impatient, you will follow the steps from easy to difficult, step by step; you will find that the materials that you thought were not enough are now It turns out that it is everywhere; you will find that you no longer force yourself to memorize boring knowledge, but grasp the most core ideas; you will find that you will no longer place your competitiveness on being more familiar with one another. This kind of chip will not be placed on youth and memory, but will be placed on more and more perfect thinking as time grows and experience grows. You will pay more attention to the essence rather than the excess, you will believe more in the importance of practicality, and you will be better at guiding yourself rather than fighting yourself. You will find that many truths are really simple and simple. What are these, these are thoughts! 

The stock market is just a tool, it allows you to understand the essence of life. If you want to win, you must participate in the bet with a high probability of winning, and bet according to your ability to bear. It makes you understand that to overcome inner fear and greed, only with self-confidence and contentment. It makes you understand that when you are the most intolerable, you still have to persevere. The stock market and life, completely figured out. What are these, thinking! 

Entrepreneurship is just a tool. You need to know what value you are creating, whether someone needs this value, and how you can deliver the value. What product you do is just a value carrier - a tool! With a planning plan, with marketing methods, and a grasp of thinking, you can win. funds? It's just a tool! 

Tool Thinking Method_On there are many practical cases. All things in life can be thought and guided by this kind of argument. There are the following central ideas: 
1. Tools are dead, thinking is alive, When it comes to problems, you must remember that you are an omnipotent person. The mountain can't be crossed, just bypass it! This is a typical idea of ​​the unity of knowledge and action. 
2. Never participate in a game where the probability of losing is greater than the probability of winning, otherwise you fail, you can't hold on, you can't blame anyone! 
3. The accumulation of quantity is very long. Thinking more can reduce the accumulation time. The accumulation of quantity is very difficult. You must learn to guide yourself instead of fighting with yourself. The weakness of human nature cannot be overcome, but it can be guided. (Currently, what Kuxuewan advocates is to be guided by interest, so that learners can learn more lastingly). 
4. You can temporarily focus only on what you need and block what you don't need. 
5. Remember the importance of persistence, but pay attention to persistence in methods and persistence in nature, the results are often not ideal! 
6. Think about problems from various perspectives, such as from the other side's point of view. 
7. To be a pioneer, sometimes you don't have to follow someone else's path, you can blaze your own path. Don't despise others, don't envy others, everyone has their own way! 
8. Sometimes slow is better than fast. When you have an overall view and thinking, you can do things calmly. 
9. Be happy and true to yourself!

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326491246&siteId=291194637