پاسخ : سوال در رابطه با ADC
ممنون
ممنون
کد:
#include <mega32.h> #include <delay.h> #include <stdlib.h> #asm .equ __lcd_port=0x18 ;PORTB #endasm #include <lcd.h> unsigned int adc_data ; char s[6] ; interrupt [TIM1_OVF] void timer1_ovf_isr(void){ TCCR1B=0x00 ; TCNT1H=0xFF; TCNT1L=0xDE; PORTD.5=!(PORTD.5); TCCR1B=0x02 ; } interrupt [TIM1_COMPA] void timer1_compa_isr(void) { PORTD.5=!(PORTD.5); } interrupt [ADC_INT] void adc_isr(void){ adc_data=ADCW; delay_ms(250); ADCSRA=0xCD ; } void main(void) { PORTD=0x00; DDRD=0xff; TCCR0=0x00; TCNT0=0x00; OCR0=0x00; TCCR1A=0x00; TCNT1H=0xFF; TCNT1L=0xDE; ICR1H=0x00; ICR1L=0x00; OCR1AH=0xFF; OCR1AL=0xEF; OCR1BH=0x00; OCR1BL=0x00; ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; MCUCR=0x00; MCUCSR=0x00; TIMSK=0x14; TCCR1B=0x02; ACSR=0x80; SFIOR=0x00; ADMUX=0X43 ; ADCSRA=0x8D ; lcd_init(16); #asm("sei") ADCSRA=0xCD ; while (1) { itoa(adc_data,s); lcd_gotoxy(0,0); lcd_puts(s); lcd_putsf(" "); }; }
دیدگاه