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

موضوع: طراحی سیگنال ژنراتور

  1. #1
    کاربر علاقه مند
    تاریخ عضویت
    Oct 2015
    نوشته ها
    30
    تشکر
    18
    تشکر شده 2 بار در 2 پست

    پیش فرض طراحی سیگنال ژنراتور

    سلام
    من یه سوال داشتم یه سیگنال ژنراتور ساده نوشتیم که موج های مربعی و سینوسی و مثلثی تولید میکنه حالا میخواییم یه جوری تغییرش بدیم که دامنه و فرکانس سیگنال خروجی قابل
    تنظیم باشه. کسی میتونه راهنماییمون کنه . من کلا با ARM خیلی اشنایی ندارم.
    کد:
    #ifndef __ARM_dac_h
    #define __ARM_dac_h
    
    
    /* set p0.26 to DAC output */ 
    void dac_init( void )
    {
    LPC_PINCON->PINSEL1 |= 0x00200000;     
    return;
    }
    /* dac function */ 
    void dac_value(unsigned int dac)
    {
    dac_init();
    LPC_DAC->DACR = (dac << 6) | 0x00010000;
    }
    #endif
    
    
    //#include "ARM_delay.h"
    
    
    uint16_t DAC1[36] = 
    {
    700,690,680,650,630, 600,550, 500,450, 400,350,300,250,200,180,150,130,110,100,
        110,130,150,180,200,250,300,350,400,450,500,550,600,630,650,680,690
        
    
    };
    uint16_t DAC2[36] = 
    {
    700, 600, 500, 400,300,200,100,100,100,100,100,100,100,700, 600, 500, 400,300,200,100,100,100,100,
        100,100,100,700, 600, 500, 400,300,200,100,100,100,100,
    
    };
    uint16_t DAC3[36] = 
    {
    700, 700, 700, 700, 700, 700, 700, 700, 700,
    200, 200, 200, 200, 200, 200, 200, 200, 200, 
    700, 700, 700, 700, 700, 700, 700, 700, 700,
    200, 200, 200 , 200 ,200 , 200 , 200, 200 , 200 
    
    };
    
    int main()
    {
    uint8_t i;
    //LPC_PINCON->PINSEL0=0 ;
    //LPC_PINCON->PINSEL1=0 ;
    //LPC_PINCON->PINMODE0=0;
    //LPC_GPIO1->FIODIR = LPC_GPIO0->FIODIR&(~1<<8);
    //LPC_GPIO0->FIOMASK=0xffffff00;
                                
    LPC_GPIO0->FIODIR = 0xffffffff;
    LPC_GPIO1->FIODIR = 0xffffffff;
    LPC_GPIO2->FIODIR = 0xffffffff;
    LPC_GPIO3->FIODIR = 0xffffffff;
    LPC_GPIO4->FIODIR = 0xffffffff;
    LPC_GPIO0->FIOPIN = 0;
    LPC_GPIO1->FIOPIN = 0;
    LPC_GPIO2->FIOPIN = 0;
    LPC_GPIO3->FIOPIN = 0;
    LPC_GPIO4->FIOPIN = 0;
    while (1) 
    {
             if(((LPC_GPIO0->FIOPIN)&(1<<8))==0)
             {
                     for (i = 0; i < 36; i++)
                    {    
                    dac_value(DAC1[i]*1023/818); 
                    }
                }
    
    
             if(((LPC_GPIO0->FIOPIN)&(1<<9))==0)
                 {
                     for (i = 0; i < 36; i++)
                    {    
                    dac_value(DAC2[i]*1023/818); 
                    }
                    }
    
    
                 if(((LPC_GPIO0->FIOPIN)&(1<<10))==0)
                     {
                         for (i = 0; i < 36; i++)
                    {    
                    dac_value(DAC3[i]*1023/818); 
                    }
                    }
    }
    }
    ویرایش توسط mzarkoob : 02-05-2016 در ساعت 18:09 دلیل: اصلاح کد

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

  3. #2
    مدیر انجمن mzarkoob آواتار ها
    تاریخ عضویت
    Jun 2011
    نام
    مهدی زرکوب
    نوشته ها
    2,902
    تشکر
    1,202
    تشکر شده 2,317 بار در 1,273 پست

    پیش فرض

    خوب الان مشکلتان چیه؟
    dac که به سادگی راه اندازی میشه و بر اساس مقداری که در ان قرار میدهید هم ولتاژ کم و زیاد دمیشه. زمان را هم بهتره برای دقیق تر بدن از تایمر استفاده کنید که فرکانس را کم زیاد می کنه.
    ما بقی برنامه نویسی است. شاید منظورتان این بوده که
    من کلا با
    برنامه نویسی سی
    خیلی اشنایی ندارم!؟

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

  1. چه مدار اسیلاتوری بهتره
    توسط sarasafari در انجمن طراحی و ساخت و آزمایش مدارت الکترونیک
    پاسخ: 0
    آخرين نوشته: 07-08-2013, 03:50
  2. چه مدار اسیلاتوری بهتره
    توسط sarasafari در انجمن طراحی و ساخت و آزمایش مدارت الکترونیک
    پاسخ: 0
    آخرين نوشته: 07-08-2013, 03:02
  3. کمک فوری (اسیلاتور گان)
    توسط mohsen_1368_m در انجمن الکترونیک
    پاسخ: 0
    آخرين نوشته: 13-06-2013, 00:31
  4. اسیلاتور
    توسط adminzadeh در انجمن مخابرات
    پاسخ: 3
    آخرين نوشته: 31-08-2009, 11:20
  5. دانلود نرم افزار سیگنال ژنراتور
    توسط kavir در انجمن پرسش و پاسخ (نرم افزارهای تخصصی)
    پاسخ: 0
    آخرين نوشته: 16-02-2009, 20:59

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

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