linux嵌入式主要学什么,学嵌入式linux,用什么开发板,请大家推荐一下

搞个嵌入式linux培训班的课程来看下,就知道要学什么了

C语言基础、C++基础、数据结构、操作系统原理、Linux应用基础、电子电路基础

开课前一周:入学基础测试与辅导(C语言、C++、linux基础、数据结构、电子电路)

第一天上

数电&C语言基础测试

第一天下

C++语言&操作系统基础测试

第二天上

操作系统基础

第二天下

Linux基础

正式课程

序号        课程内容

Linux开发基础一

学习目标:

熟练安装、操作linux系统,

并能配置各种开发环境与常用服务

教学案例:

Linux系统安装

Linux开发平台搭建与开发工具使用

1

Linux 概述; Linux发行版;

Linux开发环境搭建-vmware虚拟机;Linux系统安装

Linux的基础知识; Linux文件系统和文件; Shell的使用;常用的shell命令;Linux的软件安装;

Linux 下的C语言编程基础;Linux下VIM的使用;

编译器GCC的使用;调试器gdb的使用;

Linux下多文件编译与项目管理工具make的使用;

Linux开发基础二

学习目标:

基本掌握C、C++语言,掌握常用数据结构

教学案例:

指法练习游戏

成绩管理系统

2

C语言基础强化

C语言的内存布局与常见库函数

3

数据结构强化

链表、队列、栈、树、哈希表

4

Linux下的C++语言基础强化

面向对象的编程方法 类及对象的封装 类的继承与派生

虚函数与多态性 构造函数与虚构函数

5

小项目:

指法练习游戏

成绩管理系统

嵌入式硬件开发部分

学习目标:

熟悉ARM微处理器体系架构、指令与外围器件;掌握通用外设接口的编程方法。

教学案例:

Watchdog控制程序

RTC时钟控制程序

LCD显示控制程序

ADC转换采集程序

触摸屏控制程序

Nandflash读写控制程序

1

Gec2440硬件开发平台搭建

Bootloader烧写、内核烧写、文件系统烧写

ARM开发调试环境建立

MDK开发环境使用

2

嵌入式微处理器 ARM寄存器   ARM工作模式

ARM异常中断   ARM汇编指令分类

ARM汇编指令寻址方式

ARM汇编程序设计   C及汇编语言混合编程

3

J-Linuk仿真器使用

ARM GPIO应用

ARM存储器控制器

ARM工作模式转换;

4

ARM中断控制器(IRQ和FIQ)

ARM时钟及定时器;

看门狗定时器应用;

5

TFT LCD驱动程序设计

LCD显示曲线及图片;

6

ADC控制器应用;

触摸屏应用及校准

7

NOR Flash应用设计;

NAND Flash应用设计

8

PWM时钟应用;实时时钟及闹钟应用

ARM启动代码设计  蜂鸣器控制

嵌入式应用编程部分

学习目标:

熟悉应用各种系统调用

熟悉TCP/IP协议

熟悉基于QT的GUI界面开发

教学案例:

QQ聊天程序

基于QT界面的聊天系统

1、基本应用程序设计

1

Linux交叉开发环境介绍;GNU交叉工具链的使用; 宿主机与PC机间的通信;串口通信;

Minicom配置使用,Windows超级终端配置实验;

NFS共享设置实验  交叉调试;

2

文件I/O操作编程;

Linux系统调用与用户编程接口;

Linux中文件及文件描述符概述;

不带缓存的文件I/O操作;标准I/O开发。

文件操作 目录操作 特殊文件

3

Linux进程概述;Linux下进程结构;

Linux下进程的模式类型;Linux下进程管理;

Linux进程控制编程;守护进程;信号及信号处理

4

进程间通信;多线程编程

管道;管道创建与读写;标准流管道;FIFO信号量;

共享内存实现;消息队列实现

线程概述与分类;Linux线程技术发展;线程的实现和基本操作;  线程访问控制。

2、网络程序设计

5

TCP/IP协议概述;OSI参考模型和TCP/IP参考模型;

TCP/IP协议栈;TCP和UDP;

套接字基础  网络Socket概述;Socket通信原理;

Socket基础编程。

6

小项目:

QQ聊天程序

3、界面程序设计

7

Linux下嵌入式gui编程介绍;

Qt介绍;通过Qt designer认识Qt;

信号和槽;Qt的事件

8

QT中的多线程编程;

Qt 中的网络编程。

9

小项目一:

带QT界面的聊天系统

驱动部分

学习目标:

熟悉bootloader启动原理及流程;掌握U-boot裁剪与移植

熟悉linux内核体系架构;掌握2.6.30内核的裁剪与移植

熟悉文件系统实现原理;掌握制作根文件系统

熟悉常见接口的驱动原理;

教学案例:

移植Bootloader引导程序

GPIO驱动程序

按键中断驱动程序

WatchDog驱动程序

块设备驱动程序

网络设备驱动程序

1

根文件系统制作(cramfs、jffs2、yaffs)

根文件系统的目录结构;根文件系统内容;

常见根文件系统制作;添加设备文件;添加动态链接库;

添加系统应用程序;添加配置文件;

2

支持QT显示的根文件系统制作

文件系统的目录结构;带QT根文件系统的主要内容;

添加LCD与触摸屏等设备文件;添加QT动态链接库;

添加系统应用程序;添加系统配置文件支持QT显示;

3

Bootloader介绍;GEC2440Bootloader分析;

常见bootloader源码分析;

4

u-boot配置与编译;

u-boot移植;

u-boot 使用

5

Linux内核结构

配置与编译移植  Linux内核模块设计

配置裁剪Linux内核并移植到GEC2440开发板

6

字符驱动

GPIO设备驱动,实现电子开关功能

7

驱动的中断 延时  并发控制

设备驱动的阻塞与非阻塞、异步通信

按键中断驱动,实现电子键盘功能

8

块设备驱动

9

网络设备驱动 网卡设备驱动

10

设备驱动调试与移植技巧

项目实战部分

学习目标:

熟悉实际项目开发流程;掌握项目开发平搭建;积累项目开发经验

研发项目:

基于2440的无线网络播放机VOD

项目能力重点实战

项目设计能力

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值