首页 > 产品 > 微控制器 (MCU) 和处理器 > C2000入门基础 >

C2000

最新课程

热门课程

C2000入门基础(六)—C2000的控制外设

好那我们讲完两个主题了 第三个就是控制外设 控制外设一个就是我们的一个 我们来看一下我们ADC ADC是非常关键的 就是说我们内部我们来看一下 我们有一个所谓的一个ADC 那他有两个采样保持器 那它就可以来采我们的一个ADC 然后呢最终输出ADC的结果 那它的一个机制呢就是SOC机制 SOC 机制就是说它里面有 里面有独立的这种SOC配置 每个 SOC 都是相同的一个功能 我可以独立的配置它的触发源通道 还有一个采样保持器 所以你要采一路你就配置一个 我要采多路我就踩 我就配置多个 那它的触发源的话 我们有一个我们的软件触发 我们有cpu的一个TIMER 我们有这个 PWM 的这种触发源 那他这些触发源来了之后呢 我就去采对应的通道 然后最终让他输出这个中断 这就是它的一个流程 那简单的一个举例子 就是说比如我要采A2 B3 A7 这三个通道 那用什么信号来触发呢 用 PWM1 他就可以这么去配 我首先我的触发源配置成PWM1 那这三个通道我都配置成同一个触发源 那采样保持时间 我可以自己独立的配 那最终的一个结果 就是这个触发源来了之后呢 还可以去输出一个中断 那我就可以在这个中断来的时候 去读这三个结果 那这也是类似的一个例子 那除了 ADC 的话 我们跟 ADC 绑定的话 我们内部有一个 有三个那个模拟比较器 这个模拟比较器的话 它是直接跟这个ADC引脚是连在一起的 所以我们可以用这个模拟信号 同时输入到这个比较器里面去 那它的负端呢就可以是内部的一个DAC 这样的话就可以达到一个让他输出一个低电平 那这个低电平的话到时候会输出给PWM 让他做出一些保护动作 那PWM的这个 我们芯片每一个PWM模块都是有这些信号 那左边呢是一些保护信号输入 那右边的话是我的输出 我的输出最常见的就是说 我输出 PWM AB 两路信号 那还有的话就是说 我会输出一些触发信号 就触发我的 ADC 让它进行转换 以及我会产生一些中断给到CPU 这就是每一个模块 它的一个信号的一个接口 那具体来讲的话 它每一个模块里面会细分成几个子模块 那比如我有一个16位的一个timer 计数器就开始不断的去计数 那会根据我这个给他配置的一个时钟进行计数 那计数之后呢我会有一个比较的一个逻辑 就是说我产生比较之后呢 会让他去产生一些比较事件 当产生比较事件或者周期事件之后 我有一个 Action Qualifier 就是动作模块 这个动作模块就会让它 在这些事件之后呢 是高电平还是低电平 在经过死区然后再还有保护的话 就输出我的PWM 那这里面再简单的介绍一下 就是说16位的一个时基 它有它的一个计数器的话有增减 然后增减模式 这三种计数模式 那用的比较多的都是增减模式了 那它的一个比较事件的话 就是像刚才说的 就是说有它里面有两个比较器 比较器 A B 那它会产生对应的一个事件 A B这个事件 那当这些事件来的时候呢 我的一个动作模块就可以去设置 当我有这些比较事件的时候 我到底是做什么 首先有这个不做什么任何事情 或者是说可以清零拉高或者翻转 这就是我们PWM产生的一个原理 这就是一个例子 就这举例的话 就是说一个递增的一个计数 那我让他设置 他在计数器等于0的时候 我让他拉高 然后呢在比较器A的这个事件的话 我就让他拉低 这就是产生一个PWM了 那我们所有的PWM都是这样来的 那我通过我的算法里面通过 修改这个比较器A的这个值 那我就可以修改我的PWM的占空比 那这个呢是我们TZ保护模块 TZ保护模块 就是说我有很多这种保护信号 我的一些过流信号都是可以通过这个引脚输入 那当这些信号来的时候 我就可以通过这个模块 我可以简单做一些简单的寄存器配置之后 让它可以在20纳秒以内就把我的PWM关掉 这就是保护模块 那这个是我们的一些信号了 就我好多事件 那这些事件除了能够产生动作 我还可以去产生中断跟这个ADC触发信号 其实就刚才说的这些信号 我可以在修改PWM的时候去触发ADC 除了这个呢我们常规的这个ADC的话 我们还有一个高精度的一个PWM 这个高精度的PWM的话 是跟这个常规的这个PWM是绑定在一起的 就绑在一起的 我们它这个它的精度就是说是150ps 就比如我们计算一个占空比 是我们具体计算的一个值是 10.5 clock 数值的话 0.5 我们是写不进去的 那么我们就可以用这个高精度PWM去实现 那除了这个的话 eCAP 的话就可以去来 用来这个捕获这个脉冲信号 就我有一个方波信号的时候 我就可以用这个模块去捕获它的一个周期占空比 那这个的话也比较常用 我就不详述了 那 QEP 的话就是用它来 就是我们的编码器接口 当我们这个电机有一些位置信号的时候 我们是通过这个模块 然后去计算这个电机的角度 电机的位置跟角度的 但这种的话主要就是说 这个电机配置的是编码器接口 那每个电机它像这种传感器接口的话 它就是电机会有一个光码盘 会装在电机里面 然后呢他会输出这样一些脉冲 这样的方波信号 那我这个模块 我这个模块就会采样这个信号 然后最终在内部对这个信号进行计数 然后最终去测得测出这个电机的一个位置

