TMS320F280049学习5:CPU timer中断

TMS320F280049学习5:CPU timer中断

文章目录

  • TMS320F280049学习5:CPU timer中断
  • 前言
  • 一、工程代码
  • 二、CPU timer时钟
  • 总结


前言

DSP的内部有3个CPU timer,分别是CUP timer0 / 1 / 2,传说CPU timer2一般在跑系统时用,类似单片机跑系统时使用滴答定时器一样,不过CPU timer2一样也可以像其他定时器一样使用。
以下例程代码基于之工程编写的,具体看文章《TMS320F280049学习1:新建工程》。

一、工程代码

#include "driverlib.h"
#include "device.h"
#include "f28004x_pievect.h"#define DRV_LED2_PIN                        23
#define DRV_BUTTON_PIN                      24
#define DELAY_MS(MS)                        DEVICE_DELAY_US((long double)MS * 1000)__interrupt void timer0_interrupt(void);/*******************************************************************************
* 函 数 名         : led_init
* 输    入         : 空
* 输    出         : 空
* 函数功能         : LED初始化
* 详细描述         : 空
*******************************************************************************/
void led_init(void)
{//设置GPIO模式GPIO_setPadConfig(DRV_LED2_PIN, GPIO_PIN_TYPE_STD);//设置GPIO方向GPIO_setDirectionMode(DRV_LED2_PIN, GPIO_DIR_MODE_OUT);
}/*******************************************************************************
* 函 数 名         : timer_init
* 输    入         : 空
* 输    出         : 空
* 函数功能         : 定时器按钮初始化
* 详细描述         : 空
*******************************************************************************/
void timer_init(void)
{//设置计数周期CPUTimer_setPeriod(CPUTIMER0_BASE, 1000000);//设置分频系数CPUTimer_setPreScaler(CPUTIMER0_BASE, 50 - 1);//停止计数CPUTimer_stopTimer(CPUTIMER0_BASE);//复位计数器CPUTimer_reloadTimerCounter(CPUTIMER0_BASE);//设置定时器模式CPUTimer_setEmulationMode(CPUTIMER0_BASE, CPUTIMER_EMULATIONMODE_STOPAFTERNEXTDECREMENT);//绑定中断函数Interrupt_register(INT_TIMER0, &timer0_interrupt);//使能定时器中断CPUTimer_enableInterrupt(CPUTIMER0_BASE);//使能定时器中断Interrupt_enable(INT_TIMER0);//启动计数CPUTimer_startTimer(CPUTIMER0_BASE);
}/*******************************************************************************
* 函 数 名         : main
* 输    入         : 空
* 输    出         : 空
* 函数功能         : 主函数
* 详细描述         : 空
*******************************************************************************/
void main(void)
{//初始化时钟和外设Device_init();//解锁GPIO配置Device_initGPIO();//初始化PIE并清空PIE寄存器,关闭CPU中断Interrupt_initModule();//初始化PIE向量表Interrupt_initVectorTable();//LED初始化led_init();//定时器初始化timer_init();//使能中断EINT;//使能调试事件ERTM;while(1){DELAY_MS(100);}
}__interrupt void timer0_interrupt(void)
{GPIO_togglePin(DRV_LED2_PIN);//清中断Interrupt_clearACKGroup(INTERRUPT_ACK_GROUP1);
}

二、CPU timer时钟

1、代码中定时器分频值50-1,将计数频率分频成1M,+1操作原因看下图CPUTimer_setPreScaler函数。
在这里插入图片描述
2、分频值50,是原因是CPU timer时钟源是PERx.SYSCLK,PERx.SYSCLK时钟来自SYSCLK,SYSCLK是50M(按我现在的理解也许要达到100M系统时钟,需要上20M的晶振)。

CPU timer0时钟源:
CPU timer0时钟源

CPU timer时钟来自SYSCLK:
CPU timer时钟来自SYSCLK

SYSCLK时钟配置:
SYSCLK时钟配置

总结

下一步,GPIO输入中断。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/30945.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络基础

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 当今的时代是一个网络的时代,网络无处不在。而我们前面学习编写的程序都是单机的,即不能和其他电脑上的程序进行通信。为了实…

新火种AI|英伟达市值超越微软!AI技术如何重塑科技股价值?

作者:一号 编辑:美美 AI,正带着美股狂奔。 2024年,英伟达(NVIDIA)以其在人工智能(AI)领域的卓越表现,市值首次超越了科技巨头微软,成为全球市值最高的公司…

车载测试面试项目看这一套就够了!车载测试___自我讲解项目

面试官您好,我叫xx来自安微,今年xx岁,毕业于安微新华学院,我是从2017年开始接触软件测试行业,目前从事软件测试工作有5年多时间,第一家公司做了电商和进销存项目app和web都有做过,上家公司做了车…

C语言变量、指针的内存关系

1. type p ? 表示从内存地址p开始,开辟一段内存,内存大小为类型type规定的字节数,然后把等号右边的值写入到这段内存中。 因此,这块内存起点位置是p,结束是ptype字节数-1。 2. type* p ?表示从内存地址p开始&…

Unity3d 游戏暂停(timeScale=0)引起的deltaTime关联的系列问题解决

问题描述 游戏暂停的功能是通过设置timeScale0实现的,不过在暂停游戏的时候,需要对角色进行预览和设置,为了实现这个功能,是通过鼠标控制相机的操作,为了使相机的操作丝滑,获取鼠标操作系数乘以Time.delta…

Opencv学习项目3——pytesseract

