亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

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

QQ登錄

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

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

51單片機(jī)采集風(fēng)向信息并通過(guò)風(fēng)向信息控制步進(jìn)電機(jī)問(wèn)題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
本帖最后由 zolch 于 2017-8-24 15:43 編輯

通過(guò)51單片機(jī)接風(fēng)向傳感器采集風(fēng)向信息,再將所采集的風(fēng)向信息顯示在1602上,并利用單片機(jī)將采集到的風(fēng)向信息控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng),比如風(fēng)向角度值(1-360度),風(fēng)向增加1度,51控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng)1度。現(xiàn)所寫(xiě)的風(fēng)向驅(qū)動(dòng)步進(jìn)電機(jī)程序如下,編譯沒(méi)有問(wèn)題,接到實(shí)物上電機(jī)不轉(zhuǎn),能感受到里面震動(dòng)。現(xiàn)在不知道問(wèn)題出在哪里,希望有大神來(lái)幫忙看下!
void main()
{
        uchar adval;
        uint WD;
        uint bai,shi,ge,F1,F2,F3,F4;
        init();
        wela=1;
        P0=0x7f;
        wela=0;
        while(1)
        {
                adwr=1;
                _nop_();
                adwr=0;           //啟動(dòng)ad轉(zhuǎn)換
                _nop_();
                adwr=1;
                delayms(1000);
                P1=0xff;   //讀取P1口之前先給其寫(xiě)全1  
                adrd=1;                  //選通AD0804 CS 端
                _nop_();
                adrd=0;                 //A/D讀使能
                _nop_();
                adval=P1;        //A/D數(shù)據(jù)讀取賦給P1口
                adrd=1;
                WD=adval;
                WD=WD*72/51;                                                //獲得當(dāng)前時(shí)刻的風(fēng)向值
                        g=WD;                                                        //將當(dāng)前時(shí)刻的風(fēng)向值賦給g
        {       
                if(WD>g)                                                         //判斷下一時(shí)刻的風(fēng)向值大于g
                {  h=WD;                                                         //將下一時(shí)刻的風(fēng)向值賦給h
   {        for(l=0;l<(h-g);l++)                                  //循環(huán)h-g次
            for(l=1;l>0;l--)                                  //步進(jìn)電機(jī)旋轉(zhuǎn)角度
              {
                         for (t=0; t<8; t++)      
                  {
                                  P1 = FFW1[t]&0x1f;  
                                  delay(1)   ;                              
                          }
              }
   }
        }
                else if(WD<g)
                { h=WD;
        {                for(l=0;l<(h-g);l++)
                                                  
                                 for(l=1;l>0;l--)
                         {
                                           for (t=0; t<8; t++)      
                                        {
                                                   P1 = FFZ1[t]&0x1f;
                                                          delay(1);
                                                }
                         }
        }
           }
                else
                {;}
        }
                bai=(int)WD/100;
                shi=(int)WD%100/10;
                ge=(int)WD%10;      //(int)字符型強(qiáng)制轉(zhuǎn)換成整形  1602分出 個(gè)位跟小數(shù)點(diǎn)后四位   
                F1=(int)(WD*10)%10;   
                F2=(int)(WD*100)%10;   
                F3=(int)(WD*1000)%10;   
                F4=(int)(WD*10000)%10;   
                lcd_display(bai,shi,ge,F1,F2);
        }
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:82765 發(fā)表于 2017-8-24 15:59 來(lái)自觸屏版 | 只看該作者
提示: 作者被禁止或刪除 內(nèi)容自動(dòng)屏蔽
回復(fù)

使用道具 舉報(bào)

板凳
ID:123289 發(fā)表于 2017-8-24 16:22 | 只看該作者
先去除程序中采樣、顯示……,只留下電機(jī)驅(qū)動(dòng)部分,看看電機(jī)能不能轉(zhuǎn)。設(shè)法讓電機(jī)先轉(zhuǎn)起來(lái)。
回復(fù)

使用道具 舉報(bào)

地板
ID:222455 發(fā)表于 2017-8-24 17:03 來(lái)自觸屏版 | 只看該作者
yzwzfyz 發(fā)表于 2017-8-24 16:22
先去除程序中采樣、顯示……,只留下電機(jī)驅(qū)動(dòng)部分,看看電機(jī)能不能轉(zhuǎn)。設(shè)法讓電機(jī)先轉(zhuǎn)起來(lái)。

之前利用按鍵控制電機(jī)轉(zhuǎn),證明了電機(jī)部分的程序應(yīng)該沒(méi)啥問(wèn)題,后來(lái)加了最上面一層for循環(huán)來(lái)利用風(fēng)向控制電機(jī)轉(zhuǎn),結(jié)果有問(wèn)題
回復(fù)

使用道具 舉報(bào)

5#
ID:222455 發(fā)表于 2017-8-24 17:06 來(lái)自觸屏版 | 只看該作者
cjjcjj1 發(fā)表于 2017-8-24 15:59
你好,你的步進(jìn)電機(jī)是怎么接的,把圖發(fā)一下

連接如圖

IMG_2353.JPG (81.97 KB, 下載次數(shù): 76)

IMG_2353.JPG
回復(fù)

使用道具 舉報(bào)

6#
ID:228347 發(fā)表于 2017-8-24 22:22 | 只看該作者
最好把h值當(dāng)成一個(gè)上一時(shí)刻的值,然后你現(xiàn)在讀到的g為當(dāng)前值。g!=h,時(shí)去轉(zhuǎn)動(dòng)你的電機(jī),完成之后將g的值賦值給h。之前寫(xiě)的語(yǔ)句是有錯(cuò)的,你剛把g=WD,又去判斷g大于或者小于WD,這樣合適嗎。。。?

g=WD;                                                        //將當(dāng)前時(shí)刻的風(fēng)向值賦給g
        {        
                if(WD>g)                                                         //判斷下一時(shí)刻的風(fēng)向值大于g
回復(fù)

使用道具 舉報(bào)

7#
ID:222455 發(fā)表于 2017-9-19 09:34 | 只看該作者
oo0o_11 發(fā)表于 2017-8-24 22:22
最好把h值當(dāng)成一個(gè)上一時(shí)刻的值,然后你現(xiàn)在讀到的g為當(dāng)前值。g!=h,時(shí)去轉(zhuǎn)動(dòng)你的電機(jī),完成之后將g的值賦 ...

我也想過(guò)這個(gè)問(wèn)題,不過(guò)在程序中怎么利用兩個(gè)時(shí)刻的值進(jìn)行比較啊
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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