標題:
單片機PWM控制電機原理及程序怎么搞啊
[打印本頁]
作者:
貝魯特林雷
時間:
2018-7-30 15:34
標題:
單片機PWM控制電機原理及程序怎么搞啊
找了好多單片機pwm的資料沒有一個能用于實際的,感覺挺簡單的就是寫不出來。
作者:
貝魯特林雷
時間:
2018-7-30 15:35
求大神幫幫忙
作者:
fuwakuaipao
時間:
2018-7-30 16:45
你先搞了單片機,然后按照你的資料進行寫,看看具體困難在哪里 ,在一起討探吧,共同學習,共勉之
作者:
diy1997
時間:
2018-7-31 11:00
PWM 控制電機轉速,就是通過控制一定頻率內的高電平的所占的時間來控制輸出電流,
以達到控制轉速的目的。
一般的單片機自帶PWM功能,但使用比較麻煩,初學者可能看到各種寄存器的操作會頭痛。
如果只是理解,可以使用定時器。
定時中斷里:
count ++;//計數(shù)值加
if (count ==resolution)//計數(shù)值達到分辨率的值時
{
count =0;
}
if ( count <setting)//計數(shù)值小于設置值時
{
GPIO =1; // 輸出高電平
}
else{//否則
GPIO =0;//輸出低電平
}
定時時間和resolution決定PWM頻率,setting決定高電平時間。
作者:
leenky
時間:
2018-7-31 11:45
附一個PIC單片機的程序,建議看PIC單片機datasheet進行理解,datasheet有PWM設置步驟解說.
/*該程序用于使CCP1 模塊產生分辨率為10 位的PWM 波形,占空比為50%*/
/*CCP1 模塊的PWM 工作方式初始化子程序*/
void CCP1INIT()
{
CCPR1L=0X7F;
CCP1CON=0X3C; /*設置CCP1 模塊為PWM 工作方式,且其工作
*循環(huán)的低2 位為11,高8 位為01111111=7F*/
INTCON=0X00; /*禁止總中斷和外圍中斷*/
PR2=0XFF; /*設置PWM 的工作周期*/
TRISC=0XFB; /*設置CCP1 引腳為輸出方式*/
}
/*主程序*/
main()
{
CCP1INIT(); /*CCP1模塊的PWM 工作方式初始化*/
T2CON=0X04; /*打開TMR2,且使其前分頻為0,
*同時開始輸出PWM 波形*/
do
{
單片機學習指南資料提供:上海齊濟電子有限公司
.8.
;
}while(1); /*系統(tǒng)開始輸出PWM 波形。如果系統(tǒng)是
*多任務的,則可以在此執(zhí)行其它任務,而
*不會影響PWM 波形的產生*/
}
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1