欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
基于51單片機的數字頻率計源碼 最大能測60KHz
[打印本頁]
作者:
Obligation
時間:
2018-3-23 17:59
標題:
基于51單片機的數字頻率計源碼 最大能測60KHz
基于51單片機的數字頻率計
本程序是一個數字頻率計,最大能測60KHz
單片機源程序如下:
#include<reg52.h>
#include<intrins.h>
#include"lcd.h"
#include<stdio.h>
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
unsigned char code ASCII[15] = {'0','1','2','3','4','5','6','7','8','9','H','Z',};
uint time_count,count,sum;
uint dis[6];
void initial(void);
void display(); //LCD顯示程序
void main()
{
InitLcd1602(); //LCD1602初始化
initial(); //定時器初始化
while(1)
{
display();
}
}
void initial() //定時器初始化
{
count=0;
time_count=0;
sum=0;
TMOD=0x02; //定時器0工作方式2
TH0=0x06; //定時器初值250US
TL0=0x06;
IT0=1; //外部中斷0,下降沿有效
EA=1;
ET0=1;
EX0=1;
TR0=1;//開中斷
}
void int0() interrupt 0 //外部中斷0,每個下降沿計數一次就是一個信號周期
{
count++;
}
void timer0() interrupt 1
{
time_count++;
if(time_count==3690) //計數一秒,因為11.0592MHZ晶振,所以值不為4000,而是3690
{
sum=count; //一秒的下降沿的次數和即為頻率
time_count=0; // 250us的次數清零
count=0; //下降沿次數清零
//display();
}
}
void display()
{
dis[0]=sum/10000;//萬位
dis[5]=sum%10000;
dis[1]=dis[5]/1000; //千位
dis[5]=dis[5]%1000;
dis[2]=dis[5]/100; // 百位
dis[5]=dis[5]%100;
dis[3]=dis[5]/10; // 十位
dis[4]=dis[5]%10; // 個位
DisplayOneChar(0, 1, ASCII[dis[0]]); //顯示萬位
DisplayOneChar(1, 1, ASCII[dis[1]]); //千位
DisplayOneChar(2, 1, ASCII[dis[2]]); //百位
DisplayOneChar(3, 1, ASCII[dis[3]]); //十位
DisplayOneChar(4, 1, ASCII[dis[4]]); //個位
DisplayOneChar(8, 1, ASCII[10]); //顯示H
DisplayOneChar(9, 1, ASCII[11]); //顯示 Z
}
復制代碼
所有資料51hei提供下載:
頻率.rar
(33.09 KB, 下載次數: 36)
2018-3-23 17:56 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
admin
時間:
2018-5-2 01:01
能分享個原理圖嗎?
作者:
1508104726
時間:
2018-5-21 10:00
能分享個原理圖嗎
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1