当前课程知识点:现代电子系统设计 >  第五章 微处理器与片上系统 >  5.7 嵌入式软件开发方法 >  5.7 嵌入式软件开发方法

返回《现代电子系统设计》慕课在线视频课程列表

5.7 嵌入式软件开发方法在线视频

下一节: 5.8.1 嵌入式操作系统

返回《现代电子系统设计》慕课在线视频列表

5.7 嵌入式软件开发方法课程教案、知识点、字幕

下面讲第五章第七节

嵌入式软件开发方法

所谓嵌入式软件就是指

嵌入式系统中

微处理器它所需要的软件

那么首先在开发软件的时候

我们需要开发工具

开发工具分为软件和硬件

两个方面

对于软件来讲

它需要一个集成开发环境

IDE

那么这个集成开发环境

主要是用来开发软件

通常由微处理器的制造商

或者是第三方来提供的

例如Keil

它可以用来开发一些单片机

和ARM微处理器

CCS是TI提供的

一个集成开发环境

可以用于开发它所提供的

DSP处理器

或者是ARM处理器的

一些微处理器软件的开发

MCC是Microchip提供的

用于它的一些微处理器开发的

集成环境

第二就是一些示例代码

通常制造商会针对它的微处理器

提供一些示例代码

这些示例代码主要是用于

微处理器它的系统设备

或者外围设备的

一些驱动程序的应用

另外有的制造商也提供

针对处理器的一个开发板

然后这个开发板会附带一个

板级支持包

实际上也是一些示例的代码

也就是对一些外围设备

或者系统设备的应用的程序

这是软件的工具

那么接下来对于硬件的工具

通常制造商

可能会提供一些开发板

有时候也称为评估板

例如TI的TM4C123评估板

那么就是TI自己制造的

一个用于验证微处理器

及外部设备和软件的一个开发板

下面介绍两种

近年来比较流行的开发板

一个是Arduino

那么这个板子它上面

有一个8位的AVR单片机

和一个32位的SAM3X8E微处理器

这个Arduino开发板是由欧洲的

开发团队在2005年开发的

主要是用于简化这个微处理器的

开发的方法

供一些爱好者学习

或者是用它去开发电子系统

还有一个就是树莓派

它是一个有ARM微处理器的开发板

是由英国树莓派基金会开发的

也是可以用于学习

或者是用于开发一些电子设备

接下来看一下编程语言

那么嵌入式系统

它的编程语言可以采用C语言

有时候也称它为嵌入式C语言

还有C++或者是Java

嵌入式C语言

比如说C51

C51主要是用于51单片机

它的软件的开发

这些嵌入式C语言跟标准的

ANSI C语言

有一点差别

比如嵌入式C语言

可能有bit也就是位的

这种数据的定义

另外由于嵌入式系统

有很多外围的设备

所以通常会提供一些

硬件驱动程序

也就是设备驱动程序

或者外围设备驱动程序

这些驱动程序

一般都是由制造商提供的

例如ADC DAC PWM

它的驱动程序等等

接下来看一下嵌入式软件的结构

那么嵌入式软件

它的结构是分层的

首先在硬件之上

有一个硬件抽象层

我们叫HAL层

它是硬件和软件之间的一个接口

主要是一些硬件驱动程序

通常它是一些函数

可以被应用程序所调用

右边这个图

显示了这个硬件抽象层

是在硬件和应用程序之间的

一个接口层

对于应用程序来讲

它又可以分为两种情况

第一种情况就是

应用程序比较简单

比如说只有一个

或是几个简单的任务

另外用户接口也比较简单

比如说用户的操作比较简单

那这种时候

就直接在硬件抽象层的基础上

编写应用程序就可以了

但是有的应用程序

可能复杂一些

比如说任务复杂

任务多

另外可能资源也需要管理

或者资源比较多

或者还有一些文件需要管理

或者是用户的接口比较复杂

那么这时候就需要采用

操作系统了

所以这种应用程序

就可以基于操作系统来开发

那么操作系统

它可以用于多任务的管理

用于资源的管理

比如说对一些硬件资源

或者存储器资源进行管理

还有就是对系统产生的文件

进行管理

还有就是可以编写一些

复杂的用户接口

那么这是一个基于操作系统的

应用程序的结构

那么在硬件抽象层

和应用程序之间

会有一个操作系统

应用程序在基于操作系统的基础上

再来编写

它可以调用操作系统

提供的一些接口函数

下面我们看一个例子

这个例子是一个简单的

应用程序的例子

在这个程序里头

有一个main函数

然后它内部有一个while循环

在循环中调用的一些函数

或者是硬件驱动程序等等

这就是一般简单的

应用程序的结构

接下来看这个例子

这个例子

是一个基于小型操作系统的

一个例子

在这个例子中

有两个任务

它是通过函数来产生这两个任务

这两个任务可以同时执行

根据它们优先级的不同

执行的顺序也有可能会不一样

这两个任务分别是

用函数来产生的

我们可以看到这两个任务

这就是一个基于小型操作系统的

一个应用程序的例子

感谢您的观看

现代电子系统设计课程列表:

课程简介

-课程简介

第一章 第一章 现代电子系统概述

-1.1 电子系统简介

--1.1 电子系统简介

-1.2 现代电子系统举例

--1.2 现代电子系统举例

-1.3 现代电子系统的组成

--1.3 现代电子系统的组成

-1.4 现代电子系统设计方法

--1.4 现代电子系统设计方法

-第一章 作业

-第一章 讨论题

第二章 传感器和执行器

-2.1 传感器定义

--2.1 传感器定义

-2.2 传感器的分类和性能指标

--2.2 传感器的分类和性能指标