上一次我们使用pytesseract.image_to_data(img)来检测文本,这次我们来只检测数字 项目演示 可以看到,我们只检测了数字其他的并没有检测出来 代码实现 前面两次介绍了opencv的画矩形和设置文本,这次就直接用了,不太明白的可以看…

数据资产与用户体验优化:深入挖掘用户数据,精准分析用户需求与行为,优化产品与服务,提升用户体验与满意度,打造卓越的用户体验,赢得市场认可

一、引言 在数字化时代,数据已经成为企业最宝贵的资产之一。通过深入挖掘和分析用户数据,企业能够精准把握用户需求和行为,从而优化产品与服务,提升用户体验和满意度。这不仅有助于企业在激烈的市场竞争中脱颖而出,还…

Java基础 - 练习(四)打印九九乘法表

Java基础练习 打印九九乘法表&#xff0c;先上代码&#xff1a; public static void multiplicationTable() {for (int i 1; i < 9; i) {for (int j 1; j < i; j) {// \t 跳到下一个TAB位置System.out.print(j "" i "" i * j "\t"…

戏剧之家杂志戏剧之家杂志社戏剧之家编辑部2024年第14期目录

文艺评论 南戏瓯剧跨文化传播研究 陈晓东;高阳;许赛梦; 3-7 论互联网时代的戏剧传播与批评——以西法大剧社和南山剧社为例 邬慧敏; 8-10 “左手荒诞&#xff0c;右手温情”——《西西弗神话》在戏剧《第七天》中的接受探究 赵稳稳; 11-13 戏剧研讨《戏剧之家》投稿…

[SAP ABAP] 数据类型

1.基本数据类型 示例1 默认定义的基本数据类型是CHAR数据类型 输出结果: 示例2 STRING数据类型用于存储任何长度可变的字符串 输出结果: 示例3 DATE数据类型用于存储日期信息&#xff0c;并且可以存储8位数字 输出结果: 提示Tips&#xff1a;日期和时间类型的变量可以直接进…

openh264 帧级码率控制源码分析

openh264 码率控制结构 关于 openh264 码率控制整体结构&#xff0c;可以参考&#xff1a;openh264 码率控制原理框架。 openh264 帧级码率控制介绍 函数关系图&#xff1a;从图可以看出&#xff0c;帧级码控的核心函数就是WelsRcPictureInitGom、WelsRcPictureInfoUpdateGo…

DAB-DETR

论文地址&#xff1a; https://arxiv.org/pdf/2201.12329 文章通过前人的经验得出&#xff0c;导致 DETR 训练速度慢的原因很大可能是因为 decoder 中 cross attention 这个模块&#xff0c;由上面的对比可以看出其与 self attention 的区别主要就在于query的不同。文章猜想两个…

【Python办公自动化之Word】

python办公⾃动化之-Word python-docx库 文章目录 python办公⾃动化之-Word1、安装python-docx库2、⽂档的结构说明3、基本操作语法3.1 打开⽂档3.2加⼊不同等级的标题3.3 添加⽂本3.4 设置字号插曲1&#xff1a;实战演示3.5 设置中⽂字体3.6 设置斜体3.7 设置粗体3.8⾸⾏缩进…

H3C防火墙抓包(图形化)

一.报文捕获 &#xff0c;然后通过wireshark查看报文 二.报文示踪 &#xff0c; 输入源目等信息&#xff0c; 查看报文的详情

mongodb 集群安装

整体架构图&#xff1a; 1. 配置域名 Server1&#xff1a; OS version: CentOS Linux release 8.5.2111 hostnamectl --static set-hostname mongo01 vi /etc/sysconfig/network # Created by anaconda hostnamemong01 echo "192.168.88.20 mong1 mongo01.com mongo…

返回给前端数据的封装

返回格式如下&#xff1a; { "code": 200/400, "msg": "成功"/"失败", "total": n, "data": [ {}&#xff0c;{}]} 1.在common中新增Result 类&#xff0c;代码如下 package com.xxx0523.common; import lombo…

酸性设计震撼登场,让你眼前一亮!

说起酸性&#xff08;ACID&#xff09;&#xff0c;你会想到什么&#xff1f;”我们通常会想到酸味&#xff0c;酸设计的视觉魅力是通过图形、颜色、排版给人复古、迷幻、黑暗、叛逆的感觉&#xff0c;反复几何图形和高饱和的颜色&#xff0c;使设计非常时尚&#xff0c;非常适…

css实现多行文本的展开收起

背景 在我们写需求时可能会遇到类似于这样的多行文本展开与收起的场景&#xff1a; 那么&#xff0c;如何通过纯css实现这样的效果呢&#xff1f; 实现的难点 &#xff08;1&#xff09;位于多行文本右下角的 展开收起按钮。 &#xff08;2&#xff09;展开和收起两种状态的…

Spatio-temporal Relation Modeling for Few-shot Action Recognition

标题&#xff1a;少样本动作识别的时空关系建模 源文链接&#xff1a;Thatipelli_Spatio-Temporal_Relation_Modeling_for_Few-Shot_Action_Recognition_CVPR_2022_paper.pdf (thecvf.com)https://openaccess.thecvf.com/content/CVPR2022/papers/Thatipelli_Spatio-Temporal_…

Pikachu靶场--RCE

参考借鉴 pikachu-RCE_pikachu rce-CSDN博客 Pikachu靶场-RCE远程命令/代码执行漏洞-CSDN博客 命令执行/代码执行/RCE&#xff08;CTF教程&#xff0c;Web安全渗透入门&#xff09;_bilibili exec"ping" 输入IP地址查看页面反应 可以在IP地址的后面拼接我们想要执行…