【JZ2440】【Record】【How to learn a new chip: S3C2440】

Publisher:快乐飞翔Latest update time:2020-04-15 Source: eefocusKeywords:JZ2440  S3C2440  Linux Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

1. Basic introduction:

Although I have learned 51 and 430 single-chip microcomputers before, I have not summarized much and I am very blind. I just read books and videos and then started to read and write codes. Although reading the 51 routine code at the beginning did give me an entry-level understanding of single-chip microcomputer programming, it was still very useful. However, after all, it was written in C language, and there was no subsequent resource to continue to learn chips, so I had no understanding of the internal structure, resources, and operation methods of 51 and 430. I could only do the most basic copy-paste programming of the programs I had seen. Now I am learning S3C2440 and using the JZ2440 development board, hoping to sort out all these things.


2. Understanding of embedded systems:

After a long period of preparation, I finally figured out some basic things: what is embedded, ARM instruction set architecture, ARM family, the difference between S3C2440 chip and ARM920T instruction set architecture, the structure of the operating system (boot loader, kernel composition, drivers and applications), basic operations of Linux instructions, etc.


(It is worth mentioning that when you don’t understand a field, reading a wide range of related books can give you a systematic understanding of this field. Books can provide people with a more comprehensive understanding of principles and systems. Don’t expect Baidu to explain it to you through a few videos. On the other hand, after understanding the systematic things, when you start to do actual operations, the introduction of relevant tools, specific operations and specific target board resources can help people get started quickly.)


After understanding the concepts and structure of a new operating system, we will now focus on a specific embedded chip: S3C2440, and begin to learn how to use this chip to control the hardware, the resources on the chip, and how to compile and download the code for the chip.


The above is the transition from reading a wide range of embedded books on some general directions (ARM history, architecture, operating system, etc.) to studying a specific embedded chip, and starting some specific learning and operations.


3. Actual operation:

1) Getting started with the operating system: Since most embedded systems are based on the Linux system, you should first become familiar with the operation of Linux. Later, it was discovered that 90% of the embedded Linux code is still compiled on the Linux system, so it is quite necessary to actually operate Linux.


After I wrote my first hello world program in VMware's Ubuntu last time, I felt unfamiliar with the new Linux operating system. I was even confused about where the files I created were, how to modify files, how to edit, compile and download programs for JZ2440, and what the instructions were.


The first thing that came to my mind was to get started with the practical application of Ubuntu, an extremely unfamiliar operating system. So I found a book in the library called "Ubuntu Linux from Beginner to Mastery (Version 9)" - edited by Xing Guoqing, Qiu Pengtao and Chen Jijun, and I thought it was pretty good.


The book has a certain introduction to Ubuntu's graphical interface, command line operations, how to create files, delete files, Shell, and Shell Script writing, and some basic command explanations. At least the first few chapters of the book gave me a new understanding of how to use commands to operate in Linux, its directory structure, and the application of basic commands. After knowing some operations, I found that commands are the essence of the Linux operating system, so I found a quick reference manual for commands, "Linux Command Example Quick Reference Manual" - compiled by Huang Zhaohe and others, to have a good understanding and study of the commands under this operating system. 2017.12.20


2) Editing, compiling and downloading the JZ2440 program: After constant efforts, I finally figured out how to edit the code under the host Windows, compile the code under the host Linux, transfer it back to the Windows system, and transfer the executable file to the target board.


Because actual operations such as downloading, editing, compiling, and file transfer between systems definitely require the use of some tools, the first thing in actual operations is to be familiar with and use various tools.


for example: 

1. How to download the program to the target board JZ2440, through what method, what driver to install, and what software to use?


2. What editing software are there and under which system can they be edited?


3. What are the compilation software and under which system are they compiled?


4. What are the tools for transferring files between the host, Linux on the virtual machine, and the embedded Linux on the target board, and how do they communicate?


Of course, the types of tools mentioned above need to be combined with the specific resources on the target board.


For example, the serial-to-USB interface on the JZ2440 target board is used to send commands to the target board, receive and display the returned data. So how to operate this serial-to-USB interface, what driver to install, and what tool to use to send this command and receive data are all provided and explained step by step by the developer of the target board (as a novice, it is too difficult to do it completely by yourself). In this process, I mainly combined the supporting videos of the development board and the supporting book "Complete Manual for Embedded Linux Application Development" written by Wei Dongshan, some tool explanations in the book, and the introduction of resources on the development board, accompanied by Baidu, step by step to master the role and actual operation of various tools, and officially edited, compiled and downloaded the first program today.


Fortunately, it is finally time to learn about the S3C2440 chip resources and hardware operations on the target board. We can start to understand the chip resources and actually program the target board.

Keywords:JZ2440  S3C2440  Linux Reference address:【JZ2440】【Record】【How to learn a new chip: S3C2440】

Previous article:JZ2440 bare metal development and analysis: ARM chip clock system 1
Next article:2.3 [Bare Metal Part] Mastering the ARM Chip Clock System

Latest Microcontroller Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号