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

موضوع: مشکل سطح ولتاژ روی ماژول PWMC در AT91sam7x256 Evaluation brd v1.0

  1. #1
    عضو جدید
    تاریخ عضویت
    Mar 2011
    نوشته ها
    17
    تشکر
    14
    تشکر شده 1 بار در 1 پست

    پیش فرض مشکل سطح ولتاژ روی ماژول PWMC در AT91sam7x256 Evaluation brd v1.0

    سلام!

    من برنامه ی زیر رو برای AT91sam7x256 Evaluation board v1.0 نوشتم:

    کد:
    #include<AT91SAM7X256.h>
    #include<delay.h>
    int counter=1;
    int  main()
    {
    *AT91C_PMC_PCER = 1 << 10;
    *AT91C_PIOB_OER = 1 << 20;
    *AT91C_PIOB_PDR = 1 << 20;
    *AT91C_PIOB_ASR = 1 << 20;
    
    *AT91C_PWMC_CH1_CMR = 0x201;
    *AT91C_PWMC_CH1_CPRDR = 749;
    *AT91C_PWMC_CH1_CDTYR = 112;
    *AT91C_PWMC_ENA = 1<<1;

    تو شبیه سازی کیل ،برنامه مشکلی نداره،ولی وقتی برنامه رو برد می ریزم سطح ولتاژ موج حدود 5 میلی ولت هست!! البته فرکانس موجی که تولید میشه، درسته!
    تو اتمگا ، معمولا این اتفاق وقتی میفته که پایه پورت به اشتباه ورودی تعریف شده باشه،ولی اینجا که اینطور نیست...
    ضمنا موجی که تولید میشه به شدت رو اسیلوسکوپ بطور نامنظم حرکت میکنه،با تریگر هم کاریش نمیشه کرد-کسی از دوستان تجربه ای در این زمینه داره؟؟ مربوط به سخت افزار برد میشه یا کلا PWMC اینجوریه-که البته بعیده!

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

  3. #2
    کاربر ارشد 1nafar آواتار ها
    تاریخ عضویت
    Jul 2007
    نوشته ها
    2,745
    تشکر
    1,266
    تشکر شده 4,874 بار در 1,377 پست

    پیش فرض

    سلام
    تقریبا 8 ماهی میشه که سراغ arm نرفتم ، اما تا اونجا که یادمه :
    شما باید برای pwm یک منبع کلاک مشخص کنید که نکردید ( هر چند در حالت پیش فرض بر روی mck تنظیمه )
    اول باید pwm رو فعال کنید و بعد مقدار دهی رو انجام بدید ( ظاهرا شما اول مقدار دادید و بعد فعالش کردید )
    رجیستر MDER رو هم باید مقدار دهی کنید .
    ممکنه *AT91C_PWMC_CH1_CMR = 0x201; هم اشتباه باشه ، بهتره به جای قرار دادن عدد هگز در رجیستر از واژه های معادل اون که در فایل AT91SAM7X256.h وجود دارد استفاده کنید ، مثلا :

    کد:
    	*AT91C_PWMC_CH1_CMR =0X00|AT91C_PWMC_CPOL;  //Channel Pre-scaler=MCK & The output waveform starts at a low level.
    
       *AT91C_PIOA_MDER= AT91C_PB20_PWM1 ;
    و در نهایت برای مقدار دهی pwm یا باید مقدار ضریب وظیفه ( دیوتی سایکل ) رو مقدار دهی کنید یا مقدار زمان تناوب .
    کد:
    *AT91C_PWMC_CH0_CDTYR=x;

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

  1. جستجوی مقاله آموزشی avr ( گفتگوی دو دوست )
    توسط mapmap در انجمن پرسش و پاسخ (نرم افزارهای تخصصی)
    پاسخ: 5
    آخرين نوشته: 28-07-2013, 04:57
  2. پاسخ: 1
    آخرين نوشته: 11-05-2013, 00:12
  3. راه اندازی lcd 7' با برد راه انداز و میکروی at91sam7x256
    توسط abolfazld در انجمن میکرو کنترلر های 32 بیتی(arm)
    پاسخ: 2
    آخرين نوشته: 16-12-2012, 12:50
  4. حل مشکل نیامدن منوی بوت برای نصب ویندوز روی برد s3c6410
    توسط shahrivar88 در انجمن میکرو کنترلر های 32 بیتی(arm)
    پاسخ: 1
    آخرين نوشته: 03-11-2012, 23:56
  5. مشکل با برد Evaluation V1.0
    توسط sutech در انجمن AT91 series (ATMEL)
    پاسخ: 2
    آخرين نوشته: 13-05-2012, 00:29

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

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