好那我们讲完两个主题了

第三个就是控制外设

控制外设一个就是我们的一个

我们来看一下我们ADC

ADC是非常关键的

就是说我们内部我们来看一下

我们有一个所谓的一个ADC

那他有两个采样保持器

那它就可以来采我们的一个ADC

然后呢最终输出ADC的结果

那它的一个机制呢就是SOC机制

SOC 机制就是说它里面有

里面有独立的这种SOC配置

每个 SOC 都是相同的一个功能

我可以独立的配置它的触发源通道

还有一个采样保持器

所以你要采一路你就配置一个

我要采多路我就踩

我就配置多个 那它的触发源的话

我们有一个我们的软件触发

我们有cpu的一个TIMER

我们有这个 PWM 的这种触发源

那他这些触发源来了之后呢

我就去采对应的通道

然后最终让他输出这个中断

这就是它的一个流程

那简单的一个举例子

就是说比如我要采A2 B3 A7 这三个通道

那用什么信号来触发呢

用 PWM1 他就可以这么去配

我首先我的触发源配置成PWM1

那这三个通道我都配置成同一个触发源

那采样保持时间

我可以自己独立的配

那最终的一个结果

就是这个触发源来了之后呢

还可以去输出一个中断

那我就可以在这个中断来的时候

去读这三个结果

那这也是类似的一个例子

那除了 ADC 的话

我们跟 ADC 绑定的话

我们内部有一个

有三个那个模拟比较器

这个模拟比较器的话

它是直接跟这个ADC引脚是连在一起的

所以我们可以用这个模拟信号

同时输入到这个比较器里面去

那它的负端呢就可以是内部的一个DAC

这样的话就可以达到一个让他输出一个低电平

那这个低电平的话到时候会输出给PWM

让他做出一些保护动作

那PWM的这个

我们芯片每一个PWM模块都是有这些信号

那左边呢是一些保护信号输入

那右边的话是我的输出

我的输出最常见的就是说

我输出 PWM AB 两路信号

那还有的话就是说

我会输出一些触发信号

就触发我的 ADC

让它进行转换

以及我会产生一些中断给到CPU

这就是每一个模块

它的一个信号的一个接口

