电赛一等奖!基于TMS320F2812的简易数字频率计

news2025/3/16 3:46:41

电赛一等奖!简易数字频率计设计(原理图、PCB、源码、分析报告)

        这份文件是关于合肥工业大学电气与自动化工程学院的一个项目报告,题目为“基于TMS320F2812的简易数字频率计”。项目由方敏、侯其立、李苗、张巧云四位本科生完成,指导教师为徐科军教授。以下是该项目报告的核心内容概述:

项目背景与目的:

  • 频率测量在多个领域非常重要,因此高精度、宽量程的数字频率计成为了关键的测量工具。
  • 项目设计采用了多周期测量原理,通过标准频率信号填充被测信号的整数个周期,以消除计数误差,提高测量精度。

系统设计与实现:

  • 选用了TMS320F2812型号的DSP芯片作为核心处理单元,利用其高精度时钟和快速运算能力。
  • 结合DSP芯片的事件管理器,如捕获单元、定时/计数单元、比较单元和脉宽调制电路PWM,实现了高精度的频率测量及脉宽和占空比的测量。

系统指标与性能:

  • 系统设计满足了高精度测量的要求,具体性能指标包括幅度范围、频率范围、最大相对误差等。
  • 系统在保证最大相对误差的前提下,尽可能扩大了测量范围。

测量方法及理论误差分析:

  • 详细介绍了频率测量、脉宽和占空比测量以及幅值测量的方法和理论误差分析。
  • 讨论了量化误差、测量原理误差和标准频率误差对测量结果的影响。

摘要

        频率测量用途非常广泛,高精度、宽量程的数字频率计因而成为重要的测量仪器。本设
计采用多周期测量原理,即用标准频率信号填充整数个周期的被测信号,从而消除了被测信
号+1 的计数误差,其测量精度仅与门控时间和标准频率有关,克服传统的直接测频或者直
接测周法均不能全面满足高精度要求的缺陷。选用 TMS320F2812 型号的 DSP 芯片作为核心处
理单元,结合其高精时钟和快速运算的优点,充分利用其内部的事件管理器:捕获单元,定
时/计数单元,比较单元,脉宽调制电路 PWM,实现高精度的频率测量,并且实现了脉宽和
占空比的测量。
关键词:
高精度频率测量;脉宽和占空比测量;多周期测量原理;DSP ;
系统组成
系统主要是由电源管理模块,输入调理模块,信号处理模块,通讯模块和 D 触发器组
成,如图 所示
信号处理部分
本设计中采用的 DSP 芯片型号为 TMS320F2812,它是到目前为止 C2000 系列中性能最强
大的一代产品。系统中,F2812 协调整个系统各模块的有序工作,并且承担着信号处理的任
务。
系统软件设计
系统软件设计采取模块化设计方案,将完成特定功能或者类似功能的子程序组合成功能
模块,主要功能模块有:初始化模块、中断模块、频率测量模块、脉宽测量模块、SCI 通信
模块以及看门狗模块等,由主监控程序统一调用,协调各个部分正常有序工作。软件系统功
能框图如图所示。
关键程序:
EV 配置程序:
void InitEv(void)
{
EvaRegs.GPTCONA.all = 0;
EvbRegs.GPTCONB.all = 0;
EvaRegs.EXTCONA.bit.INDCOE=1;//
EvaRegs.GPTCONA.bit.T1CTRIPE = 1;//使能定时器 1 输出切断功能
EvaRegs.GPTCONA.bit.T1CMPOE = 1;//使能 T1 比较输出,允许独立使能禁止
//将通用定时器 1 的比较输出设置成低电平有效
EvaRegs.GPTCONA.bit.T1PIN = 1;
// 将定时器 1 设置成连续增计数模式外部时钟,使能 T1 比较
EvaRegs.T1CON.all = 0x101a;
EvaRegs.T1PR=0xffff;
EvaRegs.T1CMPR=1;
// 将定时器 2 设置成连续增计数模式 4 分频,内部时钟
EvaRegs.T2CON.all = 0x1288;
EvaRegs.T2PR = 0xffff;
EvbRegs.T3PR = 0xffff;
EvbRegs.T3CMPR =30000;//T3CMPR 设置为 10000 预置时间
EvbRegs.T4PR=0xffff;
EvbRegs.T4CON.all=0x1000; //T4 使用内部时钟
EvaRegs.CAPCONA.all= 0x04E4; //CAP3 时基为 T1,检测上边沿, CAP1 时基为 T2 ,检
测两个边沿
EvbRegs.CAPCONB.all=0x0064; //CAP4 上升沿 cap5 下降沿,时基 T4
}
主循环程序:
while(1)
{
//***开始测量频率
EvaRegs.CAPCONA.bit.CAP12EN = 1;//使能捕获 1
//实验发现,使能捕获 1 后 CAP1FIFO 会变成 2,故重新复位
EvaRegs.CAPFIFOA.bit.CAP1FIFO=0;
EvaRegs.CAPFIFOA.bit.CAP3FIFO=0;
EvaRegs.T1CON.bit.TENABLE=1;//使能 T1、T2
while(EvaRegs.EVAIFRA.bit.T1CINT!=1)KickDog();//等待 T1 发生比较匹配
t1cint_isr();
while(EvbRegs.EVBIFRA.bit.T3CINT!=1);//等待 T3 发生比较匹配
t3cint_isr();
while(EvaRegs.EVAIFRA.bit.PDPINTA != 1 )KickDog();//等待 PDPINTA 置位
pdpinta_isr();
//***频率测量结束,禁止定时器和捕获
EvaRegs.T1CON.bit.TENABLE=0;//禁止 T1、T2
EvaRegs.CAPCONA.bit.CAP12EN=0;//禁止捕获 1
EvaRegs.CAPCONA.bit.CAP3EN=0;//禁止捕获 3
//***计算频率周期
Freaa[n_celiang]=150000000.0*(65536.0*t1ofcount+t1_2-1)/((4.0*2)*(t2_2+t2ofcoun
t*65536.0-t2_1));
Taa[n_celiang]=1.0/Freaa[n_celiang];
GpioDataRegs.GPASET.bit.GPIOA0 = 1;//写 1 给 GPIOA0 口
//***开始测量脉宽
EvbRegs.CAPFIFOB.bit.CAP4FIFO=1;//置 CAP4FIFO 为 1
EvbRegs.T4CON.bit.TENABLE=1;// 使能 T4
EvbRegs.CAPCONB.bit.CAP45EN = 1;//使能 CAP45
while(EvbRegs.EVBIFRC.bit.CAP4INT!=1)KickDog();//等待 CAP4 中断标志位职
capint4_isr();
//***脉宽测量结束,禁止定时器和捕获,复位中断标志位
资源下载
电赛一等奖!简易数字频率计设计(原理图、PCB、源码、分析报告)icon-default.png?t=N7T8https://download.csdn.net/download/xcltapestry/89356209?spm=1001.2014.3001.5503

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

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

相关文章

SpringCloud微服务之Nacos、Feign、GateWay详解

SpringCloud微服务之Nacos、Feign、GateWay详解 1、Nacos配置管理1.1、统一配置管理1.1.1、在nacos中添加配置文件1.1.2、从微服务拉取配置 1.2、配置热更新1.2.1、方式一1.2.2、方式二 1.3、配置共享1.3.1、配置共享的优先级 1.4、搭建nacos集群1.4.1、初始化数据库1.4.2、下载…

【C语言】走进指针世界(下卷)

前言 在“走进指针世界(上卷)”中,我们已经说过:什么是指针、内存和地址,指针的使用、声明、初始化,取地址运算符、解引用运算符以及这两者关系,还有指针赋值。 在正式使用指针进行各种代码的…

光缆车间可视化 | 智能制造新科技

光缆车间可视化系统实时监控生产流程、设备状态和质量检测数据,帮助管理人员及时发现并解决问题,提高生产效率和产品质量。

研发机构大数据迁移如何保障敏感数据不泄露

随着云计算和大数据技术的飞速进步,越来越多的企业正试图通过数据迁移来提升IT基础设施的效率,减少成本,并增强业务的灵活性。但是,这一过程并非没有它的挑战,尤其是在数据安全方面。数据在转移过程中可能会遭遇黑客攻…

已有yarn集群部署spark

已有yarn集群的情况下,部署spark只需要部署客户端。 一、前提条件 已部署yarn集群,部署方式参考:https://blog.csdn.net/weixin_39750084/article/details/136750613?spm1001.2014.3001.5502,我部署的hadoop版本是3.3.6已安装j…

第86天:代码审计-PHP项目TP框架安全写法1day利用0day分析

案例一: 利用框架漏洞-TP3框架-SQL注入&Demo&YxtCMF 首先先查询thinkphp的版本 去寻找版本漏洞: Thinkphp3.2.3及以下版本漏洞整理_thinkphp3.2.3漏洞-CSDN博客 去查这个exp注入 这里的利用条件是必须有find方法,并且where后面的参数是数组 …

长效IP和短效IP的使用指南分享

随着网络技术的发展,代理IP已经成为许多人在网络活动中不可或缺的工具。 代理IP不仅有助于保护用户的真实IP地址,保护用户的使用隐私,还可以帮助用户提升网络访问的速度等。 然而,在挑选代理IP时,用户常常会面临一个…

【Basic】Upload-Labs-Linux

文章目录 前言Pass-01Pass-02Pass-03Pass-04Pass-05Pass-06Pass-07Pass-08Pass-09Pass-10Pass-11Pass-12Pass-13Pass-14Pass-15Pass-16解题感悟 前言 美好的一天从刷题开始 Pass-01 我淦20道题???一道一道来吧 先看第一道题 先在home里搞一…

基于open3d对kitti数据集检测结果可视化

前言 KITTI数据集是自动驾驶和计算机视觉领域中一个广泛使用的基准数据集,它提供了丰富的传感器数据,包括激光雷达、相机和GPS等。Open3D是一个功能强大的3D数据处理和可视化库,支持多种3D数据格式。本文将介绍如何使用Open3D对KITTI数据集的…

9.Docker网络

文章目录 1、Docker网络简介2、常用基本命令3、网络模式对比举例3.1、bridge模式3.2、host模式3.3、none模式3.4、container模式3.5、自定义网络 1、Docker网络简介 作用: 容器间的互联和通信以及端口映射容器IP变动时候可以通过服务名直接进行网络通信而不受到影…

PY32F003+RTL8710(AT) 实现获取天气情况

一、RTL8710主要AT指令 1、ATSR:模块重启 2、ATSE1:开启回显 3、ATPW1:station模式 4、ATPNssid,password,,:连接到AP 5、ATPK1:设置自动接收 6、ATPC0,v1.yiketianqi.com,80:与网站建立TCP连接 7、ATPT125…

USART串口通信(stm32)

一、串口通信 通信的目的:将一个设备的数据传送到另一个设备,扩展硬件系统 通信协议:制定通信的规则,通信双方按照协议规则进行数据收发 STM32F103C8T6 USART资源: USART1、 USART2、 USART3 自带波特率发生器&…

基于Android studio 使用SQLite数据库完成登录注册功能——保姆级教程

🍅文章末尾有获取完整项目源码方式🍅 点击快捷传送地址: 保姆级教学——制作登陆注册功能页面 目录 一、准备工作 二、创建相关文件 三、页面布局 四、DabaHelper帮助类的编写 五、RegisterActivity注册页面 六、LoginActivity登录页面…

【Kafka】消息的顺序性、可靠性、幂等性

目录 消息顺序性消息可靠性生产者丢失消息消费者丢失消息Kafka丢失消息 消息幂等性 消息顺序性 消息追加到partition尾部,单个partition是有序的,但多个partition如何进行有序的获取一些消息? 解决方案 一个topic只设置一个partition&…

深入了解Socket套接字

目录 一、引入🙌 1、概念 🎉 2、分类🎉 Socket 套接字主要针对传输层协议分为流套接字、数据报套接字、原始套接字(了解即可)三类。 1)流套接字:使用传输层TCP协议 2)数据报套…

