《电子与控制系统设计》实验报告
实验项目名称: 低频脉冲信号频率的测量
指导老师: 元泽怀
完成时间: 2015年10月20日
姓名: 刘文开
班级: 12电气一班
学号: 201224122116
成绩:
电子信息与机电工程学院编制
实验
项目
低频脉冲信号频率的测量
实验项目类型
验证
演示
综合
设计
其他
*
一、实验目的
⑴掌握信号频率测量的方法;
⑵进一步熟悉定时/计数器的事件捕获原理;
⑶掌握单片机实现频率测量的编程方法。
二、实验原理
采用输入捕获功能进行周期测量(测周法)的基本原理比较简单,实际上就是讲被测信号作为ICP1 的输入,被测信号的上升(下降)沿作为输入捕捉的触发信号。T/C1 工作在常规计数器方式,对设定的已知系统时钟脉冲进行计数。由于PD6(ICP)输入捕获引脚输入信号的每次上升沿(本实验中设定上升沿触发输入捕获事件)都将触发捕获,在捕获发生时,T1 的计数值被复制到输入捕获寄存器ICR1 中;在连续2 次ICP引脚上升沿触发捕获中断时,中断服务程序通过计算2 次所读取的ICR1 的差值,即可得出相邻2 T1的计数差值。2 次ICR1 的差值乘上已知的计数器计数脉冲的周期就是输入信号一个周期的时间,倒数即为脉冲信号的频率。本实验单片机的外部晶振为1Mz,T1 每次脉冲计数所需时间为1us(如为8MHz,则为1/8us),如果ICR1 的差值为8,则该输入信号的周期为8us,倒数处理后即可得到信号频率。
三、使用仪器设备及材料
1、安装windows xp操作系统的微型计算机1台
2、
3、
4、AVR单片机下载软件progisp
5、AVR单片机实验板1套(含下载器)
四、实验过程原始记录
1、硬件仿真电路(f=)
图4-1 实验仿真电路图
2、程序流程图
图4-2 程序流程图
3、软件主要程序及注解
//-----------------------------------------------------------------
#include <>
#include <>
#define uchar unsigned char
#define uint unsigned int
#define F_CPU 4000000UL
void delay(unsigned int k)
{
unsigned int i,j;
for(i=0;i<k;i++)
{
for(j=0;j<1140;j++);
}
}
//---------------------延时函数--------------------------------------
const uchar SEG_CODE[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x00}; //段选
uchar Display_Buffer[] = {0,0,0,0};
uint CAPi=0,CAPj=0;
void port_init(void)
{
低频脉冲信号频率的测量实验报告 来自淘豆网m.daumloan.com转载请标明出处.