久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機驅動伺服電機我這個程序思路可行嗎?

[復制鏈接]
跳轉到指定樓層
#
6黑幣
用51單片機來驅動伺服電機,電機連接絲杠,帶動絲杠轉動。
驅動伺服電機,跟步進電機差不多,都是輸出脈沖。

我想用一個程序同時實現幾個功能。

功能:點動(點一下,動一下)、正反轉改變、加減速、停止
我是這樣想:
簡單的話,就多設幾個按鍵,通過按鍵,按哪個就實現哪個功能。

復雜的話,就設置3個模式,模式1,模式2,模式3。這樣就能少用些按鍵。
我想弄復雜點的。

模式1:準備模式,led燈閃爍。
模式2:自由模式,按鍵2——點動,按鍵3——只發送4000個脈沖,按鍵4——正反轉改變
模式3:往復循環模式(用限位開關改變方向),按鍵2——加速,按鍵3——減速,按鍵4——停止/啟動

通過按鍵1切換模式

想法是:
1、用外部中斷來做按鍵1設置,按一下按鍵1,就進行外部中斷,外部中斷程序里,標志mode++,回到程序,判斷標志mode是否改變,改變了就跳出程序,回到主函數,找到相應的模式,進入相應的程序。
2、模式3,用內部中斷,來不斷發出脈沖,通過按鍵2、3改變頻率,實現加減速。

程序:
#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char

//先省略內外部中斷程序
void main()
{
   while(1)
  {
     while(1)
        {
               if(key1 == 0)  //這個就是按鍵1,切換模式。用1根杜邦線把P32和P37相接,每按下按鍵1就會進入一次中斷。
                        {
                                delay(20);//按鍵消抖
                                if(key1 == 0)
                                {
                                        flag = 0;
                                        flag = 0;//產生低電平
                                        flag = 1;//結束低電平
                                        while(!key1);//松手檢測
                                }        
                        }

                if(1 == mode)
                        mode_1();  //檢測到mode等于1,就進入mode_1函數里面
                if(2 == mode)
                        mode_2();  //檢測到mode等于2,就進入mode_2函數里面
                if3 == mode)
                        mode_3();  //檢測到mode等于3,就進入mode_3函數里面
                                
        }

  }  
}

mode_1()  模式1
{
    led燈閃爍;
    判斷標志mode是否改;(若改變,return跳出mode_1函數,回到主函數,根據標志mode進入子函數)
}

mode_2() 模式2
{
    按鍵2,就實現點動;
    按鍵3,發送4000個脈沖;
    按鍵4,正反轉改變;
    判斷標志mode是否改;(若改變,return跳出mode_2函數,回到主函數,根據標志mode進入子函數)
}

mode_3() 模式3
{
    內部中斷函數;
    按鍵2,加速;
    按鍵3,減速;
    按鍵4,停止發送脈沖/啟動發送脈沖;
    判斷標志mode是否改;(若改變,return跳出mode_2函數,回到主函數,根據標志mode進入子函數)
}

想問問各位大佬,這樣寫,思路有沒有問題,能不能實現,是否有更好的思路來寫,求解啊!!!不知道行不行才是可怕

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

使用道具 舉報

地板
ID:748862 發表于 2020-5-11 10:06 | 只看該作者
思路應該沒問題,寫出來程序仿真一下
回復

使用道具 舉報

板凳
ID:748837 發表于 2020-5-11 09:40 | 只看該作者
應該沒問題的,關鍵是控制發脈沖的個數。現實中用到很多的
回復

使用道具 舉報

沙發
ID:730069 發表于 2020-5-10 18:00 | 只看該作者
沒有問題直接仿真運行
回復

使用道具 舉報

樓主
ID:584814 發表于 2020-4-15 15:18 | 只看該作者
是想聽夸獎么 ? 你真是天下第一的棒棒棒耶
自己不寫出來不試,你當別人都是你雇來的伙計
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲成人免费视频 | 成人国产精品久久 | 精品1区2区 | 免费国产成人av | 精品成人一区 | 欧美一区二区免费电影 | 狠狠视频| 日本电影一区二区 | 亚洲欧美激情精品一区二区 | 99re国产精品 | 日韩欧美福利视频 | 97免费视频在线观看 | 国产精品一区二区免费看 | 成人欧美一区二区三区在线播放 | 在线看一区二区三区 | av手机在线免费观看 | 色婷婷av一区二区三区软件 | 欧美狠狠操 | 亚洲欧美激情国产综合久久久 | 蜜桃精品视频在线 | 中文字幕免费视频 | 久草网址 | 国产精品一区二区三区四区 | 国产精品视频一区二区三区 | 精品国产乱码久久久久久闺蜜 | 免费成人高清 | 亚洲精品久久久9婷婷中文字幕 | 天天想天天干 | 亚洲国产精品一区二区三区 | 一区二区日韩精品 | 另类视频区| 女生羞羞网站 | 激情一区二区三区 | 欧美一区二区三区在线观看 | 国产美女在线观看 | 久久精品日产第一区二区三区 | 天天操网 | 亚洲综合视频 | 亚洲欧美中文日韩在线v日本 | 久久精品国产亚洲 | 理伦毛片 |