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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

PIC12F675電機控制程序案例源碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:437028 發(fā)表于 2018-12-1 14:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
編譯器用的是PICC9.83
你試試吧,一定要關閉AD才行哦。
//***************************************************
//           __________________
//       VDD-| 1            14 |-VSS
//   電機GP5-| 2            13 |-GP0/AN0/DAT  LED
//   AN3/GP4-| 3            12 |-GP1/AN1/CLK  
//GP3/RMCLR--| 4            11 |-GP2/AN2  
//           |________________ |
//               16F675
//***************************************************


#include <pic.h>

#define uchar unsigned char
#define uint  unsigned int


#ifndef OPEN
#define OPEN  1
#endif

#ifndef OFF
#define OFF  0
#endif


#define        SET                                1
#define        CLEAR                        0
#define        TRUE                        1
#define        FALSE                        0


__CONFIG(FOSC_EXTRCIO & WDTE_OFF & MCLRE_OFF  & BOREN_OFF  & CP_OFF & PWRTE_ON);
  //內部RC 看門狗關閉 GP3為IO 代碼不保護
//#pragma config BOREN = OFF, CPD = OFF, FOSC = XT, MCLRE = OFF, WDTE = OFF, CP = OFF, PWRTE = OFF


#define   KEY     GPIO3
#define   LED     GPIO0
#define   BEEP    GPIO1
#define   SCR     GPIO5
#define   GHG     GPIO4


  /*********程序聲明****************/
void  InitAPP(void);

//void  ScanKey();



void InitAPP()
{
        /* Comment out if using simulator, ICD2, or ICE2000
        #asm                                                                  //Load Factory Calibration Value Into OSCCAL
                call 0x3FF
                bsf        _STATUS,5                                                                        
                movwf _OSCCAL                                                
        #endasm
        */

    TRISIO=0x00;                    //Set All I/O's As OUT  
        VRCON = 0;                         //參考電壓斷電
        CMCON = 0x07;                     // configure comparator inputs as digital I/O                  
        ANSEL =  0;                                  // configure A/D inputs as digital I/O
        ADON=  0;        
        GIE = 1;


                             //Enable All Interrupts
  //  RAPU=0;         //上拉總使能
  //  WPUA5=1;            //RA5使能  
   // RAIE=1;
     IOCB5=1;        //管腳中斷使能

}
/*********定時器初始化***************/
void  TimeInt()  
{
    OPTION_REG  &= 0x80;                   //
    TMR0  = 0x14;                    //  250uS
    T0IE = 1;                          //Timer0 Overflow Interrupt Enabled
    T0IF = 0;                        //Clear Timer0 Overflow Interrupt Flag

}   

//***************************************************************************
//Isr() - Interrupt Service Routine
//      - Timer0 Overflow & GP3 Pin Change Are Used
//***************************************************************************

void interrupt Isr()
{     static  uint  count;
        if ( (T0IE & T0IF) == 1)            //If A Timer0 Interrupt, Then
        {     
                 TMR0  = 0x14;
                 if(++count==40)  
                    {
                     count=0;
                 LED=~LED;
                      }

                    T0IF = 0;                 //Clear Timer0 Interrupt Flag
      }
/*
   else if ( (GPIE & GPIF) == SET)          //If A GP3 Pin-Change Interrupt
    {
     if(GHG==0)
      {
       SCR = 1;  //關閉電機
       BEEP=0; //打開蜂鳴器   
      }
     else if(GHG==1)
     {
      SCR=0;//打開電機
      BEEP=1; //關閉蜂鳴器   
     }
       GPIF=0;

    }

        else if ( (INTE & INTF) == SET)   //If A GP2/INT External Intrrupt
        {

        }
        else if ( PEIE == SET)                          //If Peripheral Interrupts Enabled, Check Peripheral
        {                                 //Interrupts

                if ( (EEIE & EEIF) == SET)          //If A EEPROM Interrupt
                {

                }
                else if ( (ADIE & ADIF) == SET) //If A A/D Converter Interrupt
                {

                }

                else if ( (CMIE & CMIF) == SET) //If A Comparator Interrupt
                {

                }
                else if ( (TMR1IE & TMR1IF) == SET) //If A Timer1 Interrupt
                {

                }
        }


***************************/

}


//*****************************************************************************
//Main() - Main Routine
//*****************************************************************************

void  main()
{   
    InitAPP();
    TimeInt();         
        while(1)                             
          {

      }               

}


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美在线观看一区 | 色婷婷激情综合 | 国内精品久久久久久久 | 亚洲九色 | 男女视频在线观看免费 | 久久久人成影片一区二区三区 | 一级在线免费观看 | 99色在线视频 | h在线免费观看 | 亚洲高清在线 | 国产精品久久久久久妇女6080 | 自拍 亚洲 欧美 老师 丝袜 | 在线国产一区二区三区 | 色噜噜狠狠色综合中国 | 中文字幕一区二区在线观看 | 久久久久久九九九九 | 狠狠干影院 | 久久高清国产 | 国产乱码精品一品二品 | 欧美日韩中文字幕在线播放 | 色偷偷噜噜噜亚洲男人 | av入口| 日韩精品av一区二区三区 | 交专区videossex农村 | 亚洲影音先锋 | 亚洲不卡一 | 美女一级黄 | 久久国产精品免费一区二区三区 | 亚洲欧美少妇 | 国产精品美女在线观看 | 日本色综合 | 综合二区 | 日韩三级| 中文字幕在线观看国产 | 久久99蜜桃综合影院免费观看 | 全免费a级毛片免费看视频免 | 91精品国产综合久久婷婷香蕉 | 久久精品青青大伊人av | 日韩欧美中文字幕在线观看 | 久久九精品 | 中文字幕加勒比 |