[Video] Secrets of Embedded Linux/Android driver development (1) Touch Screen driver development and android driver development
Secrets of Embedded Linux/Android driver development (1) Touch Screen driver development
Topic Introduction: Since samurst invented the world's first touch sensor in 1971, the touch screen technology has been continuously innovated, giving programmers and UI engineers unlimited imagination, it greatly improves the convenience of end users for various devices. Now, our daily life, such as mobile phones and tablets, is largely dependent on and accustomed to using and operating touch screens. As an engineer, it is necessary for us to master the working principles and software-driven methods of touch screens. If you are interested in how to manipulate and use touch screens in embedded systems, stay tuned!
1. What is the LINUX driver used?
2. What underlying drivers do enterprises need now?
3. How to become an embedded bottom-layer talent?
4. What are the differences between LINUX drivers and Single-Chip Microcomputer Development?
5. LINUX Device Driver Architecture Analysis
6. Classification and Application of touch screens
7. Working Principle and typical hardware interface of Touch Screen
8. Embedded linux touch screen interface and Port
9. capacitive/resistive touch screen frame implementation
10. Linux Device Driver-based touch screen driver development instance analysis
11. Development and implementation of Capacitive screens in android
Speaker: Mr. Yi, a gold Lecturer at the Huawei vision Shenzhen Center. He has many years of practical experience in Embedded Development and years of embedded training experience. Familiar with ARM, PPC, and MIPS platforms, and have in-depth research on Embedded Linux, uc/OS, and uClinux. Participating projects involve various industries such as industrial control, network, communication, and consumer electronics. In the past two years, we have been focusing on 3G technology and have in-depth research on Android systems. Enterprises with training services include Huawei, IFA semiconductor, Wan Lida, Datang Telecom, Shanghai longqi, Shenzhen KONKA, Hong Kong Application Research Institute, Hong Kong HKC, Guangzhou Zhou ligong, and Qingdao Hisense, 706 Beijing Aerospace department and other well-known enterprises.
Watch Online:Http://www.3g-edu.org/news/video014.htm
Video download:Http://pan.baidu.com/s/1gdqtaG7
Download courseware:Http://download.farsight.com.cn/download/pdf/Farsight2014webcast02-1.pdf
Learning embedded linux underlying driver development
First, you must use the basic linux commands.
Then the C Language
Then c Programming in linux
Find the driver book and read the ldd is very classic (linux Device Driver). You can also find a Development Board to play.
Android Embedded Development Outline
Course schedule course Introduction
Stage 1
Linux operation and programming Basics
In the preparatory stage, the basic commands of Linux and basic programming knowledge of linux training are explained, including file operations and directory operation commands of Linux, VI Editor, GCC compiler, knowledge about GDB debugger and Make project management tools.
At this stage, students can complete a simple game programming by learning the programming method in Linux, such as wuziqi, Tetris, and Snake. After this task is completed, the number of student codes can reach 1000, and basic program development can be performed.
Stage 2
Core Skills for embedded environment development
In the initial stage, I will mainly explain the important concepts and difficulties of C language in embedded development and programming. I will review the series of lectures and analyze examples. I will focus on the functions and program structures, knowledge about pointers, arrays, linked lists, and database functions.
At this stage, students will carry out a lot of coding exercises, including integer algorithm training, recursive and stack programming training, bit operation training, pointer training, String Training, train linked list and binary tree to master common C Databases
Function programming interface practices, function pointers, dynamic memory allocation, program preprocessing, link principles, ELF file formats, standard I/O libraries, and other core skills, enhance the development of basic programming in the embedded development environment
Understanding and coding debugging capabilities.
At this stage, after completing the preceding coding exercises, the students will independently develop the "quick translation" baodian project to develop a utility similar to the "Kingsoft Dictionary" function. After the project is completed
The encoding capacity can reach-lines, and has the development capability of junior programmers and is competent for general coding task requirements of enterprises.
Stage 3
Advanced embedded Linux environment
Programming and project development practices
The intermediate camp stage mainly includes system programming (signal/System Call/pipeline/FIFO/Message Queue/Shared Memory), file I
/O programming (file descriptor/file read/write interface/atomic operation/blocking and non-blocking IO), multi-task and multi-thread programming (process identification/user identification/fork and vfork/multi-thread concept/line
Network Programming (basic concepts of the Network/set of Interface Programming/network byte order/Client/Server structure/UDP)
Programming); master the development process of Socket programming in Linux, and be familiar with the call interface functions and related data structures of network programming, so that students can initially develop system programming on Linux.
Force. It will also explain how to build an embedded Linux
Development environment, including basic concepts and development processes of Embedded Linux, Kernel Cutting configuration and cross-compilation, root file system creation, network programming, and other knowledge.
At this stage, the students will integrate the content and programming technology they have learned to develop a team-level cooperation project, and complete the design and implementation of an embedded product "Digital Photo Frame", involving technical content.
Including file I/O programming, multi-thread programming, network programming, and project documentation writing. After the project is completed, the number of student codes can reach 0000-15000, and can be developed by intermediate programmers.
Qualified for enterprise project development and product development tasks.
Stage 4
Android development in Embedded Linux
(2 select 1)
Based on the students' interests and specialties, the advanced course will select two optional courses for further study, including:
· Embedded ARM hardware development (public part)
· Embedded Linux development
· Android mobile development
After the completion of this phase, the number of trainees can reach or exceed 20000 lines, and they have independent development projects to complete the embedded product software design and implementation capabilities.
Detailed descriptions of these two directions are as follows:
Embedded ARM hardware development
(Public part)
This part of the learning content includes the ARM architecture, instruction set, and bare-board development. At this stage, the students are required to complete the process from 0.