導航:首頁 > 裝置知識 > 設計一個以單片機為核心的頻率測量裝置

設計一個以單片機為核心的頻率測量裝置

發布時間:2021-02-08 01:31:41

A. 51單片機的數字頻率計

該系統由定時器0中斷子函數、定時器1中斷子函數、延時子函數、按鍵消抖子函數、閘門控制子函數、主函數和數據定義這幾部分組成。

      閘門時間由定時器1控制,初始為2s,可以通過按鍵加減,范圍為2s到7秒。閘門時間就是采樣時間,閘門時間越長,測量精度越准確。

      由P3.4輸入信號,低電平有效,觸發T0外部中斷。當T0觸發中斷的時候執行的程序。這里只進行了一個操作,t0++。所以,t0的值表示觸發了幾次中斷,也就表示接受到的脈沖幾次從0到65536。所以會有t0*65536。 另外,由於計時的機制是THO++、TL0++,所以,THOTL0就表示當前的計數值。THOTLO- 初值就可以確定沒有觸發中斷定時多少。TH0*256==TH0*2^8,實質就是左移8位,就是拼接TH0跟TL0的處理。

所以頻率的核心演算法為

 

daimao=(t0*65536+TH0*256+TL0)/n

程序框圖



總源程序

#include "reg52.h"

#define uchar unsigned char

typedef unsigned int uint;

sbit w1=P2^0;

sbit w2=P2^1;

sbit w3=P2^2;

sbit w4=P2^3;

sbit w5=P2^4;

sbit w6=P2^5;

sbit jia=P1^6;

sbit jian=P1^7;

sbit s=P3^7;//啟動

bit flag;//標簽

uchar s1,s2,s3,s4,s5,s6, shu=1;//控制數組取值

uchar t0,t1,t2,a;

unsigned long m=5,n;//m為閘門時間

int y;

unsigned long daimao;//頻率

unsigned char code table1[]={0xc0,0xf9,0xa4,0xb0, //閘門時間數組0-f

0x99,0x92,0x82,0xf8,

0x80,0x90,0x88,0x83,

0xc6,0xa1,0x86,0x8e};

