我是靠谱客的博主 微笑自行车,最近开发中收集的这篇文章主要介绍【017】【毕业设计】基于51单片机的频率计设计的Proteus仿真与实物设计一、资料内容二、设计要求三、相关资料截图四、视频讲解部分代码:,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、资料内容

  • (1)、基于51单片机的频率计proteus仿真设计一份;
  • (2)、基于51单片机的频率计设计keli源代码一份;
  • (3)、基于51单片机的频率计设计Altium designer 原理图一份;
  • (4)、基于51单片机的频率计设计Altium designer PCB一份;
  • (5)、基于51单片机的频率计proteus仿真与实物设计视频讲解一份;

二、设计要求

  • (1)、本次设计要求以51系列单片机为核心,设计一款频率计装置;
  • (2)、系统要求可以通过数码管模块显示相关数据;
  • (3)、能够检测频率范围为0-999HZ(需要更高频率范围请留言);

三、相关资料截图

图一、系统proteus仿真界面截图 

图二、系统Keil源程序界面截图

图三、 系统Altium designer原理图工程文件

图四、 系统Altium designer  PCB工程文件

四、视频讲解

部分代码:

#include <reg52.h>
#define	Segment	P2
#define sl P0
sbit addr0=P1^0;        //定义数据端口地址,000时16分频,100不分频
sbit addr1=P1^1;
sbit addr2=P1^2;
sbit clear=P1^3;        //计数器清零
sbit ledM=P1^4;         //档位led显示
sbit ledK=P1^5;
sbit ledB=P1^6;

unsigned char cnt;      //定时1s计数
unsigned char d[4];     //对应数码管的各位
unsigned char level;    //档位
unsigned int tN;        //不同档位计时值
unsigned int fCnt;      //脉冲下降沿次数
unsigned int regCnt;    //脉冲次数暂存
unsigned int pCnt;      //频率显示
unsigned char code Num[]={
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e
};



void Delay(unsigned	int	DelayTime)
{
	while(DelayTime--);
}

void disp()
{
	if(level==0)                 //B位档
	{
		d[3]=0;
		d[2]=pCnt/100;
		d[1]=(pCnt%100)/10;
		d[0]=pCnt%10;

		sl=0xf8;Delay(1);Segment=Num[d[0]];Delay(300);//个
		sl=0xf4;Delay(1);Segment=Num[d[1]];Delay(300);//
		sl=0xf2;Delay(1);Segment=Num[d[2]];Delay(300);
		sl=0xf1;Delay(1);Segment=Num[d[3]];Delay(300);
	}

最后

以上就是微笑自行车为你收集整理的【017】【毕业设计】基于51单片机的频率计设计的Proteus仿真与实物设计一、资料内容二、设计要求三、相关资料截图四、视频讲解部分代码:的全部内容,希望文章能够帮你解决【017】【毕业设计】基于51单片机的频率计设计的Proteus仿真与实物设计一、资料内容二、设计要求三、相关资料截图四、视频讲解部分代码:所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部