اطلاعیه

Collapse
No announcement yet.

کد تنظیم سرعت step motor کدویژن

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

    کد تنظیم سرعت step motor کدویژن

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

    #2
    پاسخ : کد تنظیم سرعت step motor کدویژن

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

    دیدگاه


      #3
      پاسخ : کد تنظیم سرعت step motor کدویژن

      می شه برنامه ی اونو بهم بدید ؟
      من اینجوری شروع کردم
      با دو 2 تا if که یکی برای خاموش یا روشن کردن
      if دوم برای راستگرد و چپگرد کد کنترل سرعتشو برام می نویسی ؟ممنون می شم

      دیدگاه


        #4
        پاسخ : کد تنظیم سرعت step motor کدویژن

        برنامه ای که اینجا برات گذاشتم اینطوری که هر بار تابع ref_key که مربوط به اسکن کیپده یک عدد رو متناظر با کلید زده شده بر می گردونه و که اون عدد در متغیر data قرار داره.حالا من تو برنامه به جای ایجاد تاخیر عددی از مقدار این متغیر استفاده می کنم.البته اگر می خواید تاخیر رو بیشتر کونید و کنترل بیشتری رو سرعت داشته باشین باید یه تابع تعریف کنید که یه عدد چند رقمی رو از کاربر بگیره و در زمان تاخیر قرار بده.
        اینم برنامه :
        کد:
        #include <mega32a.h>
        #include <delay.h>
        #include <stdlib.h>
        unsigned char data=16;
        //char s1[8];
        void ref_key (void)
        { 
         DDRB=0x0f;
         PORTB=0xff;
         PORTB.0=0;
         delay_ms(15);
         if(PINB.4==0)data=0; 
         if(PINB.5==0)data=1; 
         if(PINB.6==0)data=2; 
         if(PINB.7==0)data=3;
         PORTB=0xff;
         PORTB.1=0;
         delay_ms(15);
         if(PINB.4==0)data=4; 
         if(PINB.5==0)data=5; 
         if(PINB.6==0)data=6; 
         if(PINB.7==0)data=7;
         PORTB=0xff;
         PORTB.2=0;
         delay_ms(15);
         if(PINB.4==0)data=8; 
         if(PINB.5==0)data=9; 
         if(PINB.6==0)data=10; 
         if(PINB.7==0)data=11;
         PORTB=0xff;
         PORTB.3=0;
         delay_ms(15);
         if(PINB.4==0)data=12; 
         if(PINB.5==0)data=13; 
         if(PINB.6==0)data=14; 
         if(PINB.7==0)data=15; 
        }
        
        
        
        // Declare your global variables here
        
        void main(void)
        {
        //unsigned char a[]={0b00111111,0b00000110,0b01011011,0b01001111,0b01100110,01101101,0b01111101,0b00000111,0b01111111,0b01101111,'9','F','A','B','C','D',' '};
        // Declare your local variables here
        
        // Input/Output Ports initialization
        // Port A initialization
        // Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out 
        // State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0 
        PORTA=0x00;
        DDRA=0xFF;
        
        // Port B initialization
        // Func7=In Func6=In Func5=In Func4=In Func3=Out Func2=Out Func1=Out Func0=Out 
        // State7=T State6=T State5=T State4=T State3=0 State2=0 State1=0 State0=0 
        PORTB=0x00;
        DDRB=0x0F;
        
        // Port C initialization
        // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In 
        // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T 
        PORTC=0x00;
        DDRC=0x00;
        
        // Port D initialization
        // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In 
        // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T 
        PORTD=0x00;
        DDRD=0x00;
        
        // Timer/Counter 0 initialization
        // Clock source: System Clock
        // Clock value: Timer 0 Stopped
        // Mode: Normal top=0xFF
        // OC0 output: Disconnected
        TCCR0=0x00;
        TCNT0=0x00;
        OCR0=0x00;
        
        // Timer/Counter 1 initialization
        // Clock source: System Clock
        // Clock value: Timer1 Stopped
        // Mode: Normal top=0xFFFF
        // OC1A output: Discon.
        // OC1B output: Discon.
        // Noise Canceler: Off
        // Input Capture on Falling Edge
        // Timer1 Overflow Interrupt: Off
        // Input Capture Interrupt: Off
        // Compare A Match Interrupt: Off
        // Compare B Match Interrupt: Off
        TCCR1A=0x00;
        TCCR1B=0x00;
        TCNT1H=0x00;
        TCNT1L=0x00;
        ICR1H=0x00;
        ICR1L=0x00;
        OCR1AH=0x00;
        OCR1AL=0x00;
        OCR1BH=0x00;
        OCR1BL=0x00;
        
        // Timer/Counter 2 initialization
        // Clock source: System Clock
        // Clock value: Timer2 Stopped
        // Mode: Normal top=0xFF
        // OC2 output: Disconnected
        ASSR=0x00;
        TCCR2=0x00;
        TCNT2=0x00;
        OCR2=0x00;
        
        // External Interrupt(s) initialization
        // INT0: Off
        // INT1: Off
        // INT2: Off
        MCUCR=0x00;
        MCUCSR=0x00;
        
        // Timer(s)/Counter(s) Interrupt(s) initialization
        TIMSK=0x00;
        
        // USART initialization
        // USART disabled
        UCSRB=0x00;
        
        // Analog Comparator initialization
        // Analog Comparator: Off
        // Analog Comparator Input Capture by Timer/Counter 1: Off
        ACSR=0x80;
        SFIOR=0x00;
        
        // ADC initialization
        // ADC disabled
        ADCSRA=0x00;
        
        // SPI initialization
        // SPI disabled
        SPCR=0x00;
        
        // TWI initialization
        // TWI disabled
        TWCR=0x00;
        
        while (1)
           {
             ref_key();
             //dar en ghesmat barnameye step ra gharar dahid.
             delay_ms(data);
           }
        }
        چرا ناراحتی پاتریک!
        + امروز ی بچه دیدم سرچهارراه گل میفروخت
        - از دیدنش ناراحت شدی؟
        + نه
        پس چی ناراحتت کرده
        + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
        ------------------------------------------------------------------------------------------------------
        تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
        ------------------------------------------------------------------------------------------------------
        محصولات

        دیدگاه

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