找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2286|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)PWM控制電機(jī)原理及程序怎么搞啊

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:380901 發(fā)表于 2018-7-30 15:34 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
找了好多單片機(jī)pwm的資料沒(méi)有一個(gè)能用于實(shí)際的,感覺(jué)挺簡(jiǎn)單的就是寫(xiě)不出來(lái)。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:380901 發(fā)表于 2018-7-30 15:35 | 只看該作者
求大神幫幫忙
回復(fù)

使用道具 舉報(bào)

板凳
ID:379847 發(fā)表于 2018-7-30 16:45 | 只看該作者
你先搞了單片機(jī),然后按照你的資料進(jìn)行寫(xiě),看看具體困難在哪里 ,在一起討探吧,共同學(xué)習(xí),共勉之
回復(fù)

使用道具 舉報(bào)

地板
ID:310519 發(fā)表于 2018-7-31 11:00 | 只看該作者
PWM 控制電機(jī)轉(zhuǎn)速,就是通過(guò)控制一定頻率內(nèi)的高電平的所占的時(shí)間來(lái)控制輸出電流,

以達(dá)到控制轉(zhuǎn)速的目的。

一般的單片機(jī)自帶PWM功能,但使用比較麻煩,初學(xué)者可能看到各種寄存器的操作會(huì)頭痛。

如果只是理解,可以使用定時(shí)器。

定時(shí)中斷里:

count ++;//計(jì)數(shù)值加

if (count ==resolution)//計(jì)數(shù)值達(dá)到分辨率的值時(shí)
{
    count =0;
}

if ( count <setting)//計(jì)數(shù)值小于設(shè)置值時(shí)
{
    GPIO =1; // 輸出高電平
}
else{//否則
   GPIO =0;//輸出低電平
}

定時(shí)時(shí)間和resolution決定PWM頻率,setting決定高電平時(shí)間。
回復(fù)

使用道具 舉報(bào)

5#
ID:381211 發(fā)表于 2018-7-31 11:45 | 只看該作者
附一個(gè)PIC單片機(jī)的程序,建議看PIC單片機(jī)datasheet進(jìn)行理解,datasheet有PWM設(shè)置步驟解說(shuō).

/*該程序用于使CCP1 模塊產(chǎn)生分辨率為10 位的PWM 波形,占空比為50%*/
/*CCP1 模塊的PWM 工作方式初始化子程序*/
void CCP1INIT()
{
CCPR1L=0X7F;
CCP1CON=0X3C; /*設(shè)置CCP1 模塊為PWM 工作方式,且其工作
*循環(huán)的低2 位為11,高8 位為01111111=7F*/
INTCON=0X00; /*禁止總中斷和外圍中斷*/
PR2=0XFF; /*設(shè)置PWM 的工作周期*/
TRISC=0XFB; /*設(shè)置CCP1 引腳為輸出方式*/
}
/*主程序*/
main()
{
CCP1INIT(); /*CCP1模塊的PWM 工作方式初始化*/
T2CON=0X04; /*打開(kāi)TMR2,且使其前分頻為0,
*同時(shí)開(kāi)始輸出PWM 波形*/
do
{
單片機(jī)學(xué)習(xí)指南資料提供:上海齊濟(jì)電子有限公司
.8.
;
}while(1); /*系統(tǒng)開(kāi)始輸出PWM 波形。如果系統(tǒng)是
*多任務(wù)的,則可以在此執(zhí)行其它任務(wù),而
*不會(huì)影響PWM 波形的產(chǎn)生*/
}
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表