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

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

PIC單片機AD中斷調試(無數字濾波)

作者:佚名   來源:不詳   點擊數:  更新時間:2014年08月31日   【字體:

PIC單片機AD轉換的中斷調試程序如下(無數字濾波):

#include<pic.h>
#define uchar unsigned char
#define uint  unsigned int
__CONFIG(0x3B31);
const uchar disp[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uint adval;
float advalf;
uchar flag;
void delayms(uint x)
{  
   uint j,k;
   for(j=x;j>0;j--)
      for(k=110;k>0;k--);
}
void display(uint x )
{  
 PORTD= disp[x/1000]|0x80;
    PORTA= 0xF1;
    delayms(1);
  
    PORTD= disp[x/100%10];
    PORTA= 0xF3;
    delayms(1);

    PORTD= disp[x/10%10];
    PORTA= 0xF5;
    delayms(1);

    PORTD= disp[x%10];
    PORTA= 0xF7;
    delayms(1);
}
void init()
{
 uint adval=0;
    float advalf=0;
 flag = 0;
    TRISA=0x01;
    TRISC=0;
    PORTC=0x01;
    TRISD=0;
  
    ADCON0=0x41;  //8分頻(4M)、AN0、使能ADC
   ADCON1=0x8E;  //右對齊、AN0通道
 ADRESH = ADRESL = 0;
 PIE1 |=0x40;  //AD中斷使能
 INTCON |= 0xC0;  //外設使能、全局中斷使能
 ADGO=1;    //ADC轉換使能
    delayms(10);
}
void interrupt AD(void)
{
 if(ADIF&&ADIE)  //AD中斷使能且標志位置位 
 {
  ADIF = 0;  //標志位復位
  ADGO=0;   //暫停AD轉換
  flag = 1;  //置標志位
 }
}

void main()
{  
    init();
 while(1)
 {
  if(flag)
  { 
   flag = 0;
   adval=ADRESH;
      adval=adval<<8|ADRESL;
      advalf=adval/1023.0*5.0;
      adval=advalf*1000;
         ADGO=1;  //ADC轉換使能
        display(adval);
  }
 }
}

關閉窗口
主站蜘蛛池模板: 国产在线一区二区三区 | 91av视频| 久久精品二区 | 成人久久av | 欧美成人精品欧美一级私黄 | 亚洲激情视频在线观看 | 五月天在线观看 | 成人扒开伸进免费观看 | 免费视频一区二区 | av在线成人 | 欧美理伦 | 午夜两性| 免费成人黄色网址 | 午夜精品福利视频 | 日本一级片在线观看 | 中文字幕在线免费观看 | 成人3d动漫 | 97在线超碰 | 国产精自产拍久久久久久蜜 | av网站免费在线观看 | 一级黄色免费视频 | 黄色小视频免费观看 | 中文字幕国产在线 | 国产精品视频免费看 | 国产精品一级 | 日本一区二区三区在线视频 | 手机在线免费看av | 六月天婷婷| 精品网站999www | 欧美色图在线观看 | www.4hu95.com四虎| 美女操操操 | 日本免费中文字幕 | 日韩黄视频 | 草草视频在线观看 | 午夜网站在线观看 | 日韩二三区 | 在线不卡视频 | 欧美日韩成人在线观看 | 国产小视频网站 | www.99热 |