用51微控制器測正弦波頻率(50HZ工頻左右),要詳細過程,急

時間 2021-08-11 18:12:34

1樓:做而論道

電路,需要一個過零比較器。

在50hz工頻左右,輸出脈衝的週期為10ms左右。

測量出這個週期,換算,顯示即可。

測量週期:

2樓:

哥哥。。。這個還需要什麼原理圖啊?

前級加個訊號放大整形,用比較器加運放構成。

輸出訊號直接接微控制器的定時/計數器0或定時/計數器1兩個定時/計數器,一個用於定時1s。另外一個用於計數。

採用中斷方式。

矮油~~~還是附上我的程式吧。。。

//****12mhz晶振***////

#include"reg52.h"

#define uchar unsigned char#define uint unsigned intuchar code w_data=;

uchar code d_data=;

uchar data led[4];

uint data fre;

uchar cnt;

void delay(void)

void led_show(void)

} /********************50ms*********************************************/

//定時器初始化過程

//1、對tmod賦值,以確定t0,t1的工作方式,//計算初值,並將初值寫入th0/tl0或th1/tl1//中斷方式時,對ie賦值,開放中斷

//是tr0,tr1置位,啟動定時器/計數器定時或計數void timer_init (void)void t0_isp(void) interrupt 1th0=(65536-50000)/256; //注;為什麼要在這裡附上th0,tl0的初值。(減小誤差)

tl0=(65536-50000)%256;

} void main()}}

怎麼用51微控制器產生正弦波?最好可以附帶上濾波的電路,求大神

大鵬和小鳥 據我所知8098具有pwm輸出,可以編制正弦波輸出。沒有看到51微控制器輸出正弦波的例證。 建立正弦資料表,設定定時器,當定時器溢位後查表得到輸出值,da轉換,不過這種正弦波始終是正值哦。我用微控制器做函式訊號發生器,現在不知道怎麼用51微控制器產生正弦波,求高手指點! 51是不可能產生...

51微控制器控制DAC0832產生正弦波,如何用定時器改變頻率

可以用一個定時器中斷,在中斷服務程式裡面,直接把對應的正弦取樣資料置入p1口,通過修改定時器的中斷間隔,達到調整輸出頻率的目的 假設你的取樣資料的原始取樣率為1khz,被取樣正弦波頻率為100hz,當timer中斷間隔為1ms時,dac那裡輸出處理後輸出即為100hz,如果中斷間隔為500us,輸出...

DAC0832 微控制器輸出正弦波頻率最大值問題

c51微控制器和dac0832能輸出正弦波,微控制器要不斷的給dac0832數值,dac轉換層模擬量輸出正弦波 51微控制器是對所有相容intel 8031指令系統的微控制器的統稱。該系列微控制器的始祖是intel的8004微控制器,後來隨著flash rom技術的發展,8004微控制器取得了長足的...