會員登陸
帳號:

密碼:

記住我



忘記密碼?

現在註冊!
網站導航
最新下載
訪問統計 (自2012/5/3)


正在流覽:   1 名訪客



(1) 2 »


抓取PWM風扇轉速
初級會員
註冊日期:
1月05日 17:30:44
所屬群組:
註冊會員
文章: 29
等級: 4; EXP: 12
HP : 0 / 78
MP : 9 / 50
離線
不好意思小弟又想問一個問題了
請問PWM風扇轉速偵測 該用CCP1好 還是用別種方法
如果用CCP1程式該如何寫呢?
謝謝前輩

3月10日 19:23:14
轉換PDF檔 列印


Re: 抓取PWM風扇轉速
資深會員
註冊日期:
2010/06/30 16:18
來自 CAE, Microchip Technology Inc.
所屬群組:
站務管理者
註冊會員
文章: 1501
等級: 33; EXP: 4
HP : 160 / 801
MP : 500 / 15780
在線上
一般測轉速, 有兩種方式,
1.用Timer計算, 兩個上昇緣或兩個下降緣間隔的時間, 然後換算頻率.
2.用Counter計算固定時間計算到的Clock數量, 然後換算頻率.

CCP支援第一種方式, 如果要使用第二種方式, 可以使用一個Timer, 設定成外部輸入來計算Clock數量, 用另一個Timer計算時間.

3月13日 10:11:31
轉換PDF檔 列印


Re: 抓取PWM風扇轉速
初級會員
註冊日期:
1月05日 17:30:44
所屬群組:
註冊會員
文章: 29
等級: 4; EXP: 12
HP : 0 / 78
MP : 9 / 50
離線
請問有沒有這方面的sample code
小弟目前是用PIC16F877A開發板

3月13日 17:28:41
轉換PDF檔 列印


Re: 抓取PWM風扇轉速
初級會員
註冊日期:
1月05日 17:30:44
所屬群組:
註冊會員
文章: 29
等級: 4; EXP: 12
HP : 0 / 78
MP : 9 / 50
離線
網路上都找不到pwm量測的source code
小弟不知道該如何寫起
跪求先進指點 謝謝

以下的code不會動作
//***CCP2的CAPTURE功能初始化***
CCP2CON=0B00000101; //CCP2模組工作在PWM模式
CCPR2H=0x00;
CCPR2L=0x00; //裝載CCPR2L寄存器設置PWM占空比,為A/D
T1CON = 0b00110001;
INTCON = 0b11000000;
TMR1IF=0; //清零PIR1寄存器中的TMR1IF中斷標誌位元
T1CKPS0=0; //計時器TMR1設置1:1預分頻比,T2CKPS0=0
T1CKPS1=0; //計時器TMR1設置1:1預分頻比,T2CKPS1=0
TMR1ON=1; //T1CON寄存器中的TMR1ON位置1使能Timer2
CCP2IE=1;
RC1=1; //清零TRISC1位,使能CCP2引腳輸出驅動器
//**************************

void interrupt ISR()
{
// CCP2 Interrupt
if(CCP2IF == 1) // if the CCP2 Interrupt flag is set...
{
if (CCP2M0) // Rising edge?
{
CCP2M0 = 0;
}
else // Falling edge
{
CCP2M0 = 1;
}

CCP2IF = 0;
}
}

3月14日 10:06:58
轉換PDF檔 列印


Re: 抓取PWM風扇轉速
版主
註冊日期:
2004/04/30 10:53
來自 CAE, Microchip
所屬群組:
站務管理者
註冊會員
MICROCHIP
文章: 13877
等級: 72; EXP: 7
HP : 1066 / 1776
MP : 4625 / 67010
離線
先確定你的 PWM 風扇有轉速的輸出訊號嗎? 霍爾感測或光閘輸出。

單看 PWM 的輸出式無法得知時記的轉速的。

3月17日 11:50:16
轉換PDF檔 列印


Re: 抓取PWM風扇轉速
初級會員
註冊日期:
1月05日 17:30:44
所屬群組:
註冊會員
文章: 29
等級: 4; EXP: 12
HP : 0 / 78
MP : 9 / 50
離線
那如果要單抓取PWM訊號的程式該怎麼寫呢
謝謝Ryang大

3月17日 11:59:33
轉換PDF檔 列印


Re: 抓取PWM風扇轉速
版主
註冊日期:
2004/04/30 10:53
來自 CAE, Microchip
所屬群組:
站務管理者
註冊會員
MICROCHIP
文章: 13877
等級: 72; EXP: 7
HP : 1066 / 1776
MP : 4625 / 67010
離線
PWM 的 Duty 輸出並不能完全就代表馬達的轉速,PWM 的輸出只表示控制轉速的平均電壓,這還要看馬達的阻尼係數,馬達的新舊...等外在因素。

我想你要的是測量 Duty Cycle 吧? 此細看一下你的 Timer1 有沒有Gate Time 的功能? 如果有的話用 Gate Time 工能來測量 Duty Cycle 會是最好用的周邊。

3月17日 14:08:22
轉換PDF檔 列印


Re: 抓取PWM風扇轉速
初級會員
註冊日期:
1月05日 17:30:44
所屬群組:
註冊會員
文章: 29
等級: 4; EXP: 12
HP : 0 / 78
MP : 9 / 50
離線
對 是Timer1 Gate這一項嗎 輸入訊號pin腳是要用T1G?
應該是說偵測一個脈波訊號再套公式轉換成風扇轉速
那程式該怎麼寫才好呢
我用的是PIC16F1786這顆 謝謝Ryang版主

3月17日 19:28:11

ben.huang 於 2017年03月17日 19:56:27
轉換PDF檔 列印


Re: 抓取PWM風扇轉速
初級會員
註冊日期:
2014/05/28 13:30
所屬群組:
註冊會員
文章: 36
等級: 4; EXP: 76
HP : 0 / 94
MP : 12 / 779
離線
"請問PWM風扇轉速偵測"
請問你的風扇輸出規格是抓Duty??還是頻率??

先不討論上面的問題,
以一般風扇大部分的規格都是輸出頻率(或稱FG)會隨轉速變化而duty固定50%,
不論是使用CCP或是Gate Timer去量測其實意思都一樣,

以Gate Timer量測來說,
Timer抓到的值是Timer數了多少個clock,
再來就是以Timer的Clock Source去算出一個Clock多少時間,
再去反推==>
一個Clock的時間 * Timer數了多少Clock = 週期,
把週期倒數就是頻率,
得到頻率後再以風扇規格回推轉速,

這種訊號的量測可以用中斷寫或是以polling寫,
官網的example code記得滿多的(雖然不一定是這顆型號 但大同小異).

3月20日 12:20:57
轉換PDF檔 列印


Re: 抓取PWM風扇轉速
版主
註冊日期:
2004/04/30 10:53
來自 CAE, Microchip
所屬群組:
站務管理者
註冊會員
MICROCHIP
文章: 13877
等級: 72; EXP: 7
HP : 1066 / 1776
MP : 4625 / 67010
離線
請問一下你風扇使用的 PWM 的周期是多少? 較慢的 PWM 周期 (1KHz 以下)可以用 Gate Time 來測量。但對於較高的 PWM 頻率 (10KHz 以上) 就可以考慮用 Input Capture 來測量。

因為你使用的是 PIC16F1786,這元件的 CIP 沒有 SMT Module, 所以無法像有內建 SMT Module 的元件 (PIC16F1619) 可以直接使用SMT 週邊的 “Period and Duty Cycle Acquisition” 模組同時測量 duty cycle 及 Period

有關 SMT 模組測量 PWM 的 Peruod 及 Duty Cycle 的應用可以參考:教育訓練教材 --- CIP102v2.00 進階獨立式週邊(Adv. CIP)的應用 New!

3月20日 13:39:17
轉換PDF檔 列印



(1) 2 »



無法在此發表文章
可以在此觀看文章
無法回覆文章
無法編輯自己的文章
無法刪除自己的文章
無法發起投票調查
無法在此投票
無法上傳附加檔案
無法不經審核直接發表文章

[進階搜尋]


搜尋
線上教學影片
網頁捷徑
教育訓練
其它網站連結
電話: 02-25000405
產品技術問題產品技術支援專線:0800-717718 台北02-25088221 新竹03-5778366 Ext. 8600 高雄07-2137830 MicrochipDIRECT 專線: 07-2137830
Powered by XOOPS © 2001-2012 The XOOPS Project