회원가입 ID/PW 찾기
AA
#include<avr/io.h>
#include<avr/interrupt.h>



volatile unsigned char count=0;
volatile unsigned char timer_flag=0;
volatile unsigned char job=0;
volatile unsigned char job1=0;
volatile unsigned long High_table[18]={1389,1599,1799,1999,2199,2400,2599,2796,3002,3199,3401,3596,3802,3999,4201,4394,4596};
volatile unsigned long Low_table[18]={38599,38399,37999,37799,37599,37399,37199,36999,36799,36599,36399,36199,35999,35799,355599,35399};
volatile unsigned char temp=0;
volatile unsigned char temp2=0;
volatile unsigned char val=0;

void init_timer1()     
{

    TCCR1B=0x0A;
OCR1A=39999; 
TIMSK  |= (1<<OCIE1A);      
}
void init_timer2()     
{

  
    TCCR3B=0x0A;
OCR3A=39999; 
ETIMSK |= (1 << OCIE3A); 
}
int main(void)
{

cli();

DDRG=0xff;
DDRA=0xff;
DDRE = 0xFE;


ADMUX = (0<<REFS1) | (1<<REFS0) | (1<<ADLAR); 
ADCSRA = (1<<ADEN) | (1<<ADPS2) ;

init_timer1();
init_timer2();


sei();



while(1)
{

ADCSRA |= 0x40;
while((ADCSRA & 0x10) == 0);


temp=ADCL;
temp=ADCH;


}

return 0;
}

ISR(TIMER1_COMPA_vect)
{

OCR1A=39999; 

ADMUX= (ADMUX & 0xF8) + 0x00;

if(temp==255)
{

if(job)
{
job=0;
OCR1A=High_table[0]; 
PORTG=0xff; 
}
else
{
job=1;
    OCR1A=Low_table[0]; 
PORTG=0x00; 

}
}
}
ISR(TIMER3_COMPA_vect)
{

  OCR1B=39999; 
ADMUX= (ADMUX & 0xF8) + 0x01;

if(temp==0)
{

if(job1)
{
job1=0; 
OCR3A=High_table[1]; 
PORTA=0xff; 
}
else
{
job1=1;
    OCR3A=Low_table[1]; 
PORTA=0x00; 
}
}
}

제가 짠 프로그램인데 조이스틱을 이용해서 들어오는 adc 값 가지고 펄스를 내보내려고 합니다.
근데 ISR(TIMER1_COMPA_vect) 하나만 인터럽트 할때는 정상적으로 되는데 ISR(TIMER3_COMPA_vect)
까지 같이 하려니까 인터럽트는 걸리는데 나오는 펄스가 제대로 되질 않네여;; 조언 부탁드립니다
댓글 0

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

search
번호 분류 제목 글쓴이 조회 수 날짜
55 Software & IDEs HOTAllegro OrCAD 16.6 파일 보내주실 수 있나요?2 jihE 488 2018.01.28
54 Software & IDEs 소스 분석툴 관련 질문드려요2 아톰신 173 2017.01.02
53 Software & IDEs 리눅스 커널에 대해 공부하려고 하는데 서적 한부 추천 부탁드립니다.1 아톰신 184 2017.01.02
52 Software & IDEs PADS.9.4.1 받을수 있는 방법(훈련병)2 하운드 300 2016.07.13
51 Software & IDEs 리눅스는 여기 사이트와 거리가 먼거죠?1 pcb훈련변 186 2016.06.05
50 Software & IDEs epm3128act100-10n 프로그램 확인 땡쟁이 221 2015.12.17
49 Software & IDEs 신입생입니다.3 sunni 228 2015.12.09
48 Software & IDEs gps단말기 펌웨어질문입니다1 힘술쟁이 258 2015.11.18
47 Software & IDEs HOTUSB를 사용하는 디바이스 펌웨어 개발 책? 문서?1 베이아터 483 2014.01.09
46 Software & IDEs HOT큐블럭 프로그래밍 관련 질문 올립니다.1 행복이아빠 605 2013.08.22
45 Software & IDEs HOTProteus 7.7 Professional2 Keyshaun 757 2013.07.12
44 Software & IDEs HOTmsp430f1611을 사용하고 있는데 ADC에서 읽어들인 값하고 직접 테스터기로 찍은 값이 달라요1 김진성짱 813 2013.06.25
43 Software & IDEs HOTOV9620 SXGA 모드 설정 좀 도와주세요1 로미옹 520 2013.03.25
42 Software & IDEs HOT주차 시스템 회로 구성하는데요.. peng2 1203 2011.10.09
41 Software & IDEs HOTFreescale 질문인데 아시는 분 없나요? ㅠㅠ2 jzho 1554 2011.07.19
40 Software & IDEs HOTkey board 관련1 jjhuem 2451 2011.07.06
39 Software & IDEs HOT펌웨어 하다가 막히는 부분이 있어서 질문 드립니다. 마모루 1564 2011.06.13
38 Software & IDEs HOT어셈블리어 공부하기1 아이스으 2195 2011.03.22
37 Software & IDEs HOT스마트폰 앱 개발시 음성필터요..1 귤씅 2210 2011.01.28
36 Software & IDEs HOTWDK 관련 문의 입니다.1 소보루 1294 2010.11.18
  • 행복을 사치 속에서 구하는 것은 마치 태양을 그림에 그려놓고 빛이 비치기를 기다리는 것이나 다름없다.
    - 나폴레옹
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.