امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 1
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل در ایجاد موج مربعی
نویسنده پیام
soheilas آفلاین
تازه وارد

ارسال‌ها: 2
موضوع‌ها: 2
تاریخ عضویت: مرداد ۱۳۹۱

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #1
مشکل در ایجاد موج مربعی
با سلام، من یه برنامه خیلی ساده در کدويژن نوشتم که با کلیک یه کلید در ويژوال بیسیک يه موج PWM تولید کنه، همراه با تولید این شکل موج یه led هم در پورت C ایجاد کردم که این led با کلیک کردن کلید روشن و خاموش میشه ولی از پایه OC2 شکل موجی ایجاد نمیشه...برنامش رو گذاشتم، کسی میدونه مشکل کجاست؟Sad

کد php:
#include <mega32.h>

// Standard Input/Output functions
#include <stdio.h>
#include <delay.h>

// Declare your global variables here

void main(void)
{
char a=0;


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

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: 4000.000 kHz
// Mode: Fast PWM top=FFh
// OC2 output: Non-Inverted PWM

ASSR=0x00;
TCCR2=0x6B;
TCNT2=0x00;
OCR2=0x00;

while (
1)
      {
      
      
a=getchar();   
      
      if (
a=='t')
      {
     
      
PORTC=0x01;   
      
delay_ms(250);

      
TCNT2=0x64;      //400Hz
      
OCR2=0x6B;      
      
       
PORTC=0x00;
      
delay_ms(250);
      
       }

      
      };


کریستالمم، کریستال 4 مگ داخلی هستش، کمکم کنین...

کسی نمیدونه چرا روی پایه OC2 خروجی ندارممم؟
(آخرین ویرایش در این ارسال: ۲۶-شهریور-۱۳۹۳, ۲۲:۴۴:۳۲، توسط sharin.)
۲۶-شهریور-۱۳۹۳, ۱۱:۳۱:۲۷
ارسال‌ها
پاسخ
sharin آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 2,055
موضوع‌ها: 28
تاریخ عضویت: مرداد ۱۳۸۹

تشکرها : 3714
( 8170 تشکر در 2772 ارسال )
ارسال: #2
RE: مشکل در ایجاد موج مربعی
شما با کد ویزارد ریجستر ها رو مقدار دهی کنید. ( مدار رو عملی بستید؟ یا شبیه سازی؟ )
دقت کنید که پایه ی مربوطه رو خروجی تعریف کنید.
در حلقه ی بینهایت هم فقط مقدار رجیستر OCR رو تغییر بدید ، الان TCNT اون وسط اضافه هست.

قبل از اینکه با VB و ... ارتباط بدید ، یه برنامه ساده رو ران کنید که یه موج ثابت رو روی پایه ی OC2 تولید کنه و بعد از جواب گرفتن ، با VB و ... درگیرش کنید.

همیشه پروژه رو پله پله جلو ببرید ... .

۲۶-شهریور-۱۳۹۳, ۲۲:۲۶:۴۵
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : a.mehran, omid_phoenix, رسول, aka.ReZa


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
Question کمک در ایجاد مدار آنالوگ برای درس مکاترونیک 1 secret_f 16 7,851 ۱۵-مرداد-۱۳۹۱, ۲۳:۲۳:۳۳
آخرین ارسال: orange signal
  ایجاد نویز مصنوعی جهت تست کارکرد مدارات میکرو و... رسول 5 5,953 ۳۰-خرداد-۱۳۹۰, ۲۱:۱۹:۱۴
آخرین ارسال: رسول
  ایجاد سیستم ارت رسول 11 5,701 ۱۶-آذر-۱۳۸۹, ۲۰:۴۰:۰۳
آخرین ارسال: رسول
  ایجاد تصویر بر روی تلویزیون sadegh-emrah 1 2,226 ۱۱-مرداد-۱۳۸۹, ۱۶:۵۱:۲۰
آخرین ارسال: رسول

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS