基于ARM的频率计设计课程设计论文

上传人:ni****g 文档编号:491037517 上传时间:2023-12-27 格式:DOC 页数:20 大小:252.05KB
返回 下载 相关 举报
基于ARM的频率计设计课程设计论文_第1页
第1页 / 共20页
基于ARM的频率计设计课程设计论文_第2页
第2页 / 共20页
基于ARM的频率计设计课程设计论文_第3页
第3页 / 共20页
基于ARM的频率计设计课程设计论文_第4页
第4页 / 共20页
基于ARM的频率计设计课程设计论文_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《基于ARM的频率计设计课程设计论文》由会员分享,可在线阅读,更多相关《基于ARM的频率计设计课程设计论文(20页珍藏版)》请在金锄头文库上搜索。

1、 电控学院课程设计(论文) 课程名称: ARM课程设计 题 目: 基于ARM的频率计系统设计 院 (系): 电xxxxxxxxxxxxxxx 专业班级: 测控技术与与仪器xxxx班 姓 名: xxxxxxxxxxxx 学 号: xxxxxxxxxxxxxxxxxxxxxxxxx 指导教师: xxxxxxxxxxxxxxxxxxxxxxx 2017 年 1 月 6 日摘 要随着移动设备的流行和发展,嵌入式系统已经成为一个热点。它并不是最近出现的新技术,只是随着微电子技术和计算机技术的发展,微控制芯片功能越来越大,而嵌入微控制芯片的设备和系统越来越多,从而使得这种技术越来越引人注目。它对软硬件的体

2、积大小、成本、功耗和可靠性都提出了严格的要求。嵌入式系统的功能越来越强大,实现也越来越复杂,随之出现的就是可靠性大大降低。最近的一种趋势是一个功能强大的嵌入式系统通常需要一种操作系统来给予支持,这种操作系统是已经成熟并且稳定的,可以是嵌入式的Linux,WINCE等等。本文所要研究的就是基于ARM嵌入式系统的频率计系统的设计与实现。本设计采用了32位ARM微处理器STM32F103作为核心处理器和ARM Linux作为嵌入式操作系统。实现了单位周期的频率计数,采用串口与基于Labview的上位机实现通信,将实时结果显示在上位机的界面。关键词:嵌入式系统,ARM ,STM32F103 ,嵌入式l

3、inux , Labview前 言在电子技术各参数中,频率测量的精确度是最高的,因而人们常利用某种确定的函数关系把其他电参数的精确测量转换为频率的测量。目前,测量频率方法主要有低频测周期、高频测频率、多周期同步测量法以及多周期完全同步测频法。采用低频端测周、高频端测频时,存在中界频率测量误差大即测量死区问题,因此频率的测量准确度很难提高到较高的数量级;采用多周期完全同步测频法,则闸门控制时间必须是被测信号与时标信号周期个数的最大公约数,因此进行一次完全同步测量需要很长的时间,不适于对实时性要求较高的场合,多周期同步测频法,其最大优点就是与被测信号频率大小无关,测量速度快,精度高。但多周期同步测

4、量法存在同步电路结构复杂,易造成误触发,可靠性不高,且此方法虽在原理上消除了1量化误差,但在实际应用中,经过同步电路之后,只消除了-1量化误差,仍不能保证完全消除+1量化误差,因此测量精度会间歇性的出现较大偏差等问题。集成数字频率计由于所用元件少、投资少,体积小,功耗低,且可靠性高,功能强,易于设计和研发,使得它具有技术上的实用性和应用的广泛性。不论从我们用的彩色电视机、电冰箱,DVD,还有我们现在家庭常用到的数字电压表数字万用表等等都包含有频率计。现在频率计已是向数字智能方向发展,即可以很精确的读数也精巧易于控制。数字频率计已是现在频率计发展的方向,它不仅可以很方便的读数,而且还可以使频率的

5、测量范围和测量准确度上都比模拟先进.而且频率计的使用已是很多的方面,数字卫星、数字通讯等高科技的领域都有应用。所以频率计的发展是一个整体的趋势。一、系统概述1、STM32F103简介ARM 公司是专门从事基于RISC 技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其设计的ARM 微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM 微处理器芯片进入市场。目前,全世界有几十家大的半导体公司都使用ARM 公司的授权,因此既使得ARM 技术获得更多的第三方工具、制造、软件的支

6、持,又使整个系统成本降低,使产品更容易进入市场被消费者所接受,更具有竞争力。STM32F103xx增强型系列由意法半导体集团设计,使用高性能的ARM Cortex-M3 32位的RISC内核,工作频率为72MHz,内置高速存储器(高达128K字节的闪存和20K字节的SRAM),丰富的增强I/O端口和联接到两条APB总线的外设。所有型号的器件都包含2个12位的ADC、4个通用16位定时器和2个高级定时器,还包含标准和先进的通信接口:多达2个I2C和SPI、3个USART、一个USB和一个CAN。2、总体方案设计本次频率计系统设计采用以STM32F103xx系列芯片为核心,由于F103系列芯片的内

7、部资源较多,本次设计充分利用芯片内部资源,设计出高精度的频率计系统。STM32F103待测信号发生模块定时器上位机显示结果图:系统整体框图系统的主体功能是充分利用定时器,用32内部的通用定时器3的复用功能-输入捕获。通过输入捕获对外部输入STM32芯片内部的脉冲上升沿计数,输入捕获功能可以实现每一次外部脉冲输入的上升沿引发一次中断,再通过通用定时器4定时一秒,通过定时一秒钟计算输入捕获中断次数来判断钟外部脉冲输入的频率,最后将这个数据传送给上位机通过虚拟仪器LABVIEW来显示出频率。设计中考虑到采用STM32F103开发板作为硬件基础,板子承受的最大电压为3.3V,而且程序调试中如果接入外部

8、脉冲输入,不能够立即查询出问题所在,所以通过芯片内部资源通用定时器5的复用功能输出PWM波来模拟外部脉冲输入,这样也可以更加简化硬件设计,所以本次系统充分利用32芯片内部定时器资源来设计系统。图:系统设计流程图二、整体功能设计1、STM32 通用定时器简介STM32 的通用定时器是一个通过可编程预分频器( PSC)驱动的 16 位自动装载计数器( CNT)构成。 STM32 的通用定时器可以被用于:测量输入信号的脉冲长度(输入捕获)或者产生输出波形(输出比较和 PWM)等。 使用定时器预分频器和 RCC 时钟控制器预分频器,脉冲长度和波形周期可以在几个微秒到几个毫秒间调整。 STM32 的每个

9、通用定时器都是完全独立的,没有互相共享的任何资源。STM3 的通用 TIMx (TIM2、 TIM3、 TIM4 和 TIM5)定时器功能包括: 1)16 位向上、向下、向上/向下自动装载计数器( TIMx_CNT)。 2)16 位可编程(可以实时修改)预分频器(TIMx_PSC),计数器时钟频率的分频系数为 165535 之间的任意数值。 3) 4 个独立通道( TIMx_CH14),这些通道可以用来作为: A输入捕获 B输出比较 C PWM 生成(边缘或中间对齐模式) D单脉冲模式输出 4)可使用外部信号( TIMx_ETR)控制定时器和定时器互连(可以用 1 个定时器控制另外一个定时器)

10、的同步电路。 5)如下事件发生时产生中断/DMA: A更新:计数器向上溢出/向下溢出,计数器初始化(通过软件或者内部/外部触发) B触发事件(计数器启动、停止、初始化或者由内部/外部触发计数) C输入捕获 D输出比较 E支持针对定位的增量(正交)编码器和霍尔传感器电路 F触发输入作为外部时钟或者按周期的电流管理 2、定时器功能简介本次设计系统中需要利用通用定时器产生一秒定时。STM32F103中的通用定时器可以由向上计数、向下计数、向上向下双向计数多种计数模式。向上计数模式中,计数器从0计数到自动加载值(TIMx_ARR计数器内容),然后重新从0开始计数并且产生一个计数器溢出事件。在向下模式中

11、,计数器从自动装入的值(TIMx_ARR)开始向下计数到0,然后从自动装入的值重新开始,并产生一个计数器向下溢出事件。而中央对齐模式(向上/向下计数)是计数器从0开始计数到自动装入的值-1,产生一个计数器溢出事件,然后向下计数到1并且产生一个计数器溢出事件;然后再从0开始重新计数。系统中采用向上计数模式,并打开定时中断功能,当定时一秒进入中断后后,读取输入捕获进入中断的次数并将数据通过串行口发送到上位机显示。图:系统整体硬件3、PWM简介 PWM 是 Pulse Width Modulation 的缩写,中文意思就是脉冲宽度调制,简称脉宽调制。它是利用微处理器的数字输出来对模拟电路进行控制的一

12、种非常有效的技术,其控制简单、灵活和动态响应好等优点而成为电力电子技术最广泛应用的控制方式,其应用领域包括测量,通信,功率控制与变换,电动机控制、伺服控制、调光、开关电源,甚至某些音频放大器,因此研究基于 PWM 技术的正负脉宽数控调制信号发生器具有十分重要的现实意义。PWM 是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM 信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直

13、流供电被加到负载上的时候,断的时候即是供电被断开的时候。只要带宽足够,任何模拟值都可以使用 PWM 进行编码。本次设计系统中利用通用定时器的复用功能输出比较输出PWM波,系统中通过调节PWM波的输出周期来改变模拟输出的脉冲频率。4、输入捕获简介输入捕获模式可以用来测量脉冲宽度或者测量频率。STM32 的定时器,除了 TIM6 和 TIM7,其他定时器都有输入捕获功能。 STM32 的输入捕获,简单的说就是通过检测 TIMx_CHx 上的边沿信号,在边沿信号发生跳变(比如上升沿/下降沿)的时候,将当前定时器的值( TIMx_CNT)存放到对应的通道的捕获/比较寄存器( TIMx_CCRx)里面,

14、完成一次捕获。同时还可以配置捕获时是否触发中断/DMA 等。接下来,我们介绍我们需要用到的一些寄存器配置,需要用到的寄存器有: TIMx_ARR、TIMx_PSC、 TIMx_CCMR1、 TIMx_CCER、 TIMx_DIER、 TIMx_CR1、 TIMx_CCR1 这些寄存器在前面全部都有提到(这里的 x=5),我们这里就不再全部罗列了,我们这里针对性的介绍这几个寄存器的配置。首先 TIMx_ARR 和 TIMx_PSC,这两个寄存器用来设自动重装载值和 TIMx 的时钟分频,再来看看捕获/比较模式寄存器 1: TIMx_CCMR1,这个寄存器在输入捕获的时候,非常有用,有必要重新介绍

15、,该寄存器的各位描述如图所示:当在输入捕获模式下使用的时候,对应图的第二行描述,从图中可以看出,TIMx_CCMR1 明显是针对 2 个通道的配置,低八位7: 0用于捕获/比较通道 1 的控制,而高八位15: 8则用于捕获/比较通道 2 的控制,因为 TIMx 还有 CCMR2 这个寄存器,所以可以知道CCMR2 是用来控制通道 3 和通道 4。本次频率计设计系统中采用TIM5_CH1 来捕获上升沿脉冲信号,也就是要先设置输入捕获为上升沿检测,记录发生上升沿的时候 TIM5_CNT 的值。当上升沿到来时,发生捕获,并记录得到一次脉冲信号值。这样,定时一秒钟捕获到上升沿的次数,就是每秒测量到的脉冲次数,即捕获的脉冲频率,这就是我们所需要的结果,然后通过串口连接到上位机,将数据发送到上位机labview显示结果。5、串口通信设计通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换。USART利用分数波特率发生器提供宽范围的波特率选择。它支持同步单向通信和半双工单线通信,也支持LIN(局部互连网),智能卡协议和IrDA(红外数据组织)SIR EN

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号