12

  • 公交线路
  • 地理位置

咨询报名:

杭州天目山路176号(黄姑山路口)数源软件园12号楼3层

咨询电话:

(0571)89988817

免费电话:800-9571-021(限固话拨打)

客服邮箱:service@huiwen.com

公交至庆丰村站或教工路口站即可:B1、B2、B支2、102、17、193、21/K221、213/K213、23、24、293、303、306、307、37、49、502、Y6、73、82、830、841、900、92路。

当前位置:企业内训
学习目标 (9:00-12:00)上午课程 (13:00-16:00)下午实验

第一天

主要帮助学员了解ARM体系结构及工作原理,掌握ARM指令集,学会操作ARM处理器基本方法。

1 ARM体系结构
1.1 ARM简介
1.2 ARM体系结构
1.3 流水线
1.4 处理器工作模式
1.5 ARM处理器核
2 ARM指令集
2.1 V4T指令
2.2 V5TE指令
2.3 V6指令
2.4 Thumb指令
1、使用RealView MDK环境构建基本工程
2、基本ARM指令练习
3、数据搬运练习

第二天

为提高系统的综合性能,“ARM和 Thumb交互”是工程师在实际编程常用的一种方式。通过本天课程的学习,学员可以了解Thumb指令的特点,掌握ARM和Thumb指令交互方法。“异 常”作为处理器的一种特殊工作方式在系统工作中扮演着重要的角色,本期课程也将帮助学员掌握ARM平台异常产生的过程和处理方法。

3 ARM与Thumb交互
3.1 交互工作基础
3.2 子程序交互和veneers
3.3 ARM V5TE架构扩展
4 RealView MDK开发工具介绍
5 异常处理
5.1 中断处理
5.2 Abort处理
5.3 SWI 处理
5.4 复位和未定义指令处理
1、ARM/Thumb交互
2、Thumb下的块拷贝实验
3、异常处理实验
第三天

虽然汇编指令可以完成我们所需要的 所有功能,但相对C语言来说,汇编语言存在编写复杂、可读性差等缺点,所以在实际的项目开发中,工程师通常会使用C或C++等高级语言来编写主程序部分。 通过第三天课程的学习,学员可以掌握汇编、c、c++混合编程的方法,完成对目标平台的软件编程,更好的熟悉嵌入式软件的开发流程。
6 C/C++ 编译器提示和技巧
6.1 arm编译优化础
6.2 汇编、c、c++混合编程
6.3 arm编译器规则
6.4 局部和全局变量
7 嵌入式软件编程
7.1 调整c库使其适合目标平台
7.2 调整内存映射使其适合目标平台
7.3 复位和初始化
7.4 编译和调试目标镜像
1、C语言程序实验
2、汇编和C混合编程实验
3、调整C库和内存映射,编写能够在目标硬件运行的LED测试程序
第四天


在学习完了理论知识后,该进入实践环节了。嵌入式编程最终目标还是对接口设备的操作。通过第四天课程的学习,学员可以掌握基于ARM的嵌入式硬件平台接口设计以及各种常用接口的开发。
8 基于ARM的嵌入式硬件平台接口设计
8.1 基于ARM的SOC组成
8.2 构建ARM嵌入式系统
9 嵌入式硬件平台(基于s3c2410/s3c2440)接口操作
9.1 GPIO接口
9.2 ADC接口
9.3 UART接口
9.4 I2C接口
9.5 定时器
9.6 中断接口
9.7 DMA接口
1、GPIO实验
2、ADC实验
3、UART实验
4、定时器实验
5、中断实验
6、DMA实验
第五天

单个接口的操作最终还是要为一个综 合的软件项目服务,bootloader在嵌入式操作系统中占用重要地位,其编写、移植是一项常见而复杂的工作。通过第五天课程的学习,学员即能够通过这 个综合的软件项目将前面的主要内容融会贯通,还可以掌握bootloader原理及开发过程,掌握和bootloader相关的接口开发,了解嵌入式操作 系统的结构及启动流程等。
10 从零编写bootloader
10.1 嵌入式linux系统的构成
10.2 引导程序的任务
10.3 引导程序的结构及启动流程
10.4 实现串口下载功能
10.5 实现usb下载功能
10.6 实现 nandflash读写功能
10.7 引导linux内核
1、bootloader编写实验(基于realview MDK环境)
2、linux系统编译实验
3、制作文件系统实验
4、bootloader通过USB下载内核、文件系统实验