-2.3 常用传感器介绍

-- 2.3.1 常用传感器介绍(1)

-- 2.3.2 常用传感器介绍(2)

--2.3.3 常用传感器介绍(3)

-2.4 常用执行器介绍

--2.4 常用执行器介绍

-第二章 作业

-第二章 讨论题

第三章 模拟电路和模数混合电路

-3.1 模拟信号处理简介

--3.1 模拟信号处理简介

-3.2 信号放大和隔离电路

--3.2 信号放大和隔离电路

-3.3 滤波电路

--3.3 滤波电路

-3.4 运算电路(一)

--3.4 运算电路(一)

-3.5 运算电路(二)

--3.5 运算电路(二)

-3.6 电压比较器

--3.6 电压比较器

-3.7 功率放大电路

--3.7 功率放大电路

-3.8 模-数转换器

--3.8 模-数转换器

-3.9 数-模转换器

--3.9 数-模转换器

-第三章 作业

-第三章 讨论题

第四章 直流电源

-4.1 直流电源简介

--4.1 直流电源简介

-4.2 线性稳压电源

--4.2 线性稳压电源

-4.3 开关稳压电源

--4.3 开关稳压电源

-第四章 作业

-第四章 讨论题

第五章 微处理器与片上系统

-5.1 微处理器简介

--5.1 微处理器简介

-5.2 微处理器和片上系统的发展历程

--5.2 微处理器和片上系统的发展历程

-5.3 微处理器分类

--5.3 微处理器分类

-5.4 微处理器和片上系统举例

--5.4 微处理器和片上系统举例

-5.5 微处理器和片上系统硬件结构

--5.5 微处理器和片上系统硬件结构

-5.6 外围接口和设备

--5.6.1 外围接口和设备简介

--5.6.2 串行接口UART

-- 5.6.3 串行总线SPI

--5.6.4 串行总线 I2C

--5.6.5 串行总线USB

--5.6.6 网络接口CAN

--5.6.7 无线网络接口蓝牙

-5.7 嵌入式软件开发方法

--5.7 嵌入式软件开发方法

-5.8 嵌入式操作系统

-- 5.8.1 嵌入式操作系统

--5.8.2 嵌入式操作系统

--5.8.3 嵌入式操作系统

-5.9 外围设备应用程序开发简介

--5.9 外围设备应用程序开发简介

-第五章 作业

-第五章 讨论题

第六章 TM4C123 SoC及其系统设计

-6.1 TM4C123 简介

--6.1 TM4C123 SoC简介

-6.2 TM4C123 实验板

--6.2 TM4C123 实验板

-6.3 TM4C123 软件开发

--6.3 TM4C123 软件开发

-6.4 TM4C123 实验举例

--6.4 TM4C123实验举例

-第六章 作业

-第六章 阅读资料

-第六章 讨论题

第七章 PSoC及其系统设计

-7.1 PSoC简介

--7.1 PSoC简介

-7.2 PSoC实验板

--7.2 PSoC实验板

-7.3 PSoC软件开发

--7.3 PSoC软件开发

-7.4 PSoC实验举例

--7.4 PSoC实验举例

-第七章 作业

-第7章 阅读资料

-第七章 讨论题

第八章 FPGA与数字系统设计

-8.1 FPGA简介

--8.1 FPGA简介

-8.2 FPGA的发展趋势

--8.2 FPGA的发展趋势

-8.3 FPGA的特点

--8.3 FPGA的特点

-8.4 FPGA的结构

--8.4 FPGA的结构

-8.5 FPGA结构举例

--8.5 FPGA结构举例

-8.6 FPGA设计工具和方法

--8.6 FPGA设计工具和方法

-8.7 QuartusⅡ集成开发环境

--8.7 QuartusⅡ集成开发环境

-8.8 DE2-115实验平台简介

--8.8 DE2-115实验平台简介

-8.9 Verilog硬件设计语言

-- 8.9.1 Verilog简介

--8.9.2 Verilog语法

--8.9.3 Verilog设计方法

--8.9.4 Verilog设计举例(1)

--8.9.5 Verilog设计举例(2)

--8.9.6 Verilog设计举例(3)

--8.9.7 Verilog设计举例(4)

-- 8.9.8 设计仿真

-8.10 数字电路设计与仿真举例

--8.10 数字电路设计与仿真举例

-第八章 作业

-第八章 阅读资料

-第八章 讨论题

第九章 SOPC系统设计

-9.1 SOPC简介

--9.1 SOPC简介

-9.2 Nios II 微处理器简介

--9.2 Nios II 微处理器简介

-9.3 Avalone总线简介

--9.3 Avalone总线简介

-9.4 SOPC设计方法简介

--9.4 SOPC设计方法简介

-9.5 SOPC设计举例

-- 9.5.1 设计内容

--9.5.2 实验操作(1)

-- 9.5.3 实验操作(2)

-9.6 Nios II 软件设计

--9.6 Nios II 软件设计

-第九章 作业

-第九章 讨论题

第十章 SoC实验与设备

-10.1 实验内容与要求

--10.1 实验内容与要求.

-10.2 实验设备与器材

--10.2 实验设备与器材

-10.3 注意事项与调试方法

--10.3 注意事项与调试方法

-10.4 实验结果展示

--10.4 实验结果展示

--学生课内作品展示-音乐播放器

--学生课内作品展示-螃蟹机器人

--学生课内作品展示-手势识别跟踪

--学生课内作品展示-倒立摆

--学生课外作品展示-无线触摸输入设备

--学生课内作品展示-数字手写体识别

-第十章 作业

-第十章 讨论题

期末考试

-期末考试

--期末考试

5.7 嵌入式软件开发方法笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。