嵌入式linux系统与应用

Emebedded System and Application(Linux)

  Goal -- 掌握嵌入式系统开发的流程,系统移植的方法,编写Bootloader

            (Be familiar with the process of ES Developing , System Migration amd Bootloader Programming )

 

 Requriement -- C、C++、Data Structure、Operating System、Linux、Electronic circuit

 

 Content --

 

1

Linux 快速入门

Linux 概述; Linux发行版;
Linux开发环境搭建-vmware虚拟机;Linux系统安装
Linux的基础知识; Linux文件系统和文件; Shell的使用;
常用的shell命令;Linux的软件安装;
Linux 下的C语言编程基础;Linux下VIM的使用;
编译器GCC的使用;调试器gdb的使用;
Linux下多文件编译与项目管理工具make的使用;

2

C语言基础强化

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

数据结构基础强化

链表、队列、栈、树、哈希表
数据搜索、遍历、排序与常见算法

4

C++语言基础强化

面向对象的编程方法 类及对象的封装 类的继承与派生
虚函数与多态性 构造函数与虚构函数 模板 异常处理
5

ARM硬件接口

嵌入式微处理器 ARM寄存器 ARM工作模式
ARM异常中断 ARM汇编指令分类 ARM汇编指令寻址方式
ARM汇编程序设计 C及汇编语言混合编程
实验:
基本ARM汇编指令编程;数据访问练习;
ARM汇编和C混合编程;ARM指令和THUMB指令混合编程

MDK开发环境使用 U-Linuk仿真器使用
ARM开发调试环境建立 ARM GPIO应用
ARM存储器控制器 ARM中断控制器(IRQ和FIQ)
实验:
ARM汇编语言与C语言实现跑马灯;
IRQ与FIQ中断流程分析
ARM时钟及定时器;TFT LCD驱动程序设计
实验:
看门狗定时器应用;LCD显示曲线及图片;
LCD汉字显示实验;
ADC控制器应用;触摸屏应用及校准
实验:
ADC应用实验;触摸屏实现实验
PWM时钟应用;实时时钟及闹钟应用
实验:
蜂鸣器控制;实时时钟及闹钟应用;
ARM工作模式转换;ARM启动代码设计
NOR Flash应用设计;NAND Flash应用设计
IIC总线控制器
实验:
NOR Flash编程;NAND Flash编程;
6

交叉开发环境搭建

嵌入式系统定义;Linux交叉开发环境介绍;
GNU交叉工具链的使用;宿主机与PC机间的通信;
串口通信;交叉调试;
实验:
Minicom配置使用,Windows超级终端配置实验;
NFS共享设置实验

 

7

Linux下C语言开发

文件I/O操作编程;
Linux系统调用与用户编程接口;
Linux中文件及文件描述符概述;
不带缓存的文件I/O操作;标准I/O开发。
文件操作 目录操作 特殊文件

Linux进程概述;Linux下进程结构;Linux下进程的模式类型;
Linux下进程管理;Linux进程控制编程;守护进程;
信号及信号处理
进程间通信;多线程编程
管道;管道创建与读写;标准流管道;FIFO信号量;
共享内存实现;消息队列实现
线程概述与分类;Linux线程技术发展;线程的实现和基本操作;
线程访问控制。
TCP/IP协议概述;OSI参考模型和TCP/IP参考模型;
TCP/IP协议栈;TCP和UDP;
套接字基础 网络Socket概述;Socket通信原理;
Socket基础编程。
套接字编程进阶 多路选择I/O 文件传输实现
8

嵌入式GUI设计

Linux下嵌入式gui编程介绍;Qt介绍;通过Qt designer认识Qt; 信号和槽;Qt的事件
QT中的多线程编程;Qt 中的网络编程。
Qt界面布局与特效处理
9

嵌入式数据库应用

数据库基础
嵌入式数据库应用
嵌入式GUI与数据库结合技术

10

根文件系统

常见根文件系统一(cramfs、jffs2)
根文件系统的目录结构;根文件系统内容;
常见根文件系统制作;添加设备文件;添加动态链接库;
添加系统应用程序;添加配置文件;
常见根文件系统二(yaffs、romfs)
根文件系统的目录结构;根文件系统内容;
常见根文件系统制作;添加设备文件;添加动态链接库;
添加系统应用程序;添加配置文件;
11

项目架构

综合项目架构分析与项目开发技巧
12

Bootloader

Bootloader介绍;GEC2440Bootloader分析;
常见bootloader源码分析;
u-boot配置与编译;u-boot移植;u-boot 使用
实验:
修改u-boot源代码,移植到开发板上

13

Linux内核高级技术

Linux内核结构 配置与编译移植 Linux内核模块设计
内核内存管理、进程管理、中断管理、设备管理
内核时钟和定时器管理、信号、调度
Linux内核调试与优化
14

Linux驱动高级应用

字符驱动

驱动的中断 延时 并发控制
设备驱动的阻塞与非阻塞、异步通信
高级字符设备
块设备驱动 Flash设备驱动
网络设备驱动
USB设备驱动
LCD&触摸屏 设备驱动
IIC & SPI设备驱动

设备驱动调试与移植技巧

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值