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

موضوع: راه اندازي ad7799 در ccs

  1. #1
    کاربر علاقه مند
    تاریخ عضویت
    Sep 2009
    نوشته ها
    45
    تشکر
    1
    تشکر شده 14 بار در 12 پست

    پیش فرض راه اندازي ad7799 در ccs

    ad7799

    سلام

    ad7799 یک ای سی خیلی جالبی که هم ولتاژ ورددی تقویت میکنه و هم تبدیل به دیجیتال میکنه(24bit)
    لطفا"کمک کنید این آی سی در ccs راه اندازی کنیم تا همگی بتونیم از این آی سی استفاده کنیم.
    قیمتشم حدود 10000تومان
    اینم دیتاشیتش


    http://www.datasheetcatalog.org/datashee...l6aywy.pdf

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

  3. #2
    مدیر باز نشسته aliAVR آواتار ها
    تاریخ عضویت
    Apr 2009
    نام
    علی شریفی نژاد
    نوشته ها
    183
    تشکر
    10
    تشکر شده 520 بار در 75 پست

    پیش فرض

    اقا لينك خرابه
    بالاخره از سربازی برگشتم و اومدم...

  4. #3
    کاربر علاقه مند
    تاریخ عضویت
    Sep 2009
    نوشته ها
    45
    تشکر
    1
    تشکر شده 14 بار در 12 پست

  5. #4
    کاربر علاقه مند
    تاریخ عضویت
    Sep 2009
    نوشته ها
    45
    تشکر
    1
    تشکر شده 14 بار در 12 پست

    پیش فرض

    من برنامه زیر و برای راه اندازی AD7799 استفاده کردم ولی جواب نمیده اگر کسی میتونه برنامه اصلاح کننه ،ممنون میشم


    datasheet AD779
    http://www.alldatasheet.com/datashee...AD/AD7799.html




    #include <16F877.h>
    #fuses XT,NOWDT,PUT,BROWNOUT,NOLVP
    #use delay(clock=4000000)
    #use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7, ERRORS)

    // SPI chip select pin
    #define AD7799_CS PIN_C0
    #define AD7799_DI PIN_C4
    #define AD7799_DO PIN_C5
    #define AD7799_CLK PIN_C3
    // SPI mode definitions (for 16F and 18F PICs).
    #define SPI_MODE_0 (SPI_L_TO_H | SPI_XMIT_L_TO_H)
    #define SPI_MODE_1 (SPI_L_TO_H)
    #define SPI_MODE_2 (SPI_H_TO_L)
    #define SPI_MODE_3 (SPI_H_TO_L | SPI_XMIT_L_TO_H)

    // AD7799 commands
    #define AD7799_READ_DATA_CMD 0x58
    #define AD7799_WRITE_CONFIG_CMD 0x10
    #define use_portb_lcd TRUE
    #include <lcd.c>

    //---------------------------------------
    // Call this function to read the 24-bit A/D result
    // from the AD7799.
    int32 ad7799_read_data(void)
    {
    int32 retval;
    int8 msb, mid, lsb;

    output_low(AD7799_CS);

    spi_write(AD7799_READ_DATA_CMD);
    msb = spi_read(0); // Data comes out MSB first
    mid = spi_read(0);
    lsb = spi_read(0);
    output_high(AD7799_CS);

    // Convert the data bytes into a 32-bit value.
    retval = make32(0, msb, mid, lsb);

    return(retval);
    }

    //---------------------------------------
    // Call this function to write a 16-bit value
    // to the AD7799 Configuration register.
    void ad7799_write_config(int16 config)
    {
    output_low(AD7799_CS);
    spi_write(AD7799_WRITE_CONFIG_CMD);
    spi_write(config >> 8); // Write MSB first
    spi_write(config); // then write the LSB
    output_high(AD7799_CS);
    }

    //---------------------------------------
    // Setup the hardware SPI module in the PIC.
    // The AD7799 uses SPI mode 3. The maximum SPI clock
    // rate is 2.5 MHz. For a 20 MHz PIC, the closest
    // clock divisor that will work is 16, giving 1.25 MHz.
    // Initialize the chip select pin to the inactive state.
    // Do the required 500 ms initial delay mentioned on
    // page 19 of the AD7799 data sheet.
    void ad7799_init(void)
    {
    setup_spi(SPI_MASTER | SPI_MODE_3 | SPI_CLK_DIV_16);

    output_high(AD7799_CS);

    delay_ms(500); // Startup delay

    // Channel = 0, Gain Select = 0, Unipolar, 2.5v input range
    ad7799_write_config(0x0010);

    }

    //====================================
    void main()
    {
    int32 result;

    ad7799_init();
    lcd_init();

    // Read the AD7799 every 500ms and display the result.
    while(true)
    {
    result = ad7799_read_data(); // Get 24-bit A/D value
    printf("%lx \n\r", result);
    printf(lcd_putc,"%u",result);
    lcd_gotoxy(1,8);
    lcd_putc(result);
    delay_ms(500);

    }

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

  1. مشکل در راه اندازي arm
    توسط aliakbar30 در انجمن AT91 series (ATMEL)
    پاسخ: 3
    آخرين نوشته: 18-02-2011, 13:01
  2. راه اندازي LED RGB
    توسط aliAVR در انجمن AVR
    پاسخ: 0
    آخرين نوشته: 05-11-2009, 14:25
  3. راه اندازي سرو ؟
    توسط hamed_madar در انجمن کنترل هوشمند و plc
    پاسخ: 3
    آخرين نوشته: 02-10-2009, 22:10

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

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