找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

pic單片機(jī)控制電機(jī)啟動(dòng)、轉(zhuǎn)動(dòng)、停止C語言程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:51707 發(fā)表于 2013-7-11 02:58 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
#include <pic.h>
#define MOTOR   RB2

void DELAY(unsigned int);

    main(void)
{char   A;
    MOTOR=0;
    OPTION=0b00000000;      //設(shè)定RB0為下降沿中斷
    TRISB=0b00000001;           //設(shè)定RB0為輸入,RB2為輸出
    TRISD=0b00000000;           //PORTD全為輸出口
    A=0b00000001;
    PORTD=A;                //PORTD的第0位LED亮
    INTCON=0;               //禁止中斷
  while(1)
    {
        if (RB0==1)         //每隔100ms,檢測一下開關(guān)S1的狀態(tài)
            MOTOR=0;        //S1斷開時(shí)RB0為高電平,讓電機(jī)停
        else
            MOTOR=1;        //S1合上時(shí)RB0為低電平,讓電機(jī)轉(zhuǎn)
        DELAY(200);
        A=A<<1;
        if (A==0)   
            A=0b00000001;   //當(dāng)最高位亮后,從最低位循環(huán)重復(fù)
        PORTD=A;            //LED輪流亮
    }
}

//======延時(shí)(n)ms
void DELAY(unsigned int n)
{
    unsigned int j;
    char k;
    for (j=0;j<n;j++)
            for (k=246;k>0;k--)
                NOP();
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:66144 發(fā)表于 2014-9-13 23:12 | 只看該作者

學(xué)習(xí)下
回復(fù)

使用道具 舉報(bào)

板凳
ID:159270 發(fā)表于 2017-2-13 00:47 | 只看該作者
正想做個(gè)玩具,控制雙電機(jī)的正反轉(zhuǎn),怎樣調(diào)速呢?
回復(fù)

使用道具 舉報(bào)

地板
ID:229804 發(fā)表于 2017-8-29 09:56 | 只看該作者
新人學(xué)習(xí)中!
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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