اطلاعیه

Collapse
No announcement yet.

dac0800

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    dac0800

    سلام
    می خواهم با dac0800بتوانم 8 پله ولتاژبین 0تا10ولت بسازم آیا می شود من بسیار مبتدی هستم و می خواهم با توجه 8پله ولتاژخروجی درایو را کنترل کنم و البته این ic را ازecaخریداری کردم ولی چون رشته ام برق قدرت چیزی زیادی از دیتاشیتش نفهمیدم و نمی دونم برنامه نویسیش چی میشه و چطور وصل میشه :rolleyes:

    #2
    پاسخ : dac0800

    نوشته اصلی توسط kavosh_1
    سلام
    می خواهم با dac0800بتوانم 8 پله ولتاژبین 0تا10ولت بسازم آیا می شود من بسیار مبتدی هستم و می خواهم با توجه 8پله ولتاژخروجی درایو را کنترل کنم و البته این ic را ازecaخریداری کردم ولی چون رشته ام برق قدرت چیزی زیادی از دیتاشیتش نفهمیدم و نمی دونم برنامه نویسیش چی میشه و چطور وصل میشه :rolleyes:
    چرا که نه

    پایه 5 تا 12 ورودی برای مقدار دهی هست . 8 بیت که میشه 256 حالت
    پایه 12 LSB یا بیت کم ارزش و هر چه به سمت پایه 5 بری ارزش بیت ها بیشتر میشه

    مثلا برای حداقل مقدار روی 8 بیت اینطوری مقدار بده 00000001
    و برای حداکثر مقدار 11111111
    حالا برای 8 پله عدد 256 را بر 8 تقسیم کن که میشه 32 ، یعنی مقدار هر پله 32 هست، مثلا برای پله پنجم مقدار 160 را باید روی ورودی DAC قرار بدی که مقدار باینری اون برابر با 10100000 میشه

    البته من یک نکته را فراموش کردم این DAC +/- هست
    طبق صفحه 6 دیتا شیت بیت MSB یا همون پر ارزش بیت علامت یا همون +/- هست

    در این جا مقدار را باید روی 7 بیت قرار بدید
    مثلا صفر برابر با 0 0 0 0 0 0 0 1
    و حداکثر برابر با 1 1 1 1 1 1 1 1

    و مثلا پله 5 برابر با 11010000 که میشه 80=16*5
    یعنی هر پله 128 تقسیم بر 8 برابر با 16


    موفق باشید
    امام علی (علیه السلام) : الزکات العلم نشرهُ/ زکات علم نشر آن است

    دیدگاه


      #3
      پاسخ : پاسخ : dac0800

      [quote author=Abbas Sarami link=topic=83517.msg511449#msg511449 date=1379664623]

      مرسی خیلی ممنون گرفتم چی شد ؛میشه یک لطفی کنید بقیه پایه ها را هم یه توضیح بدید مثلا ولتاژ10ولت را به کدوم پایه بدیم تغذیه اینIc کدوم پایس آیا 5 ولت آیا خازن یا مقاومتی هم می خواهد بهش وصل کنیم خروجی چی؟؟

      دیدگاه


        #4
        پاسخ : dac0800

        ببخشید چند روزی سرم شلوغ بود #:S
        این شماتیک را ببین همه چی مشخصه



        برای خروجی + باید از پایه 4 خروجی بگیری
        اگه میخواهی از خروجی جریان بکشی از یک OpAmp استفاده کن

        موفق باشید
        امام علی (علیه السلام) : الزکات العلم نشرهُ/ زکات علم نشر آن است

        دیدگاه


          #5
          پاسخ : dac0800

          شرمنده من پر رو هستم ؛من مدار را در پروتوس بستم ولی جواب نداد یعنی ledراروشن نکرد آیا در عمل جواب میدهد در ضمن ولتاژ -10ولت حتما نیازه حالا باید بگردم دنبال 10-ولت آیا icهست که فقط یک ولتاژ0تا 10ولت آنالوگ بده با میکرو هم کنترل بشه ساده هم باشه ولتاژمنفی هم نخواد در ضمن جریان هم نمی خواهیم(البته این همه دیگه فقط نمی شه)
          میشه چک کنید شاید المانها را اشتباه انتخاب کردم
          البته خود فایل پروتوس در این آدرسه:http://kavosh1.fileup.ir/d/2152894/dac0800.DSN
          دومین مدار را هم امتحان کردم ولی نشدhttp://kavosh1.fileup.ir/d/2153367/dac0800.DSN
          [URL=http://upload7.ir/viewer.php?file=96090636007896887931.gif][/URL

          دیدگاه


            #6
            پاسخ : dac0800

            سلامی دوباره
            یک نکته : خروجی این IC جریان هست نه ولتاژ :agree:
            با دو تا مقاومت 10کیلو هر دو خروجی را به 10 ولت وصل کن و بعد ولتاژ را از سر مقاومت ها بگیر

            موفق باشید
            امام علی (علیه السلام) : الزکات العلم نشرهُ/ زکات علم نشر آن است

            دیدگاه


              #7
              پاسخ : dac0800

              من زیاد براش وقت نگذاشتم
              فکر کنم برای 0-10 ولت این شماتیک جواب بده (توی پروتئوس که خوب جواب داد)


              من یک برنامه برای میکرو نوشتم که یک موج مثلثی ایجاد میکنه ، یک برنامه خیلی خیلی ساده به زبان شیرین C
              کد:
              #include <mega8.h>
              #include <delay.h>
              
              unsigned char Count;
              
              void main(void)
              {
              
              DDRB=0xFF;
              PORTB=0x00;
              
              while (1)
                 {
                 for(Count = 0 ; Count<255 ; Count++)
                  {
                   PORTB = Count; 
                  delay_ms(1); 
                  } 
                   delay_ms(1);
                  while(Count--)
                  {
                  PORTB = Count;
                  delay_ms(1);
                  }
              
                 }
              }
              اینجا دیگه بیت علامت مفهومی نداره.
              اون پتانسیومتر 10 کیلو همونطور که روی شماتیک نوشتم برای تنظیم صفر هست (میتونی مقدارش را پیداکنی و فیکسش کنی)

              موفق باشید
              امام علی (علیه السلام) : الزکات العلم نشرهُ/ زکات علم نشر آن است

              دیدگاه


                #8
                پاسخ : dac0800

                سلام ممنون از راهنمایت داخل پروتوس جواب گرفتم اما در عمل خیر داخل دیتا شیت icدو نوع چیدمان بود DS005686-13و دیگریDS005686-14 طبق اولی ولتاژم از 4.10ولت تا5.21ولت متغیر بود البته ولتاژمنبع را5.21گذا شته بودم در دومی هم پایه 16 را که 1کردم 0.322ولت 0 که میشد 5.21ولتic یک عدد داشتم احتمال داره ic سوخته باشه البته اونجایی هم که ولتاژمتغیر بود با پتانسومتر تعغیرمی کرد

                دیدگاه


                  #9
                  پاسخ : dac0800

                  باید جواب بگیری، نباید مشکلی باشه :-?
                  با یک IC دیگه تست کن :agree:

                  موفق باشید
                  امام علی (علیه السلام) : الزکات العلم نشرهُ/ زکات علم نشر آن است

                  دیدگاه

                  لطفا صبر کنید...
                  X