欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 關于STC12C5A60S2單片機的PWM程序咨詢 [打印本頁]

作者: mokedeng    時間: 2013-8-24 21:56
標題: 關于STC12C5A60S2單片機的PWM程序咨詢
#include"STC12C5A.h"

void delay(unsigned int cnt)   //延時函數
{
unsigned char i;
for(;cnt>0;cnt--)
for(i=0;i<250;i++);
}

void main()
{
CCON=0;           //PCA初始化
CL=0;          //PCA的16位計數器低八位
CH=0;          //PCA的16位計數器高八位
CMOD=0x0a;        //選擇 系統時鐘/4 為計數脈沖,則PWM的頻率f=sysclk/256/4;

CCAP0H=0x80;  //  占空比控制
CCAP0L=0x80;  
PCA_PWM0=0x00; //控制占空比的第九位為0

CCAPM0=0x42;  //允許P13作為PWM輸出

CR=1;         //啟動PCA計數器
while(1)
{
if(P10==0)
{
delay(200);
while(P10==0);
CCAP0H+=10;         //占空比調節
CCAP0L+=10;
}
}
}


這個是我在網上查看到的一個產生PWM波的程序。我正想做一個PWM控制電機轉數的一個程序。有幾個問題想要咨詢一下大家。
1、假如我的晶振是20M是,那是不是產生的PWM的頻率是19.5k hz.  這里我把系統時鐘理解成了20m不知錯了     沒有。
2、 那個占空比的控制  CCAP0H=0x80; CCAP0L=0x80;   這個是代表占空比是50%  是不是高地位的數值必須是一樣的。     但是這一句:  PCA_PWM0=0x00; //控制占空比的第九位為0   我沒有理解不知道是什么意思。
3、這個單片機是8位的,他就是把分為了256份,  是不是電機轉數在10000轉的時候每條一次占空比電機的轉數浮動是10000/256轉。  要是的話在程序的哪里可以看出來。
暫時就這三個問題,謝謝了。


作者: mokedeng    時間: 2013-8-25 10:44
都沒有人能告知一下么{:soso_e101:}
作者: 隕落的Einstein    時間: 2013-8-26 00:01
STC的手冊有比較詳細的使用說明(www.STCMCU.com可下載:http://www.stcmcu.com/datasheet/stc/STC-AD-PDF/STC12C5A60S2.pdf),你問的幾個問題手冊基本都有解答(詳見手冊第十章):
1.pwm頻率 = PCA時鐘源頻率/256
2.CCAPnL是不需要賦值的,看過手冊上PWM功能框圖就知道了(n=0,1);因為CCAPnL的值是由CCAPnH的值自動裝入
3.通常不會用pwm輸出引腳直接驅動直流電機,所以PWM占空比與電機轉速沒有直接關系;要想了解二者之間的關系還要分析電機驅動電路,這也只能做定性判斷,定量研究必須要有測速裝置
作者: 亙黑鹿    時間: 2016-5-18 23:21
初學小白 看不懂 這是第幾層次水平了??
作者: saya0769    時間: 2019-4-2 12:16
亙黑鹿 發表于 2016-5-18 23:21
初學小白 看不懂 這是第幾層次水平了??

煉氣期第十層啊。沒看見樓上說詳見第十章嗎?呵呵開過玩笑。最好還是要把芯片手冊看熟的。




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1