unsigned char code table2[]={0xc0,0xf9,0xa4,0xb0, //頻率數組0-f

0x99,0x92,0x82,0xf8,

0x80,0x90,0x88,0x83,

B. 誰有微機原理及應用課程設計 要求設計一套以MCS-51單片機為核心的測量與控制系統, 功能是頻率測量儀 謝謝

我做的紅外邏輯分析器。

測量頻率最好用快點的cpu。我用的是arm7.如果會用現場陣列就更好了。

C. 利用單片機的定時/計數功能設計一個頻率測量裝置,並以此頻率輸出方波

可以看看這個,51單片機簡易頻率計

D. 用等精度頻率計原理,設計一個以單片機為核心的等精度數字頻率計。

頻率計就是個計數器,用單片機的外部中斷和定時器就可以搞定

E. 設計一個以單片機為核心的頻率測量裝置。使用AT89C51單片機的定時器/計數器的定時和計數功能

將單片機的兩個定時器設置成:一個定時器模式,一個計數器模式,在定時時間之內檢查計數器的脈沖個數就可以計算出頻率大小了。

F. 基於MCS-51系列單片機AT89C51,設計一個以單片機為核心的頻率測量裝置。

直接列出需求,等現成的,這不是學習之法啊
我只能告訴你,用兩個定時/計數器,一個做定時器,一個做計數器,一定時間內測到的上升沿或者下降沿的個數,就可以算出頻率了

G. 設計數字頻率計

一、基本原理
使用555產生矩形波信號,輸入到單片機進行測量頻率。
測頻的方案有多種:
1、測周法:通過測量被測信號的周期的倒數得到頻率,選用適當的時基,以被測信號作為計數的閘門進行測量,得到閘門內的計數值,與時基相乘即為被測信號的周期,周期的倒數即為頻率。該法適合測量頻率低的信號。
2、測頻法:通過頻率的定義即單位時間的脈沖數,得到被測信號的頻率。選用適當的時基,如1秒,以此作為計數閘門,得到閘門內的計數值即為信號的頻率。該法適合測量頻率高的信號。
二、參考電路框圖
模擬電路,程序在這里 http://hi..com/huang0776/item/a2983cb9d12f35442aebe3dc三、參考程序流程圖

H. 怎麼設計一個數字頻率計 要求:設計一個以單片機為核心的頻率測量裝置。使用AT89C51單片機的定

被測頻率較高時,可以採用樓主所說的《定時計數法》。

如果頻率較低,幾秒鍾,都不來一個脈沖,這方法就不行了。

就應該採用《測量周期法》來測頻。

I. 設計一個以單片機為核心的頻率測量裝置。被測頻率fx<110Hz,採用測周法 利用鍵盤分段測量和自動分段測量

555定時器就可以, 網上有很多類似的資料。

J. 設計一個以單片機為核心的頻率測量裝置。求大神給寫一下程序。

單片機頻率計模擬。

#include<reg52.h>

#define uchar unsigned char

#define uint unsigned int

sbit p0=P1^0;

bit tb0,tb1;

uchar tt0,tt1,tt2,tt3;

uchar code led[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void main()

{

TMOD=0x11;

TH0=(65535-50000)/256;

TL0=(65535-50000)%256;

EA=1;

ET0=1; //開定時器0中斷

ET1=1; //開定時器1中斷

TR0=1; //啟動定時器0

TR1=1; //啟動定時器1

while(1)

{

if(TR1==0)

{

// tt3=65536*tt2+266*TH1+TL1

TH1=0x00;TL1=0x00;

tt1=0x00;tt2=0x00;

tb1=1;

led[0]=tt3/1000000;

led[1]=tt3/100000%10;

led[2]=tt3/100000%10;

led[3]=tt3/10000%10;

led[4]=tt3/1000%10;

led[5]=tt3/100%10;

led[6]=tt3/10%10;

led[7]=tt3%10;

}

if(tt0==1 && tb0=1)

{

tb0=1;P0==0xff;

P2=led[0];P0=0xfe

}

if(tt0==2 && tb0=1)

{

tb0=1;P0==0xff;

P2=led[1];P0=0xfd

}

if(tt0==3 && tb0=1)

{

tb0=1;P0==0xff;

P2=led[2];P0=0xfb

}

if(tt0==4 && tb0=1)

{

tb0=1;P0==0xff;

P2=led[3];P0=0xf7

}

if(tt0==5 && tb0=1)

{

tb0=1;P0==0xff;

P2=led[4];P0=0xef

}

if(tt0==6 && tb0=1)

{

tb0=1;P0==0xff;

P2=led[5];P0=0xdf

}

if(tt0==7 && tb0=1)

{

tb0=1;P0==0xff;

P2=led[6];P0=0xbf

}

if(tt0==8 && tb0=1)

{

tb0=1;P0==0xff;

P2=led[7];P0=0x7f

tt0=0;

}

}

}

void timer0() interrupt 1

{

TH0=(65535-2000)/256;

TL0=(65535-2000)%256;

tt1++;

if(tt1==500)

{

TR1=0; //啟動定時器1

tb1=0

}

tt0++;tb0=1;

if(tb1==1 && TR1==0)TR1=1;

}

void timer1() interrupt 3

{

tt2++;

}

閱讀全文

與設計一個以單片機為核心的頻率測量裝置相關的資料

熱點內容
筆記本裝機械硬碟有什麼好處 瀏覽:37
儀表盤50f是什麼意思 瀏覽:659
工業管道里一個閥門配幾幅法蘭 瀏覽:150
微pe工具箱支持iso 瀏覽:311
儀表防護等級一般多少 瀏覽:389
麻辣燙哪些設備多少錢 瀏覽:890
samp工具箱安裝apk不了 瀏覽:607
湛江烘焙設備哪裡有賣 瀏覽:672
香港紅蘋果五金件如何 瀏覽:510
驗證氯氣是否有漂白性的實驗裝置 瀏覽:370
機械應急啟動裝置生產要求 瀏覽:780
氨氣實驗製法的收集裝置 瀏覽:767
社區科普活動器材有哪些 瀏覽:99
15匹空調不製冷是什麼原因 瀏覽:419
水的沸騰現象實驗裝置 瀏覽:936
電腦設備怎麼解封 瀏覽:576
機械需要什麼版本cad 瀏覽:703
纖支鏡設備多少錢一套 瀏覽:970
是雙縫干涉實驗裝置 瀏覽:629