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

標題: 關于單片機控制繼電器的問題求助 [打印本頁]

作者: ppff001    時間: 2018-6-7 23:26
標題: 關于單片機控制繼電器的問題求助
想用單片機控制繼電器
買的現成的繼電器模塊,已經成功用按鍵控制繼電器的開關動作,
現在想請問各位大神,繼電器最終是控制電機的
想用光電傳感器和碼盤來控制  按下按鍵電機轉一圈或兩圈繼電器關閉
或者是定時關閉  設定一個時間  按下按鍵繼電器工作  倒計時開始  到零時繼電器關閉
不需要數碼管或其他的顯示
只要能工作就行了
本人小白一個  
請各位大神指教
#include<reg51.h>
sbit S4=P3^2;
sbit S3=P3^1;
sbit in=P1^0;

void main()
{
        while(1)                  
        {
                if(S3==0)
                        in=0;
                if(S4==0)
                        in=1;
               
        }
}

這是參考別人案例寫出來的
買的成品開發板
繼電器模塊  光電模塊都是現成的
跪求各位大神們的指教


作者: 27789111090    時間: 2018-6-8 00:29
我是使用DAC0832的直通方式進行數/模變換的,還加了一個按鍵來控制輸出電壓的大小
主要是通過控制時間來進行開關控制的,當設定的時間值(這里只是我個人隨便設定的)到了的時候就會停止工作,不然就會一直工作,希望可以幫到你

/*****************必要的變量定義***************** /
# include< reg51. h>
unsigned char t= 0;     //定義時間的電壓變量
/*****************主程序****************/
main()
{
EA= 1;         //開總中斷
EXO= 1;        //開外部中斷0
ITo= 1;         //設置外部中斷0為下降沿觸發方式
while(1)
{
P2=t;     //將速度變量從P2口輸出,讓DAC0832轉換成模擬電壓
}
}
/*****************外部中0斷子程序***************** /
void into()  interrupt 0
{
if (t== 255) ;       //將t控制在最大值255
else t= t+ 5;   //每次中斷以5為步長遞增
}

作者: 27789111090    時間: 2018-6-8 00:31
因為你沒有提供相關圖片,所以下面是我參照其他例子給出的答案,希望可以幫到你 /*****************必要的變量定義***************** / # include< reg51. h> unsigned char t= 0;     //定義時間的電壓變量 /*****************主程序****************/ main() { EA= 1;         //開總中斷 EXO= 1;        //開外部中斷0 ITo= 1;         //設置外部中斷0為下降沿觸發方式 while(1) { P2=t;     //將速度變量從P2口輸出,讓DAC0832轉換成模擬電壓 } } /*****************外部中0斷子程序***************** / void into()  interrupt 0 { if (t== 255) ;       //將t控制在最大值255 else t= t+ 5;   //每次中斷以5為步長遞增 }
作者: yesnotgo    時間: 2018-6-8 09:11
根據你所講的要求,只用到2個IO口,一個按鍵輸入,一個是繼電器控制輸出。按鍵按一下,電機運停止行一定時間后自動停止。程序這樣:
#include<reg51.h>
sbit S3=P3^1;
sbit in=P1^0;

void main()
{
uint a;
        while(1)                  
        {
                if(S3==0)
                        in=0;
                for(a=????,a>0,a--);//這里延時等待。根據實際需要設置a的初始值
                        in=1;
               
        }
}
作者: 淡然若夢    時間: 2018-6-8 11:12
你能收到傳感器傳回來的電機后,做一個判斷,然后就可以控制繼電器斷開了
作者: ppff001    時間: 2018-6-9 12:15
27789111090 發表于 2018-6-8 00:29
我是使用DAC0832的直通方式進行數/模變換的,還加了一個按鍵來控制輸出電壓的大小
主要是通過控制時間來進 ...

謝謝老大 但是你的這個方案不太適合我  還需要另外多加一個芯片  我這里買東西不太方便  買個開發板7天才到我這里  不過還是感謝回復
作者: ppff001    時間: 2018-6-9 12:20
yesnotgo 發表于 2018-6-8 09:11
根據你所講的要求,只用到2個IO口,一個按鍵輸入,一個是繼電器控制輸出。按鍵按一下,電機運停止行一定時 ...

非常感謝   
恩。。。。應該是這樣  按一下按鍵  繼電器工作  從而電機工作   這個a的延時定義  應該怎么寫   比方說定時5秒  a應該等于多少   
作者: ppff001    時間: 2018-6-9 12:28
淡然若夢 發表于 2018-6-8 11:12
你能收到傳感器傳回來的電機后,做一個判斷,然后就可以控制繼電器斷開了

感謝回復
這個判斷怎么編寫呢  
我把傳感器直接接到單片機IO上面   按鍵能啟動繼電器     光電傳感器上面一放上東西遮蓋上   繼電器就斷電了
傳感器變成感應開關了
我也需要他是個開關   但是碼盤上一般不都好幾個遮擋口么(能明白我的意思吧)
這剛一轉 就遮上了  達不到我需要電機轉動的量
懇請再詳細些  可以么




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