NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 2417 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 1 از 1

موضوع: آنالوگ به دیجیتال

  1. #1
    عضو جدید
    تاریخ عضویت
    Dec 2014
    نوشته ها
    5
    تشکر
    0
    تشکر شده 0 بار در 0 پست

    Exclamation آنالوگ به دیجیتال

    دوستان سلام
    من کد زی رو برای سنسور دما نوشتم .خطا نمده ولی کار نمکنه
    می خوام سنسور دما راه اندازی کنم.
    #include <mega16.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include <delay.h>


    // Alphanumeric LCD functions
    #include <alcd.h>
    char str2[10];
    // char str[10];
    float out;
    #define ADC_VREF_TYPE 0x00


    // Read the AD conversion result


    unsigned int read_adc(unsigned char adc_input)
    {
    ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
    // Delay needed for the stabilization of the ADC input voltage
    delay_us(10);
    // Start the AD conversion
    ADCSRA|=0x40;
    // Wait for the AD conversion to complete
    while ((ADCSRA & 0x10)==0);
    ADCSRA|=0x10;
    return ADCW
    {
    // Declare your global variables here



    void main(void)
    {
    ADMUX=ADC_VREF_TYPE & 0xff;
    ADCSRA=0x83;

    // Declare your local variables here


    // Input/Output Ports initialization
    // Port A initialization
    // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
    // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
    PORTA=0x00;
    DDRA=0x00;


    // Port B initialization
    // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
    // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
    PORTB=0x00;
    DDRB=0x00;


    // Port C initialization
    // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
    // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
    PORTC=0x00;
    DDRC=0x00;


    // Port D initialization
    // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
    // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
    PORTD=0x00;
    DDRD=0x00;




    TCCR0=0x00;
    TCNT0=0x00;
    OCR0=0x00;
    TCCR1A=0x00;
    TCCR1B=0x00;
    TCNT1H=0x00;
    TCNT1L=0x00;
    ICR1H=0x00;
    ICR1L=0x00;
    OCR1AH=0x00;
    OCR1AL=0x00;
    OCR1BH=0x00;
    OCR1BL=0x00;


    // Timer/Counter 2 initialization
    // Clock source: System Clock
    // Clock value: Timer2 Stopped
    // Mode: Normal top=0xFF
    // OC2 output: Disconnected
    ASSR=0x00;
    TCCR2=0x00;
    TCNT2=0x00;
    OCR2=0x00;


    // External Interrupt(s) initialization
    // INT0: Off
    // INT1: Off
    // INT2: Off
    MCUCR=0x00;
    MCUCSR=0x00;


    // Timer(s)/Counter(s) Interrupt(s) initialization
    TIMSK=0x00;


    // USART initialization
    // USART disabled
    UCSRB=0x00;


    // Analog Comparator initialization
    // Analog Comparator: Off
    // Analog Comparator Input Capture by Timer/Counter 1: Off
    ACSR=0x80;
    SFIOR=0x00;


    // ADC initialization
    // ADC Clock frequency: 1000.000 kHz
    // ADC Voltage Reference: AREF pin
    // ADC Auto Trigger Source: ADC Stopped
    ADMUX=ADC_VREF_TYPE & 0xff;
    ADCSRA=0x83;


    // SPI initialization
    // SPI disabled
    SPCR=0x00;


    // TWI initialization
    // TWI disabled
    TWCR=0x00;


    // Alphanumeric LCD initialization
    // Connections are specified in the
    // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
    // RS - PORTD Bit 0
    // RD - PORTD Bit 1
    // EN - PORTD Bit 2
    // D4 - PORTD Bit 4
    // D5 - PORTD Bit 5
    // D6 - PORTD Bit 6
    // D7 - PORTD Bit 7
    // Characters/line: 16
    lcd_init(16);


    while (1)
    {
    delay_ms(1000);
    lcd_clear();
    out=read_adc(0);
    out=(out/2);

    ftoa(out,1,str);
    sprintf(str2,"%u",out);
    lcd_puts(str2);
    }
    }

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

موضوعات مشابه

  1. لیمیتر جریان
    توسط sadeghbakhshi در انجمن الکترونیک
    پاسخ: 5
    آخرين نوشته: 04-12-2013, 00:36
  2. نحوه ساخت هیتر اینفرارد
    توسط kamikazi در انجمن الكترونيك قدرت
    پاسخ: 4
    آخرين نوشته: 03-12-2013, 08:32
  3. [سوال] مبدل دیجیتال به انالوگ
    توسط Ma3ood در انجمن AVR
    پاسخ: 9
    آخرين نوشته: 30-11-2013, 21:35
  4. پاسخ: 0
    آخرين نوشته: 16-12-2012, 14:10
  5. کمک نحوه ارسال دیتای مختلف avr
    توسط shayanscience در انجمن طراحی و ساخت و آزمایش مدارت الکترونیک
    پاسخ: 3
    آخرين نوشته: 14-11-2011, 21:08

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •