资源简介
51单片机测量方波频率proteus仿真

代码片段和文件信息
#include
#define uchar unsigned char
#define uint unsigned int
uchar code table[11] = {0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f};
long uint pulse=0;//计数输入的方波的个数;
long uint freq=0;//频率
uchar temp=0; //临时变量
void delay_1ms(uint i) //延时函数,约1ms
{
uint xj;
for(j=0;j for(x=0;x<=148;x++);
}
void Time0_Init()//定时器和计数器的初始化函数
{
EA=1; //打开全局中断
TMOD = 0x15;//设定定时器1和计数器0的工作方式为方式1
TH0 = 0xff;//计数器0的初值
TL0 = 0xff;//计数器0的初值
ET0=1; //允许计数器0中断
TR0=1; //打开计数器0,开始计数
TH1 = 0x3c;//定时器1的初值
TL1 = 0xb0;//定时器1的初值
ET1=1; //允许定时器1中断
TR1 = 1;//打开定时器1,开始计数
}
void main()
{
Time0_Init(); //初始化定时器和计数器
while(1)
{
P2=0xfe; //以下为数码管显示函数
P0=0;
P0=table[freq/100000];
delay_1ms(1);
P0=0;
P2=0xfd;
P0=table[freq/10000%10];
delay_1ms(1);
P0=0;
P2=0xfb;
P0=table[freq/1000%10];
delay_1ms(1);
P0=0;
P2=0xf7;
P0=table[freq/100%10];
delay_1ms(1);
P0=0;
P2=0xef;
P0=table[freq/10%10];
delay_1ms(1);
P0=0;
P2=0xdf;
P0=table[freq%10];
delay_1ms(1);
}
}
void ISQ_timer0(void) interrupt 1 //用来计数脉冲数,每一个方波脉冲,计数器进入中断,脉冲数加一
{
TR0 = 0;
pulse++;
TH0 = 0xff;
TL0 = 0xff;
TR0 = 1;
}
/****************************************************************
用来设定时间,定时器的周期为50ms,当经过20次后,
也即1s后,关断定时器和计数器,将一秒内计数的脉冲数赋给频率pulse
一秒内采集的脉冲数即为输入方波的频率
****************************************************************/
void ISQ_time1() interrupt 3
{
TH1 = 0x3c;
TL1 = 0xb0;
temp++;
if(temp==20)
{
TR0 = 0;
TR1 = 0;
temp=0;
freq=pulse;
pulse=0;//将脉冲数清零,重新计数
TR0 = 1;//打开计数器0,进入下一个循环
TR1 = 1;//打开定时器1,进入下一个循环
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-05-07 23:18 51单片机测量方波频率资料\
文件 114016 2014-05-07 23:18 51单片机测量方波频率资料\Last Loaded proteus仿真电路图.DBK
文件 114016 2014-05-08 07:10 51单片机测量方波频率资料\proteus仿真电路图.DSN
文件 792 2014-05-08 07:10 51单片机测量方波频率资料\proteus仿真电路图.PWI
目录 0 2014-05-07 18:37 51单片机测量方波频率资料\程序\
文件 5055 2014-05-08 07:09 51单片机测量方波频率资料\程序\cx
文件 4864 2014-05-08 07:09 51单片机测量方波频率资料\程序\cx.LST
文件 7459 2014-05-08 07:09 51单片机测量方波频率资料\程序\cx.M51
文件 5567 2014-05-08 07:09 51单片机测量方波频率资料\程序\cx.OBJ
文件 974 2014-05-08 07:09 51单片机测量方波频率资料\程序\cx.Opt
文件 2129 2014-05-07 21:50 51单片机测量方波频率资料\程序\cx.Uv2
文件 1961 2014-05-08 07:09 51单片机测量方波频率资料\程序\cx.c
文件 2041 2014-05-08 07:09 51单片机测量方波频率资料\程序\cx.hex
文件 36 2014-05-08 07:09 51单片机测量方波频率资料\程序\cx.lnp
文件 1137 2014-05-08 07:09 51单片机测量方波频率资料\程序\cx.plg
文件 973 2014-05-07 23:17 51单片机测量方波频率资料\程序\cx_Opt.Bak
文件 0 2014-05-07 18:37 51单片机测量方波频率资料\程序\cx_Uv2.Bak
相关资源
- 51单片机PWM程序,占空比、周期可调整
- proteus仿真 AT89C51输出各种波形
- 00
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- proteus_24C08—有注释(proteus里面使用的
- DS18B20分布式多点测温的Proteus仿真
- 基于proteus的单片机仿真--交通灯控制
- 带时间温度显示的室内灯光控制系统
- 51多机通信(内附Proteus及.hex文件)
- IIC proteus仿真实验
- 8086交通灯 Proteus原理图及程序
- 单片机仿真软件proteus6.7免安装绿色版
- 关于proteus仿真arm7出现错误的问题
- 基于PROTEUS的ARM7显示系统设计与仿真实
- STM32+1602液晶proteus仿真.zip
- AT89C51+ADC0808 PROTEUS仿真
- 单片机驱动4相步进电机proteus仿真
- proteus元件库对照表 (整理清晰)
- 微机原理 十字路口交通灯控制 prot
- 中央空调室内智能温控器设计论文、
- 基于51单片机的交通灯设计
- 基于AT89C51的十字路口交通灯设计pro
- Proteus单片机仿真大全几百个part4
- Proteus升压电路仿真
- keil调试仿真技巧-从入门到精通
- 十字路口交通灯.pdsprj
- 12864液晶Proteus模型
- 数电设计 交通灯控制逻辑电路设计
- Proteus仿真的单片机控制步进电机及液
评论
共有 条评论