اطلاعیه

Collapse
No announcement yet.

شمارش پالس با یک پورت I/O معمولی

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

    شمارش پالس با یک پورت I/O معمولی

    با سلام
    در یک پروژه نیاز داریم تا خروجی پالس هایی که از یک مدار اشکار ساز عبور از صفر ( فرکانس پالس ها 50HZ می باشد و از برق شهر نمونه برداری شده است) می اید شمارش شود. به دلیل استفاده از تایمر های در روند برنامه قادر به استفاده از تایمر/کانتر نیستیم. حال سوالی که مطرح می شود این است که آیا می توان با استفاده از یک پورت I/O معمولی و تعریف ان بصورت ورودی این پالس ها را خواند؟ آیا می توانید نمونه برنامه ای برای این ار قرار دهید؟
    گویند سنگ لعل شود در مقام صبر اری شود ولی به خون جگر شود
    همیشه آخر همه چیز خوبه، اگر هم هنوز خوب نشده پس هنوز آخرش نشده(چارلی چاپلین)

    #2
    پاسخ : شمارش پالس با یک پورت I/O معمولی

    از اینتراپت هم نمی خواید استفاده کنید ؟
    التماس دعا

    دیدگاه


      #3
      پاسخ : شمارش پالس با یک پورت I/O معمولی

      شما برای پیدا کردن صفر سینوسی به یه مدار zero cross detector نیاز دارید...ورودی این مدار به برق شهری متصل میشه و خروجی اون یک مقدار منطقی هست که به اینتراپت میکروکنترلر متصل میشه...
      این مدار مدل های متنوعی داره که یه مدل ساده و کاربردی اون رو اقتی نوربخش در انجمن قرار دادن...
      با یه سرچ ساده راحت میتونید پیداش کنید...

      اگه واسه فرکانس سنجی میخاید ک حتما باید از اینتراپت استفاده کنید
      نگفتی هدفتون از این کار چیه...
      تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

      www.intelart.ir


      ساخت کنترلر دما PID فازي با AVR [آموزشی]

      دیدگاه


        #4
        پاسخ : شمارش پالس با یک پورت I/O معمولی

        نوشته اصلی توسط Mahdi.Faani نمایش پست ها
        شما برای پیدا کردن صفر سینوسی به یه مدار zero cross detector نیاز دارید...ورودی این مدار به برق شهری متصل میشه و خروجی اون یک مقدار منطقی هست که به اینتراپت میکروکنترلر متصل میشه...
        این مدار مدل های متنوعی داره که یه مدل ساده و کاربردی اون رو اقتی نوربخش در انجمن قرار دادن...
        با یه سرچ ساده راحت میتونید پیداش کنید...

        اگه واسه فرکانس سنجی میخاید ک حتما باید از اینتراپت استفاده کنید
        نگفتی هدفتون از این کار چیه...
        بله همون طوری که در پست اول گفته شده ما از مدار اشکار ساز عبور از صفر استفاده کردیم. نیاز داریم تا یک پورت خروجی میکرو همواره با برق شهر سنکرون شود. برای این کار می خواهیم مثلا با عبور هر 10 عدد پالس میکرو خروجی خود را با پالس ورودی از مدار اشکار ساز عبور از صفر هماهنگ کند.
        گویند سنگ لعل شود در مقام صبر اری شود ولی به خون جگر شود
        همیشه آخر همه چیز خوبه، اگر هم هنوز خوب نشده پس هنوز آخرش نشده(چارلی چاپلین)

        دیدگاه


          #5
          پاسخ : شمارش پالس با یک پورت I/O معمولی

          خب این ک کاری نداری دیگه...با برنامه نویسی میشه درستش کرد...الان مشکلتون اینه ک برنامه رو نمیدونید چطور بنویسید؟
          من دقیق متوجه نشدم چی میخاین...
          لطفا کامل تر توضیح بدین
          تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

          www.intelart.ir


          ساخت کنترلر دما PID فازي با AVR [آموزشی]

          دیدگاه


            #6
            پاسخ : شمارش پالس با یک پورت I/O معمولی

            ببینید من در خارج از تابع (1)while این طوری گفتم...
            int a;// Timer 1 overflow interrupt service routine

            interrupt [TIM1_OVF] void timer1_ovf_isr(void)
            {
            // Reinitialize Timer 1 value
            if (PINA.2==1)
            a++;
            if(1<a<10)
            {
            TCNT1=T1;
            .
            .
            .
            }
            else if(a==10)
            {
            TCNT1=0;
            .
            .
            .
            TCNT1=T1;
            .
            .
            .
            a=2;
            }


            و عملکرد برنامه صحیح نیست حالا یا مشکل از قسمت شمارش پالس هست و یا اشکال در روند کد نویسی
            یکبار دیگه روند برنامه رو توضیح میدم: این یک برنامه تولید شکل موج هست و از تایمر 1 برای ایجاد یک شکل موج بر روی پورت D استفاده شده قرار برنامه ابتدا با وارد شدن پالس دوم از مدار اشکار ساز عبور از صفر شروع به که کار کنه هنگامی که تعداد پالس ها ورودی به عدد 10 رسید دوباره شکل موج رو از ابتدا و با توجه به لحظه ی وارد شدن پالس از مدار اشکار ساز عبور از صفر تولید نماید. به عبارت دیگر شکل موج تولیدی توسط میکرو با پالس ورودی از مدار اشکار ساز عبور از صفر سنکرون شود
            جدیدترین ویرایش توسط amin20107; ۱۸:۳۸ ۱۳۹۵/۰۳/۲۳.
            گویند سنگ لعل شود در مقام صبر اری شود ولی به خون جگر شود
            همیشه آخر همه چیز خوبه، اگر هم هنوز خوب نشده پس هنوز آخرش نشده(چارلی چاپلین)

            دیدگاه

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