회원가입 ID/PW 찾기
AA

#include <mega128.h>
#asm
   .equ __lcd_port=0x18 ;PORTB
#endasm
#include <lcd.h>  
#include <delay.h>
#include <stdio.h>

#define sen_on()        PORTA = 0xff
#define sen_off()       PORTA = 0x00
#define SENSOR_MODE_ON  1
#define SENSOR_MODE_OFF  2

typedef  unsigned char byte;
typedef  unsigned int word;
typedef  unsigned long dword;

word  sensor_input[8];
byte sensor_mode;
int sensor_cnt = 0;
#define ADC_VREF_TYPE 0x00


// ADC interrupt service routine
interrupt [ADC_INT] void adc_isr(void)
{  
    sensor_input[sensor_cnt] = ADCW;
    sensor_cnt++;
   switch(sensor_cnt)
    {
        case 0:  ADMUX = 0x00;  break;
        case 1:  ADMUX = 0x01;  break;
        case 2:  ADMUX = 0x02;  break;
        case 3:  ADMUX = 0x03;  break;
        case 4:  ADMUX = 0x04;  break;
        case 5:  ADMUX = 0x05;  break;
        case 6:  ADMUX = 0x06;  break;
        case 7:  ADMUX = 0x07;  break;
        default: sensor_cnt=0; break;
    }                
   // ADMUX = 0x02; // adc cheannel select
   //if(sensor_cnt>=8) sensor_cnt=0;          
}

interrupt [TIM1_OVF] void timer1_ovf_isr(void)
{
   
    if(sensor_mode == SENSOR_MODE_ON)      //초기값은 sensor_mode 애  SENSOR_MODE_ON값이 들어가있음.
    {                         // 60us  
        sen_on();     //발광 on
        delay_us(3);  //2~3적당.
        ADCSRA|=0x40; 
        sensor_mode = SENSOR_MODE_OFF;     //스위칭 변수.                       
        TCNT3H = 0xff; //start timer     
        TCNT3L = 0xf1;
       
    }
    else if(sensor_mode ==  SENSOR_MODE_OFF)
    {  
                             // 180us  
        sen_off();     //발광 off
        sensor_mode = SENSOR_MODE_ON;      // 스위칭 변수.
        TCNT3H = 0xff;
        TCNT3L = 0xdd; //start timer         
    }
                              

}
void adc_init(void)
{   
  ADCSRA = 0x00; //disable adc
  ADMUX = ADC_VREF_TYPE;  // VRef
  ACSR  = 0x80;
  ADCSRA = 0x8E; // ADC Prescaler 128
}


void main(void)
{              
  char lcd_buf[16];
  DDRA = 0b11111111;
    
   
  DDRF = 0x00;

        lcd_init(16);
       
   TIMSK = 0x04;
   TCCR1A = 0x00;
   TCCR1B = 0x03; //start timer2, prescale 64   
   TCNT1H = 0x00;
   TCNT1L = 0x00;
  
   //ETIMSK = 0x40; //timer2  compare interupt
   sensor_mode = SENSOR_MODE_ON;
   adc_init();
   #asm("sei");
      
    while (1)
    {  
        lcd_clear();
        lcd_gotoxy(0,0);
        sprintf(lcd_buf, "%d",sensor_input[3]);
        lcd_puts(lcd_buf);
        lcd_gotoxy(4,0);
        sprintf(lcd_buf, "%d",sensor_input[1]);
        lcd_puts(lcd_buf);
        lcd_gotoxy(8,0);
        sprintf(lcd_buf, "%d",sensor_input[2]);
        lcd_puts(lcd_buf); 
        lcd_gotoxy(0,1);
        sprintf(lcd_buf, "%d",sensor_input[7]);
        lcd_puts(lcd_buf);
        lcd_gotoxy(4,1);
        sprintf(lcd_buf, "%d",sensor_input[6]);
        lcd_puts(lcd_buf);
        lcd_gotoxy(8,1);
        sprintf(lcd_buf, "%d",sensor_input[5]);
        lcd_puts(lcd_buf);
       
       
        delay_ms(500); // 0.5초 지연
      };
}

 

이렇게소스코드를짜보았는데 수광부쪽테스트를해봐도 반응이없네요... 소스쪽문제일까요 ㅠㅠ?

JHJ
댓글 0

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
109 Analog & Mixed-Signal 설계 HOTQ8 SpeedUp TR 회로 해석 부탁드려도 될까요?2 H2히로 421 2015.09.30
108 Analog & Mixed-Signal 설계 HOT트랜스를 사용하지 않은 AC-DC 컨버터 회로를 설계하고 있는대 도움 좀 주세요1 hertz 797 2015.08.04
107 Analog & Mixed-Signal 설계 HOT전원회로를 분석하는데 도움좀 주십시요~!(질문만 올려서 죄송합니다..ㅜㅜ)7 뒷동산쓰레귀 2779 2015.02.02
106 Analog & Mixed-Signal 설계 HOT5V와 3.3V 간의 레벨 맞추기에 대하여...2 뒷동산쓰레귀 833 2015.01.30
105 Analog & Mixed-Signal 설계 스위칭 MOSFET 질문입니다4 후후후 341 2014.11.12
104 Analog & Mixed-Signal 설계 HOT전력오피앰프의 비반전 증폭회로 제가 잘 못 구성한 것입니까?1 전자뱅뱅 481 2014.10.18
103 Analog & Mixed-Signal 설계 simplorer 11 serial2 syleepaul 316 2014.10.08
102 Analog & Mixed-Signal 설계 HOT초보가 기존의 설계를 변경하려 합니다.4 gotofbi 447 2014.05.14
101 Analog & Mixed-Signal 설계 HOT고압 싸인파를 만들기 위한 회로도가 의심스럽습니다.5 전자뱅뱅 1012 2014.05.01
100 Analog & Mixed-Signal 설계 HOT이 회로에서 쇼트가 나는이유?3 아크마 528 2014.04.22
99 Analog & Mixed-Signal 설계 HOT노이즈 필터 설계시 역률 관계1 ganges 681 2013.06.17
98 Analog & Mixed-Signal 설계 HOT정말 기초 질문인데요ㅠㅠ 회로설계 시작할때요 ㅠ1 플리즈헬미 724 2013.05.12
97 Analog & Mixed-Signal 설계 HOTSMPS와 아답터의 차이를 알고 싶습니다.2 초보에염ㅠㅠㅠ 1826 2013.04.01
96 Analog & Mixed-Signal 설계 HOT레귤레이터 출력 전압 조절질문입니다.1 긍정적 마인드 926 2013.01.23
95 Analog & Mixed-Signal 설계 HOTCCD의 무선 전송(지그비) 로미옹 404 2013.01.07
94 Analog & Mixed-Signal 설계 HOTOPAMP와 TR통해서 전류증폭관련 질문입니다. 조신율 2303 2012.11.29
93 Analog & Mixed-Signal 설계 HOT로또 추첨기 회로1 광돌이 830 2012.11.07
92 Analog & Mixed-Signal 설계 리셋관련된 이상동작2 칼라무지게 355 2012.10.11
91 Analog & Mixed-Signal 설계 HOTBJT와 MOSFET의 쓰임새1 알파친노 1127 2012.10.11
90 Analog & Mixed-Signal 설계 HOT제너 다이오드의 쓰임새1 알파친노 567 2012.10.11
  • 전쟁에서는 오직 한 번 죽지만 정치에서는 여러번 죽는다.
    - 처칠
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.