那具体来讲的话

它每一个模块里面会细分成几个子模块

那比如我有一个16位的一个timer

计数器就开始不断的去计数

那会根据我这个给他配置的一个时钟进行计数

那计数之后呢我会有一个比较的一个逻辑

就是说我产生比较之后呢

会让他去产生一些比较事件

当产生比较事件或者周期事件之后

我有一个 Action Qualifier 就是动作模块

这个动作模块就会让它

在这些事件之后呢

是高电平还是低电平

在经过死区然后再还有保护的话

就输出我的PWM

那这里面再简单的介绍一下

就是说16位的一个时基

它有它的一个计数器的话有增减

然后增减模式

这三种计数模式

那用的比较多的都是增减模式了

那它的一个比较事件的话

就是像刚才说的

就是说有它里面有两个比较器

比较器 A B

那它会产生对应的一个事件

A B这个事件

那当这些事件来的时候呢

我的一个动作模块就可以去设置

当我有这些比较事件的时候

我到底是做什么

首先有这个不做什么任何事情

或者是说可以清零拉高或者翻转

这就是我们PWM产生的一个原理

这就是一个例子

就这举例的话

就是说一个递增的一个计数

那我让他设置

他在计数器等于0的时候

我让他拉高

然后呢在比较器A的这个事件的话

我就让他拉低

这就是产生一个PWM了

那我们所有的PWM都是这样来的

那我通过我的算法里面通过

修改这个比较器A的这个值

那我就可以修改我的PWM的占空比

那这个呢是我们TZ保护模块

TZ保护模块

就是说我有很多这种保护信号

我的一些过流信号都是可以通过这个引脚输入

那当这些信号来的时候

我就可以通过这个模块

我可以简单做一些简单的寄存器配置之后

让它可以在20纳秒以内就把我的PWM关掉

这就是保护模块

那这个是我们的一些信号了

就我好多事件

那这些事件除了能够产生动作

我还可以去产生中断跟这个ADC触发信号

其实就刚才说的这些信号

我可以在修改PWM的时候去触发ADC

除了这个呢我们常规的这个ADC的话

我们还有一个高精度的一个PWM

这个高精度的PWM的话

是跟这个常规的这个PWM是绑定在一起的

就绑在一起的

我们它这个它的精度就是说是150ps

就比如我们计算一个占空比

是我们具体计算的一个值是 10.5 clock

数值的话 0.5 我们是写不进去的

那么我们就可以用这个高精度PWM去实现

那除了这个的话

eCAP 的话就可以去来

用来这个捕获这个脉冲信号

就我有一个方波信号的时候

我就可以用这个模块去捕获它的一个周期占空比

那这个的话也比较常用

我就不详述了

那 QEP 的话就是用它来

就是我们的编码器接口

当我们这个电机有一些位置信号的时候

我们是通过这个模块

然后去计算这个电机的角度

电机的位置跟角度的

但这种的话主要就是说

这个电机配置的是编码器接口

那每个电机它像这种传感器接口的话

它就是电机会有一个光码盘

会装在电机里面

然后呢他会输出这样一些脉冲

这样的方波信号

那我这个模块

我这个模块就会采样这个信号

然后最终在内部对这个信号进行计数

然后最终去测得测出这个电机的一个位置

视频报错
手机看
扫码用手机观看
收藏本课程

视频简介

C2000入门基础(六)—C2000的控制外设

所属课程:C2000入门基础 发布时间:2016.03.30 视频集数:7 本节视频时长:00:07:38
TI C2000 是已针对处理、传感和驱动进行优化以提高闭环性能的 32 位实时控制MCU。本入门课程从其基本技术点和在白色家电上的应用作了讲解。 C2000 的数学优化型内核可为设计人员提供能够提高系统效率、可靠性以及灵活性的方法。功能强大的集成外设使这些实时器件成为适合各种应用的完美单芯片控制解决方案。
TI培训小程序