C2000入门基础(四) C2000 的时钟和中断系统

+荐课 提问/讨论 评论 收藏
  • 本课程为精品课,您可以登录eeworld继续观看:
  • C2000入门基础(四) C2000 的时钟和中断系统
  • 登录
讲完他的复位的话 我们接下来看一下它这个中断 理解一下 C2000 内部的 一个中断到底是怎么搞的怎么去做的 中断好比是说像我们人类一样 我们平时坐在办公室 然后我们再做一些我们自己常规的一些事情 这个时候我们的中断相当于我们的各种电话 各种人找你 你怎么去按你的优先级去处理这种事情 因为他要打断你的常规的一些事情 来看一下右边的话是这个芯片内核 它从内核级别它能够去处理的 它其实只能处理14个 然后再加几个不可屏蔽的中断 其实他自己本身 我的大脑本来只能响应这么几个而已 但这个远远是不能满足我周边这么多外设 这个事情的 所以我们会有一个叫做PIE的这个扩展 是说我们加了一个扩展模块 让他能够去分类的去处理各种各样的一个外设 我们来看一下这个模块 这个模块是这样子的 是说它分为 12 组 每一组分别可以直接牵扯到 芯片级别的 12 个主要的一个中断 每一组我又把它细分开来 对应每一个外设的一个中断请求 所以这样子的话12×8是等于96 是说我通过我的扩展之后 我一下子可以处理的很多的 一个中断的一个请求了 其实相当于你们的什么IO口扩展ad扩展 这是我们中断扩展这么来的 所以我们要 我们的外设要有一个中断请求的话 我外设级别给他一个使能他一个中断的 就是使能外设中断 然后对应的一个它到底是处于哪一组的 我把他使能了 它是属于CPU级别的哪一组也把使能了 这样子我从链路上 我把这个链路把他使能这样子 下次他如果有事情的时候 我能够保证它能够到 C2000 内核 能够让他去让 C2000 去处理 这里的话是它的一个过程 芯片复位之后 它这个刚才讲到了 到了这个入口 是我的芯片到这个具体的一个位置去取址之后 他会先跑一段这个int00的这个代码 这个代码其实是初始化一些 简单的一些环境变量 又把我一些变量的初始值 搬到我的全局变量里面去 然后再调我的一个main 是我用户自己写的一个主函数入口 在主函数入口里面再做一个初始化 初始化里面其实包含了各种各样的 一些外设手手脚脚之类的一些初始化 还有其中包括这个对这个中断 中断向量这些模块的一个初始化 比如把我的一些把我一些中断的服务函数 是我中断之后要怎么去办的些函数 把它放到对应的一些入口地址里面去 那他可以去当有中断来的时候 他能够到对应的一个入口去取我的一个地址 讲完中断的话 我们来看一下时钟 时钟相当于人的一个心脏 它的每一次跳动是能够维持 能够保证这个芯片的一个正常运行 你始终过快过慢都是心律不正常 首先我们来看一下它 内部有两个内部的一个时钟 分别都是十兆的一个时钟 除了内部的一个时钟源之外 我们还有一个外部的一个时钟输入 一个是我可以直接给他一个有源时钟信号 它直接可以另外的话有一个无源晶振 这是外部时钟输入 这三个构成它的一个时钟源 然后如果这三个时钟源 我都可以通过内部的一些寄存器配置 然后再加个一些锁相环 锁相环其实是给他倍频或者说分频之类的 然后最终达到一个给到C2000的一个时钟频率 比如我这里十兆 然后做一个 20分频分十兆 然后做一个12分频 然后再除以二变成60兆给C2000了 上面是时钟 所以时钟其实算是比较简单的 而且我们也有对应的一些配置例程 用起来很方便 还有的话是我们的一个看门狗 看门狗是看门的 然后我们它里面是用它来 复位我们的一些C2000内核 当我们的程序跑飞了之后 他会有一个默认的时间去把它复位了 这里的话比如我们如果给这个看门狗 给一个十兆的一个时钟的话 它会在 13.11 毫秒的时候 它就去复位 如果你没有及时的去清除掉 这个时钟计数的话它会复位 当然你这个时间是可以配的 你只要把这个时钟改了就行了 我们来看一下它的一个流程图 首先这个时钟这个时钟输入 然后经过一个分频 其实是你实际上的一个技术频率 我这里会有两个开关 举例我把这个这个是看门狗使能的 我把它这个通过寄存器 其实寄存器的一个位我把它置1了 他是可以过来了 我可以开始工作了 他这里面会有一个八位的一个看门狗计数器 他一直在这里开始计数了 其实所谓的给它喂狗 给它喂狗其实是你在代码里面 往某一个寄存器 往这个寄存器里面去写55AA或者说系统复位 这样的话会把这个清零 所以我必须保证 在他计数到八个位都是一之前我把它清掉 否则它这里会导致你复位了 这是看门狗复位 所以也是比较简单的
课程介绍 共计7课时,51分20秒

