当前课程知识点:现代电子系统设计 >  第七章 PSoC及其系统设计 >  7.3 PSoC软件开发 >  7.3 PSoC软件开发

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

7.3 PSoC软件开发在线视频

下一节:7.4 PSoC实验举例

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

7.3 PSoC软件开发课程教案、知识点、字幕

下面讲第七章第三节

PSoC软件开发方法

在这一节我们主要讲

PSoC的一个集成开发环境

另外举几个外设设计的例子

PSoC的集成开发环境

叫PSoC Creator

这是它的一个界面

接下来我们看一下它的设计流程

它的设计流程包括六步

第一步就是建立新的工程文件

第二步叫编辑顶层设计文件

PSoC Creator呢

集成了一个图形化的设计环境

在这个图形化设计环境中

可以对它的外设进行设计

这是第二步

第三步设计完成以后

就给外设分配引脚

第四步是生成应用程序

这是PSoC Creator它可以自动生成的

应用程序

第五步就是编写C程序的代码

最后就是编程和调试

也就是编译以后

把这个目标文件下载到PSoC中

进行在线的调试

首先第一步是建立一个新的工程

那这是在这个软件的界面

点击File

然后选择New Project来实现的

之后就会弹出相应的对话框

在这个对话框中

需要选择PSoC芯片的型号

接下来第二步是进行顶层文件的设计

这个界面中在它的最左边

有一个工作区

列出了工程的一些文件目录

在右边是元件的目录

显示了PSoC可以提供的一些元件

包括通信的模块

然后模拟的模块

以及数字的模块等等

在它的中间是设计区域

设计的时候呢

我们从它的右边的元件目录中

选择需要的这个元件

然后把它拖到设计区域

例如

我们可以选择出来这个PWM

还有就是这个时钟Clock

还有一个就是引脚Pin

那么这些设备呢

如果要把它连接起来

组成一个系统的话

这时候我们可以用它的

左上角的这个连线的工具

来进行连线

连线完成以后呢

还需要对这些设备呢

进行属性的设置

这时候我们双击设备

就可以打开属性设置的对话框

在这个图中

我们双击PWM

在它的下面就打开了属性设置的对话框

这时候可以设置它的属性

例如设置这个PWM的

它的这个脉宽

还有它的周期等等

另外在这个界面的左下角

有一个Datasheet的按钮

然后点击以后

就可以打开它的这个手册

手册里头会描述它的功能

它的属性

另外还会有它的驱动函数

有可能还会有示例代码等等

所以我们在设计的时候呢

就需要去查看这个手册

这个手册是非常重要的

对于设计来讲

接下来设计完成以后呢

就可以分配引脚了

我们点击这个工作区

左边工作区的这个Pins

那么这时候呢

在这个中间呢

就会显示PSoC对应的这个引脚

这时候在这个右边我们就可以选择对应的

这个引脚的端口

例如我们为Pin1选择了这个

P63GPIO端口

那么引脚分配完了以后呢

那接下来可以让它自动产生一个应用

那这时候呢

我们是点击Build

然后选择Generate Application

来实现的

那么点击以后呢

就出现这个界面

这时候在这个界面里头

我们点击左边的main.c这个函数

然后在右边的这个框中

就可以对这个程序进行编辑和修改了

编辑完成以后呢

就可以点击Debug

然后选择Program

然后进行调试和仿真

另外呢

可以下到这个板子上面的PSoC上面

进行编程

这就是它的这个整个的设计的流程

那么对于PSoC的设计呢

它也是基本上主要是对它的

这个设备进行设计

那么外设的设计方法呢

它的步骤是类似的

但是它的这个细节是不一样的

在设计设备的时候呢

通常你都先需要了解这个设备

然后看看它的功能

然后了解它的这个属性

然后再了解它的驱动函数

还有示例代码等等

下面呢

举几个列子

第一个列子呢

就是CapSense的这个设计

那么什么是CapSense呢

我们刚才提到了

CapSense呢

就是一个电容触摸式感应的一个技术

这个技术呢

可以感知电容的变化

所以呢

用它可以设计一些电容触摸式的按钮

或者是滑条

比方说像这个

这个实际上呢

它是一个电路板

在这个电路板上面呢

做了这个触摸的按钮

这时候这个中间圆形的蓝色的按钮呢

实际上它的材质呢

是导体

比如说这个铜皮

然后在它的周围一圈黑色的呢

代表的是绝缘的材料

然后在黑色的一圈的外围呢

就是蓝色的这个网状的这个材料

蓝色的网状的材料呢

也是导体

比如说铜皮

那这时候按键

和周围的这个网状的材料之间

就组成了一个电容

那这个电容值呢

就是一个固定的电容值

如果我们用手指去触摸这个中间的

按钮的时候

因为人体手指是导体

所以这时候手指跟周围的网状的

这个材料之间

也形成了一个电容

那这个电容和它原来这个按键的电容呢

叠加在一起

那这时候就会改变原来的这个

按键的总体的电容值

那CapSense技术呢

就可以来测量这个电容值的改变

从而能够感知是否有手指按上去

这是CapSense它的技术的这个原理

那通常在实际应用的时候呢

在CapSense按键上面呢

会要覆盖一个表层

然后在表层上面呢

可以用手去触摸它

这是CapSense它的这个技术

那具体来讲呢

我们再来看一下

Cypress呢

它有几种电容触摸感应的技术

其中有一种就叫CSD

它是电容sigma-delta感应方法

它主要是利用了一个开关电容的技术

以及一个sigma-delta的一个转换器

这个sigma-delta转换器呢

实际上就是一个sigma-delta的这个ADC

