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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2690|回復: 4
打印 上一主題 下一主題
收起左側

C51單片機直流電機調速,不知道為啥不好使

[復制鏈接]
跳轉到指定樓層
樓主
ID:921432 發表于 2021-7-18 17:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar speed=0,compare,count=0;
sbit key1=P3^4;                                         //獨立按鍵
sbit moter=P1^0;                                 //電機
void delay(uint xms)                   //延時
{
uint i,j;
for(i=xms;i>0;i--)
        for(j=110;j>0;j--);
}
void init()                                                //函數初始化
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
}
void keyscan()                                                  //通過key1按鍵使speed進行增加,通過中斷里compare來改變PWM的占空比,不斷循環
{
if(key1==0)
{
        delay(50);
        if(key1==0)
        {
        speed++;
        speed%=4;
        if(speed==0)
        {
                compare=0;        
        }
        else if(speed==1)
        {
                compare=50;
        }
        else if(speed==2)
        {
                compare=75;
        }
        else if(speed==3)
        {
                compare=100;
        }
        }
}
}
void main()
{
init();
while(1)
{
keyscan();
}
}
void timer0() interrupt 1                         //設置count與比較值compare比較,小于compare,moter停止,反之。
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
count++;
count%=100;
if(count<compare)
{
moter=1;
}
else
{
moter=0;
}
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:161164 發表于 2021-7-18 18:35 | 只看該作者
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
5000太多了試試50
回復

使用道具 舉報

板凳
ID:94031 發表于 2021-7-18 20:34 | 只看該作者
量量電機兩端有多少電壓,壓按鍵電壓變不變,一步步找原因。
回復

使用道具 舉報

地板
ID:123289 發表于 2021-7-19 13:49 | 只看該作者
運動的物體是有加速度限制的,調節的速度命令變化不能超過這個限制,不知道你做到了沒有。
回復

使用道具 舉報

5#
ID:954170 發表于 2021-7-19 18:38 | 只看該作者
能不能驅動是看功率的,而不是只看電壓,還要看電流呢,單片機的IO頂多輸出20mA左右,遠遠驅動不了一般的電機,所以要加驅動電路。可以用三極管或者專用驅動IC。如何用單片機控制直流電機方案一:采用電阻網絡或數字電位器調整電動機的分壓,從而達到調速的目的。但是電阻網絡只能實現有級調速,而數字電阻的元器件價格比較昂貴。更主要的問題在于一般電動機的電阻很小,但電流很大;分壓不僅會降低效率,而且實現很困難。方案二:采用繼電器對電動機的開或關進行控制,通過開關的切換對小車的速度進行調整。這個方案的優點是電路較為簡單,缺點是繼電器的響應時間慢、機械結構易損壞、壽命較短、可靠性不高。方案三:采用由達林頓管組成的H型PWM電路。用單片機控制達林頓管使之工作在占空比可調的開關狀態,精確調整電動機轉速。這種電路由于工作在管子的飽和截止模式下,效率非常高;H型電路保證了可以簡單地實現轉速和方向的控制;電子開關的速度很快,穩定性也極佳,是一種廣泛采用的PWM調速技術。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表