基于Matlab使用BP神经网络进行电力系统短期负荷预测

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景与意义 电力系统的短期负荷预测对于电力调度和能源管理具有至关重要的作用。通过准确地预测电力负荷&…

代码随想录算法训练营第三十七天|435. 无重叠区间、763.划分字母区间、56. 合并区间、738.单调递增的数字、968.监控二叉树

435. 无重叠区间 文档讲解:代码随想录 题目链接:. - 力扣(LeetCode) 本道题与上个题目相似,都是求重叠区间 统计重叠区间的个数,减去重叠区间的个数就是无重叠区间了 主要就是为了让区间尽可能的重叠。&a…

HTML5新特性、JS【初识JS 、JS核心语法】--学习JavaEE的day47

day47 HTML5新特性 定义文档类型 在文件的开头总是会有一个标签 语言文档类型声明方式html4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">html5<!DOCTYPE html> 新增语义化标签 理解&…

SpringBoot + MybatisPlus

SpringBoot MybatisPlus 整合记录 1. 硬件软件基本信息2. 相关链接3. 通过idea快速生成一个Springboot项目4. 启动报错问题解决问题一&#xff1a;Springboot启动的时候报错提示 “没有符合条件的Bean关于Mapper类型”问题二&#xff1a;启动的时候提示需要一个Bean&#xff0…

民国漫画杂志《时代漫画》第16期.PDF

时代漫画16.PDF: https://url03.ctfile.com/f/1779803-1248612470-6a05f0?p9586 (访问密码: 9586) 《时代漫画》的杂志在1934年诞生了&#xff0c;截止1937年6月战争来临被迫停刊共发行了39期。 ps:资源来源网络&#xff01;