1712131502
級(jí)別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 175 個(gè)
工控威望: 1989 點(diǎn)
下載積分: 933 分
在線時(shí)間: 158(小時(shí))
注冊時(shí)間: 2012-04-05
最后登錄: 2024-06-27
查看1712131502的 主題 / 回貼
樓主  發(fā)表于: 2012-09-08 16:45
偶今天折騰了好久,搞了個(gè)正反轉(zhuǎn)的程序,竟然不執(zhí)行,求指點(diǎn)
#include <reg52.h>
sbit s4=P3^6;
sbit s5=P3^7;
sbit km1=P1^3;
sbit km2=P1^5;
void main()

km1=1;
km2=1;
while(1){
if (s4==0)
{
km1=0;
km2=1;
}
if (s5==0){
km1=1;
km2=0;
}  
}
}
像螞蟻一樣工作,像蝴蝶一樣生活
shi2999
不管學(xué)什么,興趣是最好的老師,能賺錢是最強(qiáng)勁的動(dòng)力
級(jí)別: 網(wǎng)絡(luò)英雄

精華主題: 0
發(fā)帖數(shù)量: 2680 個(gè)
工控威望: 7394 點(diǎn)
下載積分: 3002 分
在線時(shí)間: 606(小時(shí))
注冊時(shí)間: 2010-12-26
最后登錄: 2023-05-29
查看shi2999的 主題 / 回貼
1樓  發(fā)表于: 2012-09-13 20:44
可以用,幫你頂一個(gè)。
#include <reg52.h>
sbit s2=P3^4;//停止
sbit s4=P3^6;//正
sbit s5=P3^7;//反
sbit km1=P1^3;
sbit km2=P1^5;
void delay();
void main()
{  
km1=1;
km2=1;
while(1)
{
if (s2==0)
{
delay();
if(s2==0)
{
km1=1;
km2=1;
} }

if (s4==0)
{
delay();
if(s4==0)
{
km1=0;
km2=1;
}}
if (s5==0)
{
delay();
if(s5==0)
{
km1=1;
km2=0;
}}

}
}
void delay(void)   //誤差 0us,延時(shí)50微秒
{
    unsigned char a,b;
    for(b=1;b>0;b--)
        for(a=22;a>0;a--);
}   
樓主留言:
好貼!老師可以幫我寫個(gè)星三角降壓啟動(dòng)麼
本帖最近評分記錄:
  • 下載積分:+5(1712131502) 感謝!老師可以教我麼
    shi2999
    不管學(xué)什么,興趣是最好的老師,能賺錢是最強(qiáng)勁的動(dòng)力
    級(jí)別: 網(wǎng)絡(luò)英雄

    精華主題: 0
    發(fā)帖數(shù)量: 2680 個(gè)
    工控威望: 7394 點(diǎn)
    下載積分: 3002 分
    在線時(shí)間: 606(小時(shí))
    注冊時(shí)間: 2010-12-26
    最后登錄: 2023-05-29
    查看shi2999的 主題 / 回貼
    2樓  發(fā)表于: 2012-09-13 22:57
    引用
    引用第17樓supermax于2012-09-12 09:43發(fā)表的  :
    這樣就可以啦!我已試過OK
    #include <reg52.h>
    sbit s2=P3^4;//停止
    sbit s4=P3^6;//正
    sbit s5=P3^7;//反
    .......

    void delay(void)   //誤差 0us,延時(shí)50微秒
    {
        unsigned char a,b;
        for(b=1;b>0;b--)
            for(a=22;a>0;a--);
    }

    時(shí)間上,可能不是太準(zhǔn),

    只不過,利用一些計(jì)算,,推遲一些時(shí)間,
    你試下把 delay(),, 改成sleep(50) 看看,可以提高效率。
    樓主留言:
    感謝!可是老師啊,按住S2的時(shí)候,再按S4和S5依然可以啟動(dòng),這個(gè)可以解決麼