课程课时授课内容
第一部分 C语言项目实战程序设计 20C语言是嵌入式领域最重要也是最主要的编程语言。 本课程将在C语言基础知识之上,通过大量编程实例讲解C语言的高级编程知识,包括函数与程序结构、指针、数组、常用算法、库函数的使用等知识。 强调C语言隐蔽性错误的避免;培养良好的编程规范。
第二部分 ARM体系架构及硬件接口的软硬件设计 50嵌入式系统概述与ARM简介: ARM处理器与其他体系结构处理器异同比较;ARM芯片选型;ARM外围硬件设计;ARM程序和算法;ARM操作系统(uC/OS-II/ARM Linux/uCLinux/WinCE)。 ARM体系架构:ARM的工作模式;ARM存储器格式;ARM运行模式;ARM寄存器组织;ARM的异常;流水线。ARM指令系统与汇编语言编程:ARM指令概述与特点;ARM寻址方式;ARM指令集; Thumb指令集;ARM汇编语言编程。接口电路:键盘输入电路;LED显示电路;LCD显示电路;串口通信电路;实验:开发工具的方法、流程和技巧;开发板外设接口实验。
第三部分 Linux基础知识与编程初步 20操作系统基础篇:虚拟机及Linux安装;linux操作技巧;linux常用操作命令;linux目录结构详解;vi使用讲解;Linux编程基础:shell编程设计;交叉编译器套件构建及使用;gcc使用;make工具、makefile、automake工具使用。主机调试及远程调试实验:Linux系统安装;shell命令实验;shell编程;gcc 和gdb的使用;make的使用等。
第四部分 基于ARM的嵌入式Linux开发30 嵌入式Linux综述:嵌入式linux的典型应用及分类,RTLinux、ARMlinux、 uClinux;嵌入式Linux开发基本概念,启动代码、 内核代码、根文件系统,驱动程序、 设备文件、文件系统;嵌入式Linux开发工具介绍:嵌入式Linux开发环境搭建;交叉编译器的使用和安装;嵌入式Linux开发中的常用工具;嵌入式开发的调试环境。分析典型的bootloader:常用的几种bootloader介绍(uboot、armboot、redboot);Bootloader的基本启动流程和架构开发注意事项;嵌入式Linux系统的内存地址分配和内核加载。实验:嵌入式linux开发环境建立;根文件系统的建立;基于ARM的QT实验。