8051/PIC > DT516-061.c ADC display

인기검색어 > 아두이노 센서 ATMEGA128

최신글 질문게시판 동영상강좌 가입하기

▼ BASIC4MCU 후원업체 신제품 정보 ▼

▲ BASIC4MCU 후원업체 신제품 정보 ▲

BASIC4MCU > 8051/PIC

DT-516 강좌 | DT516-061.c ADC display

페이지 정보

작성자 키트 작성일17-08-23 13:09 조회286회 댓글0건

첨부파일

본문

3660040644_MNumBX1h_dt516-061-1-25C425DA25BF25EC2528curious992529_ekit.jpg3Ftype3Dw7403660040644_lqXaZCdb_dt516-061-2-25C425DA25BF25EC2528curious992529_ekit.jpg3Ftype3Dw740 

 

//-------------------------------------------------------------
// 82G516 E/V BOARD ( DT-516 )
//-------------------------------------------------------------
// XTAL : 22.1184Hz
//-------------------------------------------------------------
// filename: DT516-061.c
// ADC display
//-------------------------------------------------------------
#include
//
#include "DT516-main.h"
//
U_C pwm[16]={100};
U_I count=0;
//
void Timer_0_Interrupt(void) interrupt 1{ // 7200Hz주기
    P4=0xFF; // FND OFF
    switch(FND_CNT){
        case 0: P0=Seg_Data[count/1000];     FND_COM1=0; break;
        case 1: P0=Seg_Data[(count/100)%10]; FND_COM2=0; break;
        case 2: P0=Seg_Data[(count/ 10)%10]; FND_COM3=0; break;
        case 3: P0=Seg_Data[count%10];       FND_COM4=0; break;
    }
    if(++FND_CNT>3)FND_CNT=0;
    //
    if(delay_buf){ if(--delay_buf==0)delay_flg=1; }
}
//
U_I read_ADC(U_C ch){ //ch:0~7
    ADCTL=0xE8|ch;   //ADC on & speed 270clk/start ADC //ch
    while(!(ADCTL & 0x10));
    return ((ADCH<<8) + ADCL);
}
//
void main(){
    TMOD=2; ET0=1; TR0=1; EA=1;
    AUXR=(AUXR|0x40); P1=0xFF; P1M0=0xFF; P1M1=0; //P1.ch Hi-impedance input//ADCH=상위(BIT9,8) ADCL=하위
    while(1){
        count=read_ADC(0); delay_ms(100);
    }
}
//------------------------------------------------------------- 

채널 0번을 표시 합니다.

0~2.5V 가변되므로 0~511까지 표시 됩니다.

 

숫자가 한두개 정도 오락가락 하는 것을 눈여겨 봐두세요

어느 ADC나 다 마찬가지입니다.

댓글 : 0

조회수 : 286

등록된 댓글이 없습니다.

게시물 검색

8051/PIC 목록

게시물 검색


Privacy Policy
MCU BASIC ⓒ 2017
PC버전