那下面我们看一下它的这个原理图

在方框的这个左边呢

有两个电容

这个电容CP呢

就代表触摸按键

它本身等效的这个电容

然后电容CF呢

代表手指触摸上去以后

等效的电容

这两个电容呢

是并连连接的

另外这两个电容呢

通过电阻Rs连接到了两个开关

SW1和SW2

而这两个开关呢

是通过这个上面的一个时钟来控制的

这个时钟控制这两个开关

交替的闭合和打开

例如这个时候是SW1打开

而SW2闭合

当SW2闭合的时候

就把这两个电容连接到电路里头

进入右边的sigma-delta的这个ADC里头

这时候上面有两个电流源

连接到sigma-delta的这个输入端

同时对这两个电容进行充电

使得ADC输入端的电位发生变化

那这时候这个ADC呢

能够感知手触摸上去以后

电容的变化所产生的电压的变化

于是就把这个变化值转换数值量

然后就可以判断出来

这个手指是不是按上去了

这就是它的电路的工作原理

在用软件设计的时候

我们在PSoC Creator里头呢

在选择了CapSense这个功能以后呢

我们要对它的属性进行设置

打开这个CapSense模块

在这个对话框里头

可以进行一些属性的设置

如果要了解CapSense它的信息

也可以点击这个左下角的这个Datasheet

去进行了解

当然在实际设计的时候呢

我们可以利用PSoC Creator

提供的一些样例

也就是一些示例的代码来进行设计

那我们可以学习它的示例代码中

这个PSoC Creator

是怎么设置它的属性的

是怎么去编程的

学习了以后呢

然后我们再去进行设计

这样会提高效率

接下来我们讲第二种设备

就是蓝牙模块

这是PSoC6所具有的一个设备

我们在第五章中

学习了这个蓝牙通信的一些方法

那么蓝牙通信的时候

大家还记得

就是它要组成一个微网

这时候微网里头有一个主设备

然后有最多七个从设备

那么主设备呢

负责发起建立连接

然后发起这个数据交换

下面我们对建立连接过程呢

进行一个简单的介绍

首先假设有两个设备

一个是主设备

比如说手机

另外一个是从设备

比如说是PSoC设备

那这时候在通信的时候呢

首先第一步就是要发现设备

这时候主设备要查询周边蓝牙的设备

它会发送一个广播的这个信息

而从设备呢

就在不停的扫描有没有主设备查询

如果扫描到这个查询的广播信息以后

它就会做出响应

这时候它会发送这个设备的访问码

和时钟信息

然后主设备收到这些信息以后呢

就进行第二步建立连接

主设备呢

这时候会广播一个信息

包括这个访问代码

要求建立连接

然后从设备呢

就在不断的扫描是否有建立连接的

广播信息

这时候它会监听这个广播信息里头

有没有自己的这个访问码

一旦监听到了以后

它就知道这个主设备是请求

跟它建立连接的

于是就做一个响应

这时候主设备收到这个响应以后

就会发送时钟和配置信息给从设备

那么这时候从设备跟主设备之间

就可以建立连接了

建立连接以后呢

就可以开始发送数据

这时候可以由主设备来发起

交换数据

这是这个蓝牙设备

它建立连接的这个过程

那么对于蓝牙设备呢

也一样

在用PSoC Creator进行设计的时候

也要对它的属性进行设置

设置的时候呢

同样一方面可以看它的这个数据手册

datasheet

另一方面呢

也可以参考PSoC Creator

提供的一些示例代码进行学习

然后再进行编程

这是第二个设备

第三个设备就是IPC

也是PSoC6它所具有的一个设备

那么IPC是什么呢

它是用于PSoC6里头

两个微处理器之间通信的这么一个模块

然后它通信的时候

是采用信号量和互斥锁来实现的

在这个图中

我们看到PSoC6的微处理器子系统呢

有很多这个设备

那这些设备呢

一方面会通过它的这个总线

AHB总线

进行连接

同时两个微处理器之间呢

就会通过这个IPC来进行通信

下面我们举一个例子

这个例子呢

就是两个微处理器呢

通过互斥锁来访问控制一个共享的变量

那下面我们来看一下它的这个工作流程

首先有CM0和CM4这两个微处理器

那么它的这个流程是这样子

首先是CM0进行系统的初始化

然后接下来呢

CM0在初始化这个IPC之后

再使能CM4

这时候CM4就可以进行自己的初始化了

接下来CM0呢

再设置IPC的通道地址

同时CM4也设置一个相同的

这个IPC的地址

设置完成以后

它们就可以进行通信了

这时候CM0要等待这个IPC通道空闲

一旦空闲以后

它就可以请求通道锁存

然后发送共享的内存地址

也就说它请求锁存这个通道

然后把这个要共享的这个变量

发送到这个内存地址里头去

这时候CM4呢

接下来它就会等待通道被锁存的信息

一旦知道这个通道被锁存了以后

它就可以读取这个共享内存地址里头的

这个变量了

然后读取完成以后呢

它再释放这个通道

这时候CM0呢

就是在监听等待这个通道的释放

一旦等待释放完成以后呢

这时候它们就可以再进行下一轮的

这个通信了

这就是PSoC6利用IPC进行通信的

一个流程

那么IPC进行通信的这个例子呢

大家可以学习以后

然后再可以自己进行编程

去实现一个新的IPC的一个通信的模式

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

课程简介

-课程简介

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

-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 实验结果展示

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

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

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

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

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

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

-第十章 作业

-第十章 讨论题

期末考试

-期末考试

--期末考试

7.3 PSoC软件开发笔记与讨论

也许你还感兴趣的课程:

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