C2000入门基础

TI C2000 MCU 德州仪器

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

推荐帖子

【晒心得】TI M4开发板分享心得赢百元返现!(已颁奖)
>>【颁奖礼】TI M4开发板分享心得赢百元返现! 开团时间:2013年9月25日早10:00 闭团时间:2013年10月13日晚23:59 心得提交截止时间:12月13日 评奖时间:12月13日-12月20日 团品数量:25套 活动详情请点击:>>TI Hanker M4开发板超低价团购,EEWORLD 资深坛友青风生产&制作 分享心得,还可参与最多100元返现。 获得板...
soso 微控制器 MCU
在430F5529官方例程上面遇见一个问题
//****************************************************************************** //   MSP430F552x Demo - USCI_A0, SPI 3-Wire Master Incremented Data // //   Description: SPI mas...
够了 微控制器 MCU
求助5402程序大于0x4000时装载出错问题
我的板子上外扩了一片sdram,如果代码少于0x4000时装载正常,大于就会报data verification at address 0x41dc,please verify targe memory and memory map. 我的cmd文件如下: -stack  1024 -heap   2048 /********************...
luliku 微控制器 MCU
TI的TMS320C6713高端DSP上电问题
   在TMS320C672X的相关芯片手册中,说明了TI的DSP芯片关于内核和IO上电顺序的问题,在TMS320C6713,TMS320DM642的数据手册上也看到一段话,说这些芯片对上电顺序没有特别的要求,只要保证两者之间的间隔不要大于1秒钟就可以,看来随着TI芯片工艺的改进,以前在5000系列中的上电顺序问题是解决了的。    其中,672x的手册中说...
灞波儿奔 DSP 与 ARM 处理器

xuxuelu1

C2000入门基础(七) C2000 开发环境

2021年11月08日 20:45:59

YangTwo

C2000入门基础(七) C2000 开发环境

2020年08月18日 17:21:08

GuyGraphics

C2000入门基础(七) C2000 开发环境

2020年08月18日 16:19:56

SensorYoung

C2000入门基础(七) C2000 开发环境

2020年08月17日 14:57:40

jpf

学习C2000入门基础

2020年07月22日 17:42:31

大明58

学习C2000入门基础

2020年04月24日 08:50:05

hawkier

可以好好学习下,不错

2019年09月16日 17:21:26

zhangleiat185

好好学习,天天向上!

2019年09月11日 02:34:43

zx1988ZX

好好学习,天天向上!

2019年08月27日 21:25:17

dingxilindy

学习C2000入门基础(七) C2000

2019年07月05日 11:37:06

分享到X
微博
QQ
QQ空间
微信

EEWorld订阅号

EEWorld服务号

汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新文章 手机版

站点相关: EEWORLD首页 EE大学堂 论坛 下载中心 Datasheet 活动专区 博客

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2023 EEWORLD.com.cn, Inc. All rights reserved