Cortex-M4是ARM公司推出的新的针对微控制器应用的内核,提供业界的高性能和低成本的解决方案,将成为MCU应用的热点和主流。
基于Cortex-M4的芯片功能强大,软件复杂度也相应提高,传统的单片机编程方式不能够满足需求。uC/0SII是的源码公开的实时内核,是专为嵌入式应用设计的,可以运行在多种微控制器上。
本课程将Cortex-M4和uC/0SII完美结合,更好的发挥出它们各自的特点,选取目前流行的意法半导体的STM32F40X作为实验平台。
本课程的培训目标:
1) 了解Cortex-M4体系结构及thumb-2指令集;2) 掌握在Cortex-M4体系结构上进行嵌入式编程的方法;2)精通STM32F403处理器各个外设软件设计;
3)了解uC/0S-II操作系统工作原理,掌握uC/0S-II操作系统移植方法;4)精通uC/0S-II操作系统上的编程方法及编程技巧;5)能独立完成基于Cortex-M4、M4构架CPU的软件项目设计;通过系统的课程学习,加以项目实战,让没有ARM编程基础和实际工作经验的大专以上学历的学员在2到3个月的时间内迅速获得1-3年的ARM开发经验,具备实际ARM开发的能力,胜任开发工作,让学员学完后就以具有1-3年开发经验的ARM工程师身份进入工作岗位。
培训对象:
1) 理工科电子类专业人员;
2) 单片机设计、开发人员;
3) 有志于从事ARM工作的人员;
4) 相关专业学生、教师及社会广大ARM爱好者。
Cortex-M4 STM32F40X教学内容
第一部分:公共基础课程
1. cortex-m4 介绍,开发环境搭建,GPI0模块实战1.1 嵌入式发展前景
1.2 ARM 家族成员特征介绍(ARM7/9/11,A8/9/15/53/57,M0/3/7)1.3 cortex-m4 内核体系结构
1.4 处理器内核介绍、处理器工作模式、处理器异常处理1.5 Keil MDK 开发环境安装和 J-link 驱动安装1.6 新建工程和 Keil MDK 开发环境使用详细说明1.7 开发平台资源介绍及使用方法
1.8 STM32F40X时钟体系,时钟管理
1.9 STM32F40X GPI0功能、结构框图详解
1.10 STM32F40X GPI0功能配置步骤和寄存器详解2. STM32F40X UART模块实战
2.
2.1 常用通信协议分类及其特征介绍:同步,异步2.2 通用 UART 特征,及 UART 编程模型
2.3 STM32F40X UART 模块系统框架图、 UART 特征介绍2.4 STM32F40X UART 模块寄存器作用详解
2.5 STM32F40X UART 硬件设计原图分析、软件设计框架3. STM32F40X 中断模块实战
3.
3.1 Cortex-M4 中断体系分析、 STM32中断结构分析3.2 中断相关 API 函数使用详解、 NVIC 中断控制配置方法3.3 STM32F40X 外部中断模块框架分析、 STM32F40X 外部中断寄存器详解3.4 STM32F40X 软件中断设计
3.5 STM32F40X 串口中断设计
1)
4. STM32F40X 定时器模块实战
4.
4.1 STM32F40X 定时器分类
4.2 STM32F40X 各类定时器基本特征、 系统框架图详细分析和寄存器详解4.3 STM32F40X 基本定时器定时功能软件设计
4.4 STM32F40X 通用、定时器定时器比较输出、PWM输出软件设计4.5 STM32F40X 通用、定时器定时器捕获输入、PWM输入软件设计4.6 STM32F40X 定时器定时器互补输出、死区插入软件设计2)
5. STM32F40X RTC和系统定时器模块实战
5.
5.1 常用RTC芯片介绍
5.2 STM32F40X RTC模块介绍、硬件电路分析
5.3 STM32F40X RTC时钟源配置详解、系统框架图分析5.4 STM32F40X RTC备份域功能介绍、寄存器详解5.5 STM32F40X RTC应用设计
5.6 systick模块分析、及应用软件设计
6. STM32F40X IIC模块实战
6.
6.1 I2C总线知识
6.2 I2C总线物理拓扑结构、总线特征
6.3 I2C总线协议
6.4 I2C总线模块时序编程-I0口模拟
6.5 AT24C02 EEPR0M 基本功能介绍
6.6 I0口模拟I2C总线是实现对EEPR0M芯片AT24C02读写操作7. STM32F40X SPI模块实战
7.
7.1 SPI总线物理拓扑结构、总线特征
7.2 SPI总线协议
7.3 STM32F40X SPI控制器结构图分析、初始化设置步骤分析7.4 STM32F40X通过 SPI控制器实现对W25Q64读写操作8. TFTLCD模块实战
8.
8.1 LCD彩屏屏种类介绍、 TFT 屏工作原理、时序图分析8.2 LCD画点、线、基本形状软件设计
8.3 取模软件使用、LCD显示字符、汉字软件设计8.4 TFT 显示图片实验、数码相框项目实验
9. AD/DA模块
9.
9.1 通用 ADC模数转换器(ADC)的基本原理
9.2 STM32F40x ADC模块简述、主要特征和框架图分析9.3 ADC开关控制、时钟配置和通道选择
9.4 ADC精度校准介绍
9.5 单ADC工作模式详解、双ADC工作模式介绍
9.6 单ADC实验软件设计及分析
10. 触摸屏模块实训
10.
10.1 触摸屏分类介绍
10.2 电阻式触摸屏工作原理介绍
10.3 触摸屏初始化、校准方式介绍
10.4 触摸按键软件设计
第二部分:公选课程部分
这部分根据学员兴趣及所选择项目,选择性学习对应的模块。
11.1无线433M模块应用及分析
11.2 MP3解码芯片VS1053模块应用及分析
11.3 G模块应用及分析
11.4 蓝牙模块及应用及分析(可穿戴项目、蓝牙打印机)11.5语音模块应用及分析
11.6 CANBUS模块应用及分析
11.7 uc/os2(1)系统原理及裁剪
11.8 uc/os2(2)系统API应用讲解
11.9 FATFS文件系统应用
11.10物联网&智能家居系统分析
第三部分:综合项目实战
项目列表(以下项目任选一个,在工程师&项目经理指导下完成)项目1:无线点菜机
项目2:MP3项目
项目3:G短信收发系统
项目4:防盗报警系统
项目5:驾校考试管理系统
项目6:蓝牙打印机项目
项目7:智能家居项目
1.
项目8:可穿戴项目(智能手表或智能手环)。
项目介绍:
项目1:无线点菜机
项目介绍
1. 采用意法半导体M3芯片STM32F403R6作为系统主控。
2. 支持一键开关机(长按ENT键开关机)。
3. 显示器采用2.0 寸TFTLCD屏,分辨率220*176。驱动芯片为ILI9341。
4. 显示器亮度可任意调节,采用定时器输出PWM控制亮度技术。
5. 电量显示,采用M3主控自带12位A/D转换监控电池电量。
6. 九宫格实体按键。
7. 当长时间(时间可设置)不操作时自动关屏进入省电模式。
8. 通过433无线通信技术实现跟服务器通信(更新菜谱、发送餐台已点菜菜单、查询餐台信息、催菜、接收服务器发送的短信等)9. 支持汉字显示,使用SPI接口flash芯片W25Q64存储汉字库。
10. 支持点菜机终端存储菜谱、本机参数设置储存,使用SPI接口flash芯片W25Q64存储汉字库。
11. 支持本机登录账号管理。
12. 支持时间显示,时间由系统主控提供,可通过手动调节或者433无线通信更新系统时间。
13. 预留升级调试接口(CM0S电频UART)。
实物图:
项目2:MP3项目
项目介绍:
本设计的程序部分首先是移植UC0S-II实时控制系统进行任务的调度,移植GUI界面进行绘制操作界面,移植FatFs文件管理系统进行对SD卡和FLASH进行读写。就是通过UC0S-II进行调度这些任务来最终呈现出一个稳定的、可控的系统。具体参数如下:
1. 采用意法半导体M3芯片STM32F403ZET6作为主控芯片2. 采用VLSI公司的VS1053B作为MP3硬件解码芯片3. 采用ISSI的IS62WV51216作为系统的数据缓存芯片4. 采用2.8英寸的TFT显示屏,分辨率240*320,驱动器为ILI93415. 采用华邦的W25Q64作为系统的数据储存芯片,存储字库,编码转换库,补丁文件……6. 操作系统采用UC0SII
7. 文件系统采用FATFS
8. 支持界面图标切换系统功能
9. 采用bmp图片作为界面图标
10. .支持触摸屏/红外遥控输出控制
11.支持后台播放音乐
实物图:
项目3:G短信收发系统
项目介绍:
随着生活节奏的加快和生产效率的提高, 不在现场也能及时了解手资料, 以便及时处理生产生活过程中的突发事件,是现代控制系统发展的趋势, 也是人们对现代生活便捷性追求的目标。随着手机的广泛普及, 需要有一种方式让人们只需要增加少量投入便可以通过手机远程控制家里的电器或生产现场的设备, 远程查看设备或安防系统状况, 以降低时间和交通成本, 提高工作效率。同时, 一旦家中发生非法入侵、 火灾、 煤气泄漏等安全事故时手机用户能够在短时间内获知险情, 及时处理。为此本项目设计了一种基于 STM32和 S的短信收发系统, 在 ST公司基于 ARM Cortex-M4内核的嵌入式 CPU上实现 G短信的收发, 以便处理用户发送短信控制设备, 和设备异常时发送通知消息到用户的情况, 实现用户和设备间的双向通信处理。
本系统采用STM32短信收发系统由 CPU模块、 电源模块、 短信收发模块、 时钟模块、 后备电源模块、 键盘模块、 LED指示模块、驱动模块、 检测模块等模块组成, 如图 1 所示。
具体设计方案:
1. 采用stm32f103ZET6作为主控。
2. 采用SIM900A作为G无线网络控制的核心芯片。
3. 显示器采用2.8 寸TFTLCD屏,分辨率240*320。驱动芯片为ILI9341。
4. 电阻式触摸屏,驱动芯片XPT2046。
5. 主控通过接收触摸按键(LCD显示、触摸屏识别)控制G模块收/发短信、接/打。
实物图:
项目4:防盗报警系统
项目介绍:
本系统主要由STM32和G短信模块组成,借助可靠、成熟的G移动网络,以直观的中文短消息或形式,直接把报警地点的情况反映到您的手机屏幕上。它采用主 动式红外传感器进行检测,变有形的传统防盗网防盗窗为无形,给火灾时的逃生提供方便。 并配备烟雾传感器和燃气泄漏传感器,实现防火、防燃气泄漏的作用。效果图:
目前传统的机械式(防盗网、防盗窗)安防系统在实际使用中暴露了很多隐患,例如: 为其它没有安防盗窗的相近楼层形成被盗隐患、 发生火灾时不易逃生等。
随着电子技术的飞速发展,报警系统已从原来的简单化、局部化向智能化、集成化发 展。而各种防盗报警系统之间的主要区别是在于如何让分机与主机、分机与用户之间进行 通讯。目前市场上常见的防盗报警系统的通信方式有固定拨号、以太网、集群系统等 等。但它们有各自的缺点:
1. 固定拨号容易被盗贼在入室抢劫前切断线或恶意占线,使其在关键时刻失灵。
2. 以太网同样面临着线路被切断的隐患,且不易普及。
3. 集群系统功耗很大,网络架设和维护费用很高,而且需要购买固定的频点。
针对以上通信方式的优、缺点,本项目设计了基于G短信模块的家庭无线防盗报警系统。此系统可解决这些隐患,让家庭防盗更及时、使用更方便。它不再依赖有线执行 报警,而是借助可靠、成熟的G移动网络,以直观的中文短消息或形式,直接把报警地点的情况反映到您的手机屏幕上。它采用主动式红外传感器进行检测,变有形的传统防盗网防盗窗为无形,给火灾时的逃生提供方便。并配备烟雾传感器和燃气泄漏 传感器,实现防火、防燃气泄漏的作用。
1. 采用stm32f103ZET6作为主控。
2. 采用SIM900A作为G无线网络控制的核心芯片。
3. 显示器采用2.8 寸TFTLCD屏,分辨率240*320。驱动芯片为ILI9341。
4. 电阻式触摸屏,驱动芯片XPT2046。
5. 主控通过接收触摸按键(LCD显示、触摸屏识别)控制G模块收/发短信、接/打。
项目5:驾校考试管理系统
项目介绍:
图1.1 为驾校汽车考试管理系统的板子图片,该系统实现了夜间场景考试的内容。
图1.1信盈达驾校考试系统硬件实物图
上图拨码开关为用户输入设备,代替实际汽车上的各种灯(实际使用时直接安装在考试车上,不需要拨码开关)。
拨码开关序号
实际输入设备
拨码开关序号
实际输入设备
1
示廊灯
5
右转灯
2
远光灯
6
雾灯
3
近光灯
7
雨刷
4
左转灯
8
保留
表1:各个拨码开关与灯的对应关系
说明:灯亮与拨码开关之间的关系是:拨码开关的0FF测对应灯亮,0N侧对应灯灭。
如:需要把示廊灯和远光灯开启则把拨码开关的1,2拨到0FF那一侧。使用时有两种:
1、模拟驾校汽车考试:会通过播放语音的方式向学员提问问题,学员要在规定的时间内完成。如果超时或者在规定的时间内输入错误,只要出现一次,就视为考试不合格。
2、实际驾驶汽车考试:将驾校汽车考试管理控制器安装在汽车上,学员根据提示进行模拟考试,如果出现错误,只要出现一次,就视为考试不合格。
问题
备注
请关闭所有灯光
所有灯都熄灭
夜间在没有路灯,照明不良条件下行驶
示廊灯、远光灯亮 或者示廊灯、近光灯亮
1
请将前照灯变换成远光
示廊灯、远光灯亮
夜间同方向近距离跟车行驶
示廊灯、近光灯亮
夜间通过急弯、坡路、拱桥、人性横道和没有交通灯控制的路口示廊灯亮、远光灯亮2s内把远光灯熄灭,近光灯亮在刚才同样条件下紧跟前车行驶
示廊灯、近光灯亮
夜间与机动车会车
示廊灯、近光灯亮
夜间在窄路窄桥与非机动车会车
示廊灯、近光灯亮
雾天行驶
示廊灯、近光灯、雾灯、左转向灯、右转向灯亮或者示廊灯、远光灯、雾灯、左转向灯、右转向灯亮1
夜间在道路上发生故障或者交通事故,妨碍交通又难以行动示廊灯、左转向灯、右转向灯亮
表2:问题与
说明1:此情况表明此问题有两个,答对任意一个就正确。
项目6:蓝牙打印机项目
项目介绍
随着蓝牙技术的发展,人们越来越倾向于摆脱有线设备的束缚,但是受体积影响,唯独打印机并没有什么很好的解决方式。消费者对于这部分诉求越来越大。蓝牙打印机顺势而起,便携的方式,无线的打印方式,得到消费者强烈喜爱。便携蓝牙热敏打印机具有小巧外观、功能齐全、性能稳定、兼容性好等特点,是抄表、物流、金融、邮政等行业的选便携蓝牙热敏打印机。
打印性能:
1. 安卓手机蓝牙打印
2. 高速打印(打印速度高达80mm/s)
3. 高清晰度打印(8点/mm)每行384个点
4. 可打印内容:汉字,支持GB2312所有汉字,字符集,ASCII字符,条码、二维码等图形打印。
5. 采用12v/2A电源供电。
项目7:智能家居项目
项目介绍:(部分功能需用到linux)
该智能家居系统是源自2014年信盈达安防智能家居事业部设计的智能小区管理系统,主要分三部分:
1.1客户端:通过WIFI、ZIGBEE、蓝牙和无线433模块和中控端无线连接1) 1.1.1手机APP(采用Qt5+ Android软件开发);2) 1.1.2电脑管理系统(采用C++和QT软件开发);3) 1.1.3专用无线遥控器
主控CPU采用:家庭版采用C0RTEX-M4.
开发软件采用:家庭版采用ucGUI开发。
1.2中控端:通过无线433模块或CANBUS总线和终端连接主控CPU采用:家庭版采用C0RTEX-M4.
1.3终端:通过无线433模块或CANBUS总线和终端连接1.照明电路:主控CPU采用STM8单片机 6.加湿器: 主控CPU采用STM8单片机2.窗帘控制:主控CPU采用STM8单片机 7.厨房控制:主控CPU采用C0RTEX-M43.空调冰箱:主控CPU采用C0RTEX-M0/M3 8.功放音响:主控CPU采用STC系列单片机4.安防监控:主控CPU采用C0RTEX-M4 9.楼宇对讲:主控CPU采用C0RTEX-M4/M45.红外报警:主控CPU采用C0RTEX-M4 10.节能系统:主控CPU采用C0RTEX-M4.
项目8:智能手表
项目介绍
智能手表,是将手表内置智能化系统、搭载智能手机系统而连接于网络而实现多功能。目前市面上的智能手表可大致分为两种:
1. 不带通话功能的:依托连接智能手机而实现多功能,能同步操作手机中的、短信、 邮件、照片、音乐等;2. 带通话功能的:支持插入SIM卡,本质上是手表形态的智能手机;智能手表是一种全新形态的智能终端,由硬件加软件组成的腕上数码产品:
硬件决定性能,决定竞争力,更新换代快。
软件可增减,可更新,可变动,带来无限可能
以上就是软件开发培训课程的全部内容介绍,如需了解更多的软件开发培训班、课程、价格、试听等信息,也可以点击进入 软件开发 相关频道,定制专属课程,开始您的学习之旅。
温馨提示
温馨提示