Cortex-M3软件开发培训班课程
【课程简介】
Cortex-M3是ARM 公司推出的新的针对微控制器应用的内核,提供业界的高性能和低成本的解决方案,将成为 MCU 应用的热点和主流。
基于 Cortex-M3 的芯片功能强大,软件复杂度也相应提高,传统的单片机编程方式不能够满足需求。uC/OSII 是的源码公开的实时内核,是专为嵌入式应用设计的,可以运行在多种微控制器上。本课程将 Cortex-M3 和 uC/OSII 完美结合,更好的发挥出它们各自的特点,选取目前流行的意法半导体的 STM32F10X 或者恩智浦 NXP 的 LPC17XX 作为实验平台。
【课程内容】
1. cortex-m3 介绍,开发环境搭建,开发板介绍
1.1 嵌入式发展前景
1.2 ARM 家族成员特征介绍(ARM7/9/11,A8/9/15/53/57,M0/3/7)
1.3 cortex-m3 内核体系结构
1.4 处理器内核介绍、处理器工作模式、处理器异常处理
1.5 KeilMDK 开发环境安装和 J-link 仿真驱动安装
1.6 新建 STM32F103 工程和 KeilMDK 开发环境使用详细说明,仿真,调试功能介绍
1.7 开发平台资源介绍及使用方法
2. STM32F10XGPIO 模块
2.1 仿真工具软件的使用
2.2 STM32F103 时钟体系,时钟管理
2.3STM32F10XGPIO 功能详解:上拉/下拉输入,浮空/模拟输入,复用推挽/复用开漏/推挽输出。
2.4STM32F10XGPIO 功能配置方法和 STM32F10XGPIO 寄存器详解
2.5 STM32F10X 流水灯程序设计
3. STM32F103UART 模块实训
3.1 常用通信协议分类及其特征介绍:同步,异步
3.2 通用 UART 特征,及 UART 编程模型
3.3STM32F10XUART 模块系统框架图、UART 特征介绍、STM32F103UART 模块寄存器作用详解
3.4STM32F103UART 硬件设计原图分析、软件设计框架
3.5STM32F103UART 查询方式实现数据收发
4. STM32F10X 中断编程 4.1Cortex-M3 中断体系分析、STM32F103 中断体系分析
4.2 中断相关 API 函数使用详解、NVIC 中断控制配置方法小结
4.3 STM32F10X 外部中断模块框架分析、STM32F10X 外部中断寄存器详解
4.4 STM32F10X 外部中断模块硬件设计
4.5 STM32F10X 外部中断模块程序设计
4.6 程序设计:使用中断方式实现 UART 数据接收
5. STM32F103LCD 彩屏显示&触摸屏模块实训
5.1 LCD 彩屏屏种类介绍、TFT 屏工作原理、时序图分析
5.2 RGB 介绍,RGB 转换介绍和汉字取模软件使用
5.3 触摸屏原理、触摸屏校准介绍
5.4 TFT 屏显示汉字实验、TFT 显示图片实验、数码相框项目实验
6.STM32F10XSystemTick 定时器模块
6.1STM32F103SystemTick 定时器背景介绍、工作原理
6.2STM32F103SystemTick 定时器相关寄存器详解
6.3 使用 STM32F103SystemTick 定时器进行精确定时程序设计
6.4 使用 STM32F103SystemTick 定时器实现电子表功能
7. STM32F10X 基本定时器模块
7.1 STM32F10X 定时器分类
7.2 STM32F10X 各类定时器基本特征、系统框架图详细分析和寄存器详解
7.3 STM32F10X 基本定时器定时功能软件设计分析
7.4 STM32F10X 基本定时器实现电子表功能
7.5 STM32F10X 基本定时器实现呼吸灯功能
8. STM32F10X 通用定时器模块 --上部分
8.1 STM32F10X 通用定时器基本特征介绍、总体功能介绍和系统框架图详细分析
8.2 STM32F10X 通用定时器 3 种时钟源框架图分析及时钟源配置详解
8.3 STM32F10X 通用定时器比较输出功能详解,及配置步骤详解
8.4 STM32F10X 通用定时器时钟源配置,比较输出功能相关寄存器详解
8.5 STM32F10X 通用定时器 PWM 输出功能软件设计
8.6 STM32F10X 通用定时器 PWM 功能实现呼吸灯效果
9. STM32F10X 通用定时器模块 –下部分
9.1 STM32F10X 通用定时器捕获输入功能详解,及配置步骤详解
9.2 STM32F10X 通用定时器捕获输出功能相关寄存器详解
9.3 STM32F10X 通用定时器捕获功能程序设计及分析
9.4 STM32F10X 通用定时器 PWM 输入功能软件设计(测量 PWM 信号的脉冲占空比和周期)
10. STM32F10X 定时器模块
10.1STM32F10X 定时器基本特征介绍,总体功能介绍
10.2STM32F10X 定时器系统框架图详细分析
10.3STM32F10X 定时器的 PWM 互补输出
10.4STM32F10X 定时器的 PWM 死区发生功能分析
10.5STM32F10X 定时器 PWM 输出互补,死区功能软件设计
11. STM32F10XDMA 模块
11.1DMA 概述和 DMA 工作原理
11.2STM32F10XDMA 模块基本特征、框架图分析和功能介绍
11.3STM32F10XDMA 处理:DMA 通道映射、通道中断标志、中断事件、通道错误管理和仲裁器
11.4STM32F10XDMA 寄存器详解
11.5串口 DMA 发送数据软件设计和串口 DMA 接收数据软件设计
12. STM32F10XIIC 总线模块
12.1I2C 总线知识
12.2I2C 总线物理拓扑结构、总线特征
12.3I2C 总线协议
1)基本时序信号;
2)I2C 总线数据传输时序;
3)I2C 总线寻址方式;
4)I2C 总线读写操作时序。
12.4I2C 总线模块时序编程
1)起始条件代码;
2)停止条件代码;
3)发送应答信号或非应答信号代码
4)检测应答信号代码 ;
5)单字节发送代码;
6)单字节接收代码。
12.5AT24C02EEPROM 编程
1) AT24C02EEPROM 基本功能介绍
2) AT24C02EEPROM 写时序介绍: 单字节写时序, 页写时序时序
3) AT24C02EEPROM 读时序介绍:单字节读操作,页读操作
12.6AT24C02EEPROM 实验硬件设计和软件设计精讲、实验
13. STM32F10XADC 模块
13.1通用 ADC 模数转换器(ADC)的基本原理
13.2STM32F10xADC 模块简述、主要特征和框架图分析(重点掌握)
13.3ADC 开关控制、时钟配置和通道选择
13.4ADC 精度校准介绍
13.5单 ADC 工作模式详解、双 ADC 工作模式介绍
13.6单 ADC 实验软件设计及分析
14. STM32F10XDAC 模块
14.1通用 DAC 数模转换器(DAC)的基本原理
14.2STM32F10xDAC 模块简述、STM32F10xDAC 主要特征
14.3STM32F10xDAC 框架图分析(重点掌握)
14.4STM32F10xDAC 普通功能,噪声功能,三角波功能
14.5双 DAC 工作模式详解
14.6单 DAC 实验软件设计及分析
15. STM32F103SPI 总线模块实训
15.1SPI 总线特征介绍
15.2STM32F103SPI 总线特征介绍、总线系统框架介绍和总线常用寄存器位介绍
15.3STM32F103SPI 总线读写函数编程
15.4W25Q64 芯片介绍、操作原理介绍和 W25Q64 命令介绍
15.5W25Q64 读、写使能时序介绍,及软件设计思想分析
15.6W25Q64 擦除时序介绍,及软件设计思想分析
15.7W25Q64 写时序介绍,及软件设计思想分析
15.8W25Q64 扇区内写函数设计
15.9W25Q64 跨扇区写函数和读函数设计
15.10 W25Q64 程序存储功能综合测试
16. STM32F10SPI 模拟时序控制触摸屏芯片
16.1STM32F103SPI 总线模拟读/写时序分析
16.2TSC2046 触摸屏控制芯片介绍、时序介绍
16.3TSC2046 触摸屏控制芯片程序设计
16.4触摸屏校正程序分析,实现触摸屏控制 LED 功能
17. STM32F103RTC 模块实训
17.1常用 RTC 芯片介绍
17.2STM32F103RTC 模块介绍、硬件电路分析
17.3STM32F103RTC 时钟源配置详解、系统框架图分析
17.4STM32F103RTC 备份域功能介绍、寄存器详解
17.5STM32F103RTC 电子表程序设计及分析
18. STM32F103 看门狗功模块实训
18.1看门狗基本知识、工作原理和作用介绍
18.2STM32F103 独立看门狗功能介绍
18.3STM32F103 独立看门狗系统框架图分析、寄存器详解
18.4STM32F103 独立看门狗实验程序设计及分析
18.5STM32F103 窗口看门狗功能介绍、系统框架图分析和时钟源配置详解
18.6STM32F103 窗口看门狗寄存器详解、窗口看门狗实验程序设计及分析
19.STM32F103FSMC 模块实训
19.1STM32F10xFSMC 模块简述
19.2STM32F10xFSMC 模块功能介绍
19.3常用芯片时序:8086,8080 时序
19.4STM32F10xFSMC 主要特征、功能详解、寄存器详解
19.5使用 STM32F10xFSMC 接口驱动 LCD 屏实验设计
1)LCD 驱动芯片基本时序,接口信号分析;
2)LCD 屏硬件原理图分析;
3)LCD 屏硬件与 FSMC 模块接口电路分析;
4)使用 FSMC 驱动 LCD 驱动芯片软件设计及软件分析
20. CAN 总线模块实训
20.1CanBus 介绍、CanBus 总线通信协议介绍
20.2STM32F10xCAN 模块简述及主要特征
20.3STM32F10xCAN 功能详解、寄存器详解、硬件原理图分析
20.4STM32F10xCAN 发送功能软件设计、接收功能软件设计
20.5STM32F10xCAN 实战应用案例分析
21. ucOS 操作系统
21.1操作系统基本知识介绍、分类及特征
21.2ucOS 操作系统调度原理、基本特征
21.3STM32F10X 的 ucOS 操作系统程序模板
21.4STM32F10X 的 ucOS 操作系统任务创建,任务的基本应用实例
21.5ucOS 操作系统同步机制:信号量,互斥信号量,消息,队列,事件标志组应用实例详解
21.6ucOS 操作系统配置裁剪、操作系统移植
22. 综合项目实战:项目设计流程、项目分析(从以下项目中任选一个独立完成)
22.1项目 1:简易手机:使用 STM32F103 开发板和 GSM 模块实现手机常用功能
22.2项目 2:防盗报警系统:使用 STM32F103 开发板和 GSM 模块及传感器防盗报警系统
22.3项目 3:消费机系统:使用 STM32F103 开发板和 IC 模块实现 IC 刷卡消费、充值等
22.4项目 4:无线点菜机系统:使用 STM32 芯片和 433M 无线模块和打印机实现餐厅点菜系统
22.5项目
5:智能家居系统:使用 STM32F103 开发板和 GSM 模块,WIFI 模块,433M 模块及传感器实 现超级智能家居系统。(该项目可以结合 Linux 课程项目阶段,使用 A9 平台实验平板控制功能)。
22.6指纹考勤机项目或车载驾校模拟考试项目。以下为部分实战项目外观。
【适合对象】
1、理工科电子类专业人员;
2、在职单片机设计、开发人员;
3、有志于从事ARM工作的在职人员;
4、相关专业学生、教师及社会广大ARM爱好者
【机构简介】
信盈达是一家专注于嵌入式产品开发、嵌入式技术咨询、嵌入式解决方案综合的高新技术企业,为国内外众多个人和企业客户提供基于嵌入式单片机、ARM、MIPS、FPGA等内核整套解决方案和技术培训、技术咨询等服务,公司下设有信盈达实训学院和信盈达研发中心、信盈达校企合作中心等三个服务团队,专业从事教学科研设备、嵌入式工业控制器、智能楼宇自动化等产品研发、生产、销售和服务,为个人、企业、高校等提供一站式技术服务。
【教学环境】
【师资力量】
何宙兴
职称:信盈达讲师、技术大牛,软件工程师
简介
信盈达工控事业部项目经理。
12年电子、嵌入式软件行业研发、测试及管理工作经验(三年电子产品试产及测试经验。
三年SUNPLUS\ARM\PIC\AVR等CPU软件研发经验。
六年嵌入式ARM\MIPS等CPU架构下裸机、带操作系统(uc/os、LINUX)编程经验)。
近主导成功开发以下项目
工业风速控制器项目
远程工业控制器
基于工业4.0的ERP系统数据采集终端项目
华为户外基站环境远程遥测遥控系统
自动化流水线彩色电子工票项目
军用北斗军车授时子母钟控制项目
一氧化碳传感器检测项目
考勤机
吴老师(7年经验)
熟悉嵌入式linux系统产品研发及教学;精通 Cortex-M4 、STM32的开发和教学;具有丰富的 嵌入式产品开发经验和教学经验;在长期的教学中 形成了独特的教学风格;具有良